Slide 1

Slide 1 text

10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか 深 澤 良 介 2022.4.19

Slide 2

Slide 2 text

⾃⼰紹介 略歴 2019.10〜 atama plus株式会社 [now] Dev Unit Success 開発基盤チームプロダクトオーナー 2009.04〜2019.09 ヤフー株式会社 エンジニアリングマネージャー エンジニア(情報検索・情報推薦サービスの開発) 最近取り組んでること ● 組織の拡⼤・成⻑⽀援 ● 開発における構造上の課題解決 ● 内部品質・外部品質の向上 2 深澤 良介 / ふかきょん @qluto #アタマプラス5周年

Slide 3

Slide 3 text

ⓒ 2022 atama plus Inc. プロダクトチームの変遷 3 Dev組織の拡⼤経緯(創業〜現在) #アタマプラス5周年 2020 2019 2021 2022 Product team Oyakata team Akindo team Souzou team SRE team 開発基盤 Terakoya team Kaizen team infra team arch team Hakken team 組織横断チーム 開発チーム

Slide 4

Slide 4 text

ⓒ 2022 atama plus Inc. 4 突然ですが、 こういうことありませんか? #アタマプラス5周年

Slide 5

Slide 5 text

ⓒ 2022 atama plus Inc. 5 「Webアプリケーションフレームワークの アップデートできてない……」 #アタマプラス5周年

Slide 6

Slide 6 text

ⓒ 2022 atama plus Inc. 6 「提供しているプロダクトが サクサクスピーディに動かなくなってきたけど、 なかなか対応できてない……」 #アタマプラス5周年

Slide 7

Slide 7 text

ⓒ 2022 atama plus Inc. お品書き 1. 取り組んできた技術的課題 i. ソフトウェアアップデートライフサイクル ii. Webサイトシステムパフォーマンス改善 2. これらの課題をうまく扱うためのチーム体制 3. これからチャレンジしていきたいこと 7 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年

Slide 8

Slide 8 text

ⓒ 2022 atama plus Inc. ソフトウェアアップデートライフサイクル これまでの様⼦ 今利⽤しているフレームワークの End-of-Life がギリギリに迫ってきたときに対応 を済ませるというのでなんとか回してきた。 開発規模(組織、システム)も⼤きくなってきたなか、局所的な対応では根本的 な解決が困難になってきた。漏らさずオーナーシップをもって進められるような 体制が必要になってきた。 8 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年

Slide 9

Slide 9 text

ⓒ 2022 atama plus Inc. ソフトウェアアップデートライフサイクル ウォッチするミッションクリティカルなソフトウェアの対象選定 社内で利⽤している主要なプログラミング⾔語、フレームワーク、ビルド・デプ ロイ環境に関わるソフトウェアを網羅 9 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年

Slide 10

Slide 10 text

ⓒ 2022 atama plus Inc. ソフトウェアアップデートライフサイクル アップデートの基本⽅針策定 基本⽅針として latest version の⼀つ⼿前を維持できるように LTSの⻑いような例外的なソフトウェアについてはサポート切れ半年前を期限に 最新バージョンにしたときのリスク、アップデート頻度、バグ等の安定性を鑑み。 棚卸し含めたアップデート対応フローの整備 状況調査とアップデート検討のための技術的スパイクを定常化した 10 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年 ソフトウェアアップデートが遅れてしまう事によるリスク低減と アップデートによる恩恵とを適切に享受できるようにしていく

Slide 11

Slide 11 text

ⓒ 2022 atama plus Inc. Webサイトシステムパフォーマンス改善 これまでの様⼦ SREチームがバックエンドレベルでの外形監視やスロークエリ検知は⾏ってくれて おり、都度対応はされてきた。 特定のプロダクト利⽤状況だと重いといったことや、 様々なAPI呼び出し・レンダリングが伴って総合的に特定の機能が重たくなってい るということまでは、うまく検知する仕組みがなかった。 11 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年

Slide 12

Slide 12 text

ⓒ 2022 atama plus Inc. Webサイトシステムパフォーマンス パフォーマンスの定量的評価 SREと連携しSLOの考え⽅や定め⽅を学びつつ、UXデザイナーと届けたい価値に ついて議論しながら定義 Datadog RUM (Real User Monitoring) 導⼊ フロントエンドのメトリクス収集を⾏えるものとして新たに導⼊ 12 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年

Slide 13

Slide 13 text

ⓒ 2022 atama plus Inc. Webサイトシステムパフォーマンス 具体的なメトリクス定義とダッシュボード構築 13 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか #アタマプラス5周年 導⼊当初は Core Web Vital の LCP を採⽤しようとしていたが、 SPAではあまり有効な指標ではな いということが判明したため、 Datadog RUM 固有定義の Loading Time という指標を採⽤

Slide 14

Slide 14 text

ⓒ 2022 atama plus Inc. これらの課題をうまく扱うためのチーム体制 最初の4年までは機能開発をしながら、こういった技術的課題を LeSS のどこのチ ームとも定めず普段の開発に折り込みながら対応してきた。 今後の開発規模の拡⼤と専⾨性の⾼まりとを考慮し、機能開発チームのひとつが 開発基盤チームとして⽣まれ変わった。 👉 どういった価値提供を⾏っていくのか、どんな課題を取り扱うのかをこのチー ム主導で考え⾃ら解決していくように。 14 10⇒80⼈規模に急拡⼤した開発組織で、 いかに 「スピード」 と 「品質」 を両⽴させるか LeSS: ⼤規模スクラムのフレームワーク。 atama plus では、これまで LeSS に則り特別な専⾨性を持たない形でチーム数拡⼤を進めてきた。 #アタマプラス5周年

Slide 15

Slide 15 text

ⓒ 2022 atama plus Inc. 15 ソフトウェアアップデートの状況整理と運⽤も 包括的なパフォーマンスの測定と改善も まだはじまったばかり #アタマプラス5周年

Slide 16

Slide 16 text

ⓒ 2022 atama plus Inc. 16 技術的リスクの⾒える化をはじめたばかり とも⾔えるこの状況から、 やがて社内の開発を加速させるような 恩恵を与えていけるチームになっていきたい #アタマプラス5周年