イベント

JR東日本やみんなの銀行、アサヒグループ、ドコモなどが登壇し、コンテナの活用事例を紹介

「Google Cloud Anthos Day」ユーザー事例セッションレポート

NTTドコモ:完全内製ではない組織でSoE開発

 株式会社NTTドコモの岸祐太氏(情報システム部 プロダクトマネージャ)は、ドコモの利用者が自分の個人情報についてサービス横断で可視化や設定変更できる「パーソナルデータダッシュボード」をGKEのコンテナプラットフォームで開発した話を解説。特に、大企業におけるアプリケーションのモダナイズへの挑戦と、完全内製ではない組織でのアジャイル開発の取り組みが語られた。

 同社情報システム部では、SoEとSoRは疎結合にして分離し、SoRは標準技術化してSoEは最新の仕組みを取り入れているという。さらに2018年には情報システム部内にSoE開発専門組織を新設した。

株式会社NTTドコモの岸祐太氏(情報システム部 プロダクトマネージャ)

 昨今のプライバシー保護とパーソナルデータ活用の波により、2019年12月から提供が開始された「パーソナルデータダッシュボード」も、バックエンドのSoRと連携する形で新しく作られたSoEだ。

 GCPのサービスとしては、GKEと、NoSQLデータベースのFirestoreを採用。アプリケーションはすべてGKE上で動く。そのほか、GitLabとCloud BuildによるCIと、ArgoによるCD、Datadogによる監視を採用している。

パーソナルデータダッシュボード
GKEとFirestoreを採用
CI/CDや監視

 特徴はSoRシステムとのデータ連携だ。API連携のほか、一部でファイル連携も利用している。これは、SoRシステムから、S3経由でGoogle Cloud Storageに取り込んで、DataflowによりFirestoreにインポートする。このワークフローの管理にはワークフローオートメーションのCloud Composerを使っている。

 実はFirestoreはリクエスト量に応じて段階的にスケールする仕組みになっており、一度に大量のデータをインポートしようとするとエラーになるため、トラフィックを調整してチューニングすることに苦労したことも語られた。

アーキテクチャ全体像
ファイル連携まわり
Firestoreへのインポートで苦労した点

 なお、SoEのチームでは当初、パブリッククラウド上でKubernetesベースのPaaSソフトウェアを自前で運用して利用してきたという。それを運用してきた結果、運用面、機能面、コストで改善の余地があると考え、2019年4月にマネージドKubernetesのPoC/評価をした。

 評価の結果として「どのマネージドサービスを選んでも正解・不正解はない」と考えたが、ランニングコストが安いこと、ドキュメントが豊富なこと、Kubernetesの生みの親である安心感から、GKEを選んだという。

GCPを選んだ理由

 これらをふまえ、岸氏は、大企業で新たな取り組みを行う上でのポイントを語った。

 課題としては、アジャイルはワンチームが前提なことが多いのに社内にエンジニアリングリソースがないことと、これまでの業績や既存システムが多くあることの2点がある。そのため大事になることとして、内製開発チームに近い環境を作ることと、小さく始めてまずは試すというマインドの2つを岸氏は挙げた。

 内製開発チームに近い環境を作る点では、パートナー企業のメンバーを同じフロアに集めて、まずは会話量を増やすことから始めたという。そのほか、プロダクトレビューなど会社の垣根を越えてコミュニケーションすることや、ドコモの予算でチーム全員で研修参加するなどパートナーと一緒にスキルを伸ばす風土を作ることなどをしたという。

 また、“小さく始めてまずは試す”マインドの点では、実際に新たな手法や技術を小さく試して徐々に広げるようにしたこと、机上検討で頑張りすぎずまず試すようにしたことが語られた。

 さらに、パートナー企業から参加しているチームメンバーだけでなく、そのマネジメントにあたるドコモ社員もエンジニアリングスキルを身につけ、スピードを持って判断できるようにしているという。

大企業でアジャイルな取り組みをするにあたっての問題
パートナー企業のメンバーを集めて内製開発チームに近い環境を作る
小さく始めてまずは試す
約20名から始めて、今は100名ぐらい

 最後に岸氏は「まだ道半ば」と語り、Biz(事業部門)を巻き込んで会社全体でアジャイルなチームを作るにはどうするか、大規模プロジェクトにおける最適な開発の進め方はどうするか、といった課題を語った。