【レポート】DMM.comの改革とAWS #AWSSummit
こんにちは、崔です。
AWS Summit Tokyo 2019 2日目のI2-07のセッションである「DMM.comの改革とAWS」のレポートをお届けします。
2018年10月のCTO就任からDMM.comをより強いテックカンパニーにしていくべく、DMM Tech Visionを掲げ大きな改革に乗り出しました。SREチームの立ち上げや負債との向き合い方、社内全体の技術強化などの取り組みの中でAWSを積極的に活用しています。そうした組織やプロダクト、経営など幅広い改革の実際とAWSについてお話しします。
スピーカー
合同会社DMM.com
CTO 松本 勇気 様
DMM.comの改革とAWS
資料
本日の話
組織を牽引する・改革する立場の方向けに、組織を如何に変革するか、その中でAWSがいかなる改善をもたらすか、DMM.comの事例からお話します。
DMM.comの紹介
DMM.com Groupの紹介
- サービス数は40以上
- 月間PV数 25億PV
- 主なサービス
- デジタル配信事業
- 動画配信
- 電子書籍
- ネット通販
- 無店舗型ネットレンタル
- いろいろレンタル
- オンラインゲーム事業
- オンライン英会話事業
- FX/CFD事業
- 格安SIM/モバイル販売事業
- エネルギー事業
- エンタメ事業
- .make事業
- 新規サービス紹介 〜新規事業の立ち上がり方〜
CTO就任時におけるDMMの課題
入社時点での課題
- ビジネスモデルや営業力に比べ、事業年数の経過もあってか技術活用が今一歩不足していた
- データによる定量性的分析の活用不足
- 現在の事業はデータがその中心にあるべき
- 機械学習ベースの事業改善の不足
- 情報配信=検索と機械学習の世界の世界であるべき
テックカンパニー化をミッションにCTOへ
テックカンパニーとは
- 事業の全てがソフトウェア・エンジニアリングで改善されている状態を理想
- 技術指向・ソフトウェア化
- 技術を交えた課題解決
- 全ての事業や組織に関わる仕組みを、ソフトウェア・エンジニアリングで繋げる
- コード・計測
- DMMに関わる全てをコードで表現していく
- システム化の先に全てを計測し、データとして保存
- 技術を交えた課題解決
- データ・ドリブン
- 計測と事業モデリング
- 個別最適化
- Agility
- イテレーティブな改善
- 日々細かい検証ループを回しながら数多くの施策を試す
- ABテストにより着実に改善を積み上げる
- 失敗を許容する
- イテレーティブな改善
DMM Tech Vision
- AGILITY 敏捷的
- ATTRAVTIVE 魅力的
- SCIENTIFIC 科学的
- MOTIVATIVE 意欲的
これら4つのTECH VALUEに沿って、
- 「技術戦略」
- 「データ戦略」
- 「広報・人事戦略」
- 「コミュニティ戦略」
の4点で改革を進める
AgilityとAWS
失敗を許容するアーキテクチャへ移行する
長い時間を経たシステムの課題点
- 20周年を経たDMMの抱えるシステムには当然ながら相応の課題が山積み
- システムの複雑度
- コードの循環複雑度やネットワークの構造が非常に複雑、依存を紐解く必要がある
- 巨大なモノリス
- 属人化した運用
- 古いコード
- システムの改善に伴うリスクや心的/人的コストが高く、開発面での挑戦が減っている。
DMMにおけるAgilityとは
小さく多くの挑戦が行われる環境
改善における主要なポイント
- 高いアジリティー
- 良い施策がすばやくユーザーに届く開発チームと開発フロー設計
- Security/Scalabilityの事前担保
- 特定のレールに乗っかることで、事前に問題が置きないシステム構成に導く。
- モダン化
- 新技術導入や開発フロー・コミュニケーションツールなどで、常に生産性の向上を目指していく
- 小さなシステム
- ミス一つあたりのセキュリティ等影響範囲を小さくする
具体的な取り組み
- 横断SRE部立ち上げ
- 信頼性向上
- AWS活用における最適化や監視などの改善
- 新規事業立ち上げにおける素早いプラクティス導入
- 標準化支援
- 複数事業への改善プラクティスを集約
- コードによる定義とその布教活動実施
- 信頼性向上
- オンプレ/AWS最適化
- 運用の人的コスト削減
- CI/CD、IaC、監視導入、コンテナ化など徹底
- 運用における自動化を推進
- 柔軟なスケールと改善速度担保
- 素早いロールバックの整備
- スケールの自動化による負荷対応のコスト削減
- 運用の人的コスト削減
- 部分的標準化
- 安定運用に関わる共通部分の横断的な標準化
- サービス監視
- Infrastructure as Codeにおけるベストプラクティスの文書化
- 安定運用に関わる共通部分の横断的な標準化
なぜAWSを活用するに至ったか
- AWSへのサービス移行のメリット
- 豊富なマネージドサービスの存在(LambdaやFargateなど)
- 移行の手厚いサポート
事例:電子書籍事業のAWS移行
- 最初の移行プロジェクトとして電子書籍事業を採択
- 比較的他事業との依存が小さい
- 事業規模としては十分大きい
移行前のアーキテクチャ
- APPサーバー
- MySQL
- Couchbase
- Batchサーバー
移行後のアーキテクチャ
- ECS Fargate + AutoScaling
- Amazon Aurora
- Couchbase on EC2 (将来的にはDynamoDBへ)
- ElastiCache Memcached
Well-Architectedレビューの活用
- リスク評価とその軽減
- 耐障害性や復旧の迅速性
- 需要に応じたリソース効率追求
- 運用上のコスト削減
- ビジネス要件にあった運用効率
既存事業のAWSの移行に伴う効果
- 監視とスケーリング
- 安定性に関わる項目を移行で洗い出し、徹底して監視
- リソースも柔軟に確保
- リリース頻度の改善
- 様々なマネージドサービスの活用
- 自立性向上
- 結果としてチーム内でのシステム改修や変更のレビューが容易にな
ScientificとAWS
データ活用における課題点
- 基盤コスト
- データ量
- アクセス制御
既存データ分析環境の拡充
- オンプレに配置されたHadoopクラスタを中心とした構成
データ基盤のAthena/Glue活用
- S3, AWS Glue, Amazon Athenaの活用
- 元々のデータを活用しながら
MotivativeとAWS
DMMにおけるMotivativeとは?
モチベーション×能力の総和が組織力と考える
モチベーションの源泉
AWS実弾演習場
- 社員個別にAWSアカウントを提供
- 月額100ドルまで利用可能
- アカウント管理はAWS Organizationsを活用
- Cloud Trailにて動作は記録
- 新AWSサービスの検証
- 新たな言語やフレームワークの学習
新卒教育カリキュラムでのオンサイト研修
- 19年度からの新卒研修方針
- インフラ、バックエンド、フロントエンド、ネイティブアプリケーションなど横断的に実施
- ボリュームは3.5ヶ月
- AWSトレーニングを活用し、AWSの応用力を身につける。
- AWS Technical Esentials 2
- Architecting on AWS
社内勉強会の開催
社内ハンズオンの提供
AWSとの連携で、成長できるDMMへ
- AWS実弾演習場
- 新卒教育カリキュラム
- 社内ハンズオン
まとめ
- 大きな組織が抱える課題
- ビジョンの提示
- AWSを活用しての組織全体の改善
感想
AWSを活用するなかで、SREチームを立ち上げたり、古いシステムの負債と向き合い、また、社内全体の技術強化などに取り組むことで、AgilityやMotivativeといった面を重視しながら改善を続けていることが非常によく伝わってきました。