こんにちは、上野です。
本記事は「Japan AWS Ambassador Advent Calendar 2022」19日目の記事です。
クラスメソッドのブログマスターいわささんからバトンを受け取っております。毎日ブログ書くなんてすごいですね!
本記事では私も案件として参画することが増えてきた、内製化について書いてみます。
ビジネスをスピーディかつ柔軟に進めるための内製化
NRIネットコムは内製化支援推進 AWS パートナーにも参加しており、私もお客様自身と一緒にシステム構築を行う内製化案件に参画しています。(内製化というプロジェクト名が付くわけではないですが)
デジタルトランスフォーメーション(DX)という言葉があるように、デジタル技術を活用したビジネス変革が求められるようになってきました。事業会社が自分自身でビジネスの決定、デジタル技術の活用をシームレスに実行することで、より早くアイディアを市場へ投入できます。また投入後の改善も自分たちで実施することにより、ユーザーからの声をより早く自分たちのビジネスおよびデジタル技術へ柔軟に反映できるようになります。
従来のビジネスモデル
従来、特にオンプレミスでシステムが稼働する場合は、事業会社側でビジネスプランを立てて、そのビジネスプランを実現する技術(システム)を構築するのがSIerという形で、役割がしっかり分かれていました。(現在でもこういったパターンはあります)
ビジネスプランや開発するシステムが明確になっていればあまり問題は発生しませんが、新規ビジネスでは要件が明確に定まらないパターンがほとんどであり、以下のような課題が発生します。
- ITのノウハウが無い事業会社と、ビジネスのことを理解していないSIerとのコミュニケーションに時間がかかる
- 「良い感じに」「障害が起きないように」といったあいまいな依頼となり、変更リスクを考えてSIerが長期間、高い工数の見積を出してしまう
- SIerはシステム開発に専念してしまい、ビジネス要件をうまく取り込めず、ビジネスを達成するためのシステムが出来上がらない
- (特にオンプレミスの場合)調達したシステムの変更、拡張が難しく、開発中に発生した新たなビジネス要件を取り込めない
これは事業者側、SIer側どちらかが悪いという訳ではなく、双方に発生する問題であり、相互理解が必要になってきます。
以下のようにビジネス決定部門と実際の開発部門の壁が大きくなることもあります。大きい会社になると調整だけで数ヵ月かかることもあるでしょう。
すぐ始められて、すぐ壊せるAWS
ビジネスプランの決定からシステム開発までのプロセスをスピーディに実施するための内製化が増えてきています。(私の主観)
これはAWSおよびパブリッククラウドの特性も要因にあるかと思います。AWSはクレジットカードとメールアドレスさえあれば開始できます。初期費用は不要で使った分だけ料金が発生する従量課金です。
つまり、試してみたい技術があれば実際に作ってみれば良いわけですね。失敗したらすぐに壊すこともできます。
さらにAWSにはAWS Hands-on for Beginnersといった初心者向けのハンズオンなどトレーニング資料も豊富にあり、初心者でも気軽に学ぶことができます。
Jeff Bezosさんの言葉の中でtwo-way doorsという言葉があり、これは入ってもすぐ戻れるドアのことを指していて、two-way doorsであれば素早く決定して進めるべきだとおっしゃっています。この考え方は私もとても好きで、AWSにはたくさんtwo-way doorsな選択があると思っているので、色々と試してみるのが良いと考えています。一方でone-way doorsという、元に戻れないドアなので慎重に選択すべきという考え方もあります。システムにおいても、たとえばリレーショナルデータベースで構築までいったら、そこからNoSQLデータベースに変更するのはハードルが高くなります。旧戻りの手間が大きくなる選択肢は慎重に選ぶ必要があるということですね。
こういったtwo-way doorsの特性を活かし、AWS上で自分たちで開発するという機会が増えているのかと思います。
セキュリティとコストが課題になる
内製でAWS上のシステム構築をやっている(やろうとしている)けど、支援してほしいという相談を我々NRIネットコムにもよくいただきます。相談する理由として一番よくあがるのがセキュリティです。AWS知識があまり無い状態で構築を行うと、リスクのある設定が生まれやすいです。
たとえば「S3バケットにコンテンツを置いてそれをWEB公開したい」という要件があったとします。バケットポリシーを以下のように設定します。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "Public", "Effect": "Allow", "Principal": "*", "Action": "s3:*", "Resource": "arn:aws:s3:::bucketname/*" } ] }
コンテンツを公開するという要件はこれで満たせます。
気になるのがセキュリティ面です。まずバケットポリシー、公開したいだけであればActionはs3:GetObject
だけで充分です。このままでは外部からオブジェクトを配置したり削除できたりしてしまいます。また、バケットの静的WEBホスティングを検討する場合、HTTPに対応していないので本番稼働であればHTTPSに対応できるようCloudFrontと組み合わせるべきといった指摘がでるでしょう。
※IAMポリシーにs3:*
権限を付与すると、バケットの削除や作成、バケットポリシーの修正も可能になりますのでs3:*といった広い権限は管理者以外では使わないのがおススメです。
今回紹介した例は少し極端ですが、「機能としては問題なく動いているけど、セキュリティリスクがある」といった状態はよく見かけます。
セキュリティの次に相談の理由としてあがるのがコストです。「オンプレミスと比べ安くなると思ったけど安くなっていない」、「利用料がかかっているけど、どこでかかっているのかわからない。安くする方法がわからない」といった事例をよく聞きます。クラウドは従量課金であり、安くも高くもなる可能性があります。たとえばEC2のインスタンスタイプ、ある程度大きいタイプを選んでおけば機能および性能面で問題なく稼働できます。機能開発が優先され、コスト観点でインスタンスタイプの見直しはあまり行われないという事例も見かけます。また、EC2の購入方法はオンデマンド以外にもリザーブドインスタンスやSavingsPlans、スポットインスタンスといった購入方法がありますが大きく活用できてないというユーザーも多いかと思います。
こういった形でセキュリティ、コストを理由に相談いただくことが多いですが、他にも「単純に人が足りなくて支援してほしい」「何が課題かわかっていないので整理したい」といった理由で相談いただくこともあります。
より高いスキルが求められる内製化支援
上記で説明した相談理由のとおり、構築はできたけどもう一段階高いレベルの観点で改善したいという要望が多いため、我々内製化支援を行うSIerへ対しても求められる技術力が高くなっているなと日々感じています。特に私のチームは複数のお客様へAWSの構築支援を行っているため、「他のお客さんではどうやっていますか?」といった形で相談をいただくことも多いです。
最近ではAWS技術そのものに興味を持っているお客様も多く、「新しいサービス教えてください」といった話題もあったり、良い意味でプレッシャーになっていますw。
また、技術力だけではなく、内製化へ向けた社内への教育、ビジネスの方向性と使用する技術がマッチしているか整理、プロジェクト管理といったAWS技術以外の部分も合わせて支援することが多いです。こういった求められる幅の広さに対応するスキルも必要になっています。
私は色々なアーキテクチャを見て、顧客課題を解決するのが好きなので、ここはうまく楽しみながらスキルアップできれば良いなと考えています。
設計観点整理に役立つAWS Well-Architected Framework
セキュリティ、コストなど色々考えなきゃいけないのはわかったけど、どういった観点で整理すれば良いの?って時に役立つのがAWS Well-Architected Frameworkです。AWSが考えるベストプラクティスについて、質問に回答することでどこまで対応できているか整理することができます。6つの柱から構成されていて、セキュリティとコスト最適化の柱も存在します。
Well-Architected Toolという入力ツールも用意されているので、これを使用して設計観点で漏れが無いか整理するのがオススメです。100点を目指すものではないので、自分の組織、システムにおいて対応すべきかは都度検討しましょう。
正直、このWell-Architected Frameworkの質問内容を初回で理解するのは難しいため、相談できる人が社内にいない場合はWell-Architectedパートナーなど、経験のある外部の会社に頼るのも一案です。NRIネットコムもパートナーになっています!
最近、Ambassador仲間のNEC大竹さんがWell-Architected Frameworkの解説をされていたのですが、その動画も理解を深めるのにおススメです。
[JAWS DAYS 2022 Track C]一緒にAWS Well-Architectedレビューをやってみよう - YouTube
SIerの仕事は無くなるの?
事業会社側の内製が増えて、SIer側の仕事が減っていくのではないか?という懸念です。個人的にはそういった心配はしていません。
上記のとおり支援の相談はたくさんいただきますし、相談件数で言えば増えている傾向にあります。「内製化はまだまだこれから・・」という声も聞くので、今後しばらくは、我々のように複数のAWS構築経験のあるSIerの必要性は減らないだろうと予測しています。しばらく・・正直じゃあ10年後は?と言われると怪しいところですが、無くなることはないだろうなと思っています。
上記のとおり通常の構築だけではなく、Well-Architectedな高いスキルが求められることもあり、逆にこういったスキルを失った場合は相談も無くなりそうなので、意識してAWSの最新動向をキャッチアップする必要がありますね。
正直言うと、NRIネットコム社内もAWS技術者をどう増やしていくは大きな課題となっています。本を書いていたり、外から見るとAWSに強い会社と見ていただけることも多いのですが、会社全体としてはもっと底上げしないといけない状況です。
AWS技術力を上げるにはAWSを好きになることが一番だと思っているので、re:Inventのようなイベントに多くの社員と一緒に行ってモチベーションをあげていくのが良いかなと個人的には考えています。
何かあればご相談ください!
最後はガッツリ営業で締めたいと思います。内製化したい、AWS構築で悩んでいる等あればお気軽にNRIネットコムまでご相談ください!!
明日はフレッシュなAmbassador、ボーリング王子ことサーバーワークス福島さんの出番です!お楽しみに!!