アーカイブ動画
クラウドネイティブ時代の盲点とサービス依存を超える課題解決の可能性
NECソリューションイノベータ株式会社
ソリューションサービス事業ライン
第二PFSI事業部
役職:担当 稲永 葵氏
最初に登壇したのは、生成AIを活用した新規事業なども含め、主にクラウドに関する業務に携わる稲永葵氏だ。2021年に入社し、翌年から現在まで、金融基幹システムのクラウド基盤部分の設計構築を担当している。
入社当初はオンプレ案件にも携わった稲永氏だが、すぐにクラウド関連の案件にアサインされたこともあり、AWSを中心に積極的に学んでいき、AWS最難関レベルの資格も取得する。
クラウドの利便性を感じたことで、さらにクラウドについて積極的に取り組むようになっていくが、同時に、顧客に価値を届けるには、クラウドをフル活用するのがベストとも考えるようになっていった。
だが、落とし穴が待っていた。クラウドを積極的に活用したことで、いろいろなつまずきや失敗を経験するからだ。すると今度は、クラウドだけを勉強して、安易に利用することだけでは不十分ではないか、と考えるようになる。
周りのエンジニアに尋ねると、稲永氏と同じような考えや失敗例を聞くことができたと、稲永氏は語る。具体的に3つの失敗例を紹介した。
1つ目は、AWS環境の顧客からKubernetesを利用したコンテナサービスを構築してほしいとの依頼に対して、当初はEKS(Elastic Kubernetes Service)を採用したことだ。
実際に運用を行うと「マッチポンプアーキテクト」と稲永氏が表現したように、KubernetesとAWSそれぞれのバージョンアップが高頻度で行われるため、日々、同業務に追われるようになった。自動化を施したが、それでも運用負荷は高かったと振り返る。
そこで改めてAWSのKubernetesサービスを精査すると、もう一つのECS(Elastic Container Service )の方が、適切であったことに気づく。
「本来であれば設計する時点で、両方のメリット・デメリットを運用性も考え精査した上で、選定する必要がありましたし、そのような姿勢の重要性を感じました」(稲永氏)
2つ目は、セキュリティを考慮し、新規サービスではVPC(Virtual Private Cloud)を分けたいという顧客の要望に、言葉通りそのまま応えてしまった事例だ。
こちらも失敗例①と同様、言葉を選ばずに言えば深く考えず対応してしまったことで、より良い対応ではなかったと振り返る。
というのも、顧客が望んだのは、別の会社や他チームが互いのリソースにアクセスできない状態であり、いずれはそれぞれが別会社として独立して運用を行う予定で、アカウントを分離することが適切な対応であったからである。
「技術的に可能な手段は無限にありますが、一番早い方法が最適解とは限らないことを学びました」と、稲永氏は失敗から得た気づきを語り続けた。
3つ目はAPIに関して。顧客から要望があった時点で、それまで利用経験のあったAPI Gatewayの採用を決めるが、実際に蓋を開けてみると、100MBほどのファイルを送る必要があった。そのため、1リクエストあたりの上限が10MBのAPI Gatewayでは対応が難しかったことだ。
「何を目的としたシステムなのかを実装前に確認すること。クラウドはスケーラビリティがあると思っていましたが、仕様上不可なこともあるので、事前に調査する必要があることを学びました」(稲永氏)
稲永氏はこのような気づきを得たと語ると共に、これまでの失敗を振り返り、サービスありきではなく、設計時にしっかりと方針を立てることが重要である、と述べた。
その際には顧客へのヒアリングなどを行うこと、クラウドを利用してスピーディーに顧客の要望に応えることだけが正義ではない。このようなことを学んだと改めて述べ、セッションを締めた。
オンプレ時代に鍛えられた設計スキルや思考を、クラウドに活かすヒント
NECソリューションイノベータ株式会社
ソリューションサービス事業ライン
第一PFSI事業部
役職:プロフェッショナル 加藤 寛士氏
続いて登壇したのは、オンプレで構築した金融系システム連携基盤の、アプリやインフラ領域の開発や運用保守といった業務に10年以上に渡り従事してきた、加藤寛士氏だ。
オンプレ時代のキャリアが長い加藤氏だが、クラウドの登場以降は積極的に取り組み、現在はAWSの資格も数多く取得。クラウドアーキテクトならびに、社内のAWS講師として活躍している。
加藤氏自身のキャリアがそうであったように、多くのエンジニアが以下スライドで示されたクラウドの特徴、利便性により多くの恩恵を享受している、と加藤氏は言う。だが、その便利さが設計の根幹を忘れさせているのではないか、と警鐘も鳴らした。
「例えば、オンプレ時代には設計が失敗すると取り返しのつかない事態に陥りやすいことが多かったため、その過酷さゆえに、設計力が鍛えられました」と、加藤氏。そのようなオンプレ時代に鍛えられた設計力を、クラウドネイティブ時代にどう活かせばよいのか、解説していった。
まずは改めて、オンプレ設計で鍛えられたスキルについて、加藤氏は大きく3つ挙げた。
1つ目は、資源が限られている環境での最適解探しだ。スケーラビリティが高いことが当たり前のクラウドとは異なり、ハードウェアはもちろん、予算や時間といった各種リソースの制約が強かったことから、「このようなリソースを的確に見積るスキルが鍛えられました」と述べた。
このようなスキルは、スケールするのが当たり前のクラウドであっても、予算という観点から考えれば、必要なスキルであることは言うまでもない。
続いてはトラブルが発生した際の対応で身についたスキルだ。オンプレの場合には障害箇所の検知、復旧といった業務を人が担うことが大半のため、誰もが取り組めるように、シンプルな対応が求められた。そしてこのようなスキルもクラウド時代でも重要だと、加藤氏は続けた。
3つ目は、標準化が進む現在と異なり、オンプレ時代には既存システムに合わせるためにカスタムを行う必要があったことだ。一方で、システムは複雑にはしたくなかったため、どのように対応すればよいか、エンジニアは考える力が身についたと、加藤氏は語った。
では、このようにオンプレ時代に培ったスキルを、具体的にクラウド時代でも活用するためには、どのような点や思考に気をつければよいのか。システムのあるべき論や、取り組みはなぜ行うのかなど、「なぜなぜ思考で、背景を掘り下げる」ことが重要だと加藤氏。次のように補足した。
「オンプレ時代には今と比べると、なぜ、その機能が必要なのかなど。関係者が集まり、時間をかけて議論していたように思います」(加藤氏)
もう一つのキーワードが「制限、制約を明確化する」だ。具体的には実現したい要件を明確化したり、提案時に実現性を細かく検証したりするなどの取り組みであり、「オンプレの人たちはチェックリストが大好きだと思う」と表現し、加藤氏はチェックリストの重要性を述べた。
さらに加藤氏は、それぞれの思考をさらに深堀りした。なぜなぜ思考で取り組むからこそ、なぜそのような技術やサービスを選定したのかを明確にし、説明できることが大事であり、このようなアプローチをクラウドでも採用することが、同じく重要だと語った。
そして、実現のためには先の稲永氏の内容に重なるが、どのようなサービスがあるのか、普段から知識を広げ、知っておくことが重要だと続けた。
全体を俯瞰し、設計の一貫性を守ることも重要だ。というのも、クラウドの場合はサービスありきで設計してしまいがちだからだ。こちらも、先の稲永氏の失敗事例が参考になる。
先述したように、無限に思えるクラウドサービスも実はいろいろな制約や制限があること。さらにはスケールできたとしても、どれくらいコストがかかるのか。これらの内容を事前に確認、把握しておくことが重要だ。
「オンプレ時代には制約があることで苦労もしましたが、反面、紹介したスキルが鍛えられました。クラウド時代にはそのような制約が少なくなった一方、オンプレ時代の緻密さも活かしながら、設計力を磨き続けること。柔軟性やスピードに振り回される危険があることを考えておくことが重要だと思います」(加藤氏)
加藤氏はこのように述べ、セッションをまとめた。
クラウドネイティブ世代が習得すべき、本質的なマインドと設計思考
NECソリューションイノベータ株式会社
ソリューションサービス事業ライン
第二PFSI事業部
役職:シニアプロフェッショナル 田中 拓摩氏
続いて登壇したのは、大規模SAPシステムをAWSに移行したプロジェクトに携わったのをきっかけに、AWSのソリューションアーキテクトとしてキャリアを積んでいった田中拓摩氏だ。
AWSの各種資格を数多く取得しているのはもちろん、ここ数年は継続してJapan AWS Top EngineersならびにJapan AWS Ambassadorsに選出。近年は生成系AIを活用した製品開発にも取り組む。
田中氏は先に登壇した2名も含め、イベントを聴講する参加者とも積極的にコミュニケーションを取りながら、講演を進めていった。まずは、聴講者に対してスライドで示したアンケートを行った。
結果は、クラウドネイティブ世代が44%、オンプレ世代が56%。オンプレも学んだ方がいいと答えたのは81%で、Noが19%。「Noと答えた人の意見が気になる」とのコメントが、登壇者ならびに聴講者から挙がった。
そこで実際に尋ねてみると、「楽だからいいのではないか」「学ぶよりも先に進むという選択肢もある」「時間があるならもっとクラウドを学びたい」「アプリエンジニアはオンプレを気にしない」との意見が見られた。また、「コンピューターサイエンスの基礎知識を学ぶべき」という意見もあった。
ちなみに以下のスライドは、全世界から3万人以上参加するAWSの世界最大級のITイベント「re:lnven」でのアンケート結果である。
アンケートを踏まえて上で田中氏は、改めて講演テーマであるサービスに依存した設計について解説した。まさに稲永氏の内容通り、顧客に言われたまま、個々のサービスだけを見て設計してしまう流れだ。
続いては、加藤氏が紹介した内容を踏襲したスライドを紹介。要求に対する背景を深堀りし、その上でクラウドの特徴である迅速性、選択の幅広さ、シンプル思考などを意識し、設計することで、「より多くの解が選択できるようになる」と、述べた。
さらに、AIの台頭によりどうなっていくのか、意識すべきことなどについて言及した。まずはAIを利用することで、システム開発はどう変わるのかについて解説した。
スライド赤枠で囲まれた領域のように、多くの業務をAIが担うようになり、「背景の在り方も見直す時代になるのではないか」と、田中氏は予測する。また、右側の実装領域もAIが担うことで、スピーディーに行えるようになるだろうと述べた。
一方で、人はどのような業務に取り組むようになるのか。課題設定や仮説定義といった要求領域だ。さらにはAIが開発したシステムに対しての責任を持つなどであり、「ゴールはやはり人でないと」と田中氏は述べると共に、「エンジニアではない世界もより大事になってくるのではないか」と、続けた。
また、加藤氏や稲永氏も次のように見解を述べた。
「100点でないにせよ、AIがエンジニアに代わり下流工程をどんどんやってくれて、実際、頼りにしています。オンプレからクラウドに変わったとき、クラウドをどう活用していこうか考えていました。AIも同じで、AIをうまく活用する側に回ることがポイントだと思っています」(加藤氏)
「私はフロンエンドが得意ではないので、AIに支援してもらうことで、短い時間でコーディングできるようになりました。AIを活用することでエンジニアの見られる幅が広がり、特定ドメインに縛られることが、いい意味でも悪い意味でもなくなるのではないかと考えています」(稲永氏)
参加者の質問に答えたQ&Aタイム
講演セッション後はQ&Aタイムとなり、3名の登壇者が引き続き参加した。聴講者からは講演セッション最中も含め、数多くの質問が寄せられたが、そのすべての質問に回答。抜粋して紹介する。
Q.オンプレからクラウドに思考を適応させるための工夫や期間は?
加藤:クラウド思考に一気に寄せたのではなく、最初はクラウドの利点を捉えた上で、徐々にオンプレの思考を緩め、クラウドに適応していきました。
田中:まずはオンプレからクラウドにサーバーを立てるような取り組みを行いました。その後、クラウドネイティブにも取り組むようにしました。期間として3カ月✕2回、といったところでしょうか。
Q.なぜなぜ思考はどのように鍛えたらよいのか?
稲永:なぜに関する基本設計よりも、上流の提案書を作成しました。もちろん調べたら分かることでもありますが、改めて自分の中で再咀嚼することで、深く考えることができました。また上司に提案することで、修正をいただくこともありました。
田中:考えるきっかけを、どう作ってあげるか。問いかけたり、練習を積ませることが大事だと思います。
Q.今の時代に求められるスキルとは?
加藤:何をしたいのか、どこをゴールにしたいのか。これらを最初にしっかりと聞き、捉えた上でクラウドやオンプレも含め、どのような技術やサービスが最適であるかを選定していくことが重要だと思います。例えば以前、Excelマクロを使うだけでいいという案件もありましたね。
田中:我々はSEなのでシステムありきで考えがちですが、まずはオンプレやクラウドなどは意識的に考えず、顧客が何をやりたいのかを考えることが大事だと思います。
Q.クラウドサービスの導入を組織に理解させるための工夫は?
田中:いくつかありますが、まずは仲間を少しずつ増やしていき、気づいたら全員がクラウドのメリットを理解しているように持っていくことです。ただ社内だけのアクションでは難しいので、外部の人とも話したり、実際に社内に連れてきたりしています。社内外での仲間、実績作りが大事だと思います。
加藤:自分の裁量でできる範囲の社外コミュニティで、クラウドに関する発表を行った人がいました。そして、その結果を実績として社内で見せると。仲間作りも含め、このような取り組みも参考になるかと思います。
Q.失敗を認める振り返りのタイミングはどのように取っているのか?
稲永:プロジェクトが一呼吸落ち着いたタイミングで、振り返ったりしています。自分だけでなく、メンバー間でも意見を交換したりもしています。
加藤:田中さんが稲永さんの上司になりますが、傍から見ていると業務時間外のようなときでも技術に近い議論をしており、日々、振り返りをしているように感じます。
田中:気づいたことは伝えるようにしています。
Q.オンプレ・クラウド問わず、設計ドキュメントについて
田中:これまでは人が設計して作成していましたが、これからは人の要求を元に、AIがドキュメントを作ることもありかな、と思っています。
加藤:IaCのような考えでコードを作成し、詳細設計はそこから引っ張る。つまり、ドキュメントはなくす、もしくは最低限とする。削っていく勇気も必要なのかと思います。
Q.コミュニティ活動について
加藤:JAWS-UGを中心にいくつか入っています。名古屋に住んでいるので界隈で開催されているイベントには時折参加していますが、半分お遊び的なコミュニティの方が、長く参加したくなるように感じています。
田中:YouTuber(ユーチューバー)の会や、会社を設立した人の集まりなど、テック系ではないコミュニティに意図的に参加しています。技術だけでは人に伝えることができないマーケティング、コピーライティング、経営、人間力などについて学んでいます。
Q.クラウドスキルを自主学習で身につけるおすすめの方法は?
稲村:業務だとお客さまの要求通りに作ることが多いので、何か自分の創りたいものを作ってみると、気づきがあるかと思います。
加藤:個人でクラウドにサーバーを立てるなど、まずは手を動かすことが大事。習うより慣れろだと思います。
田中:クラウドはスポーツと同じで、どれだけ触れるか。練習しないとうまくなりません。月額数百円で触ることのできるサービスもあるので、そのようなサービスを活用するといいでしょう。
Q.クラウド関連の業務を行う際に意識したり、気をつけているところは?
田中:昨日の正解が今日の正解ではないことがよくあるのが、クラウドの特徴だと思います。なので、常にサービスリリースやアップデートを意識し、適切なタイミングで考えるようにしています。
加藤:オンプレは構築したら終わりですが、クラウドは業務の成長に伴い、成長していきます。
田中:そのため構築する際にも、成長させやすいように作っておくことが大事です。