Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
効率的な技術組織が作れる!書籍『チームトポロジー』要点まとめ
Search
iwamot
PRO
December 25, 2024
Technology
2
850
効率的な技術組織が作れる!書籍『チームトポロジー』要点まとめ
2024-12-25
ENECHANGE I/O Day LT⼤会(社内イベント)
iwamot
PRO
December 25, 2024
Tweet
Share
More Decks by iwamot
See All by iwamot
AIエージェント・マイクロサービス時代。AWSでの手軽な構築法を考えて試してみた
iwamot
PRO
1
37
これがLambdaレス時代のChatOpsだ!実例で学ぶAmazon Q Developerカスタムアクション活用法
iwamot
PRO
9
1.5k
Developer Certificate of Origin、よさそう
iwamot
PRO
0
36
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた CODT 2025 クロージングイベント版
iwamot
PRO
1
120
復号できなくなると怖いので、AWS KMSキーの削除を「面倒」にしてみた
iwamot
PRO
3
95
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
14
11k
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
4
1.2k
名単体テスト 禁断の傀儡(モック)
iwamot
PRO
1
600
クォータ監視、AWS Organizations環境でも楽勝です✌️
iwamot
PRO
2
600
Other Decks in Technology
See All in Technology
習慣とAIと環境 — 技術探求を続ける3つの鍵
azukiazusa1
2
580
コミュニティが持つ「学びと成長の場」としての作用 / RSGT2026
ama_ch
2
340
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
2
920
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
930
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
クラウドセキュリティの進化 — AWSの20年を振り返る
kei4eva4
0
130
[PR] はじめてのデジタルアイデンティティという本を書きました
ritou
1
810
「リリースファースト」の実感を届けるには 〜停滞するチームに変化を起こすアプローチ〜 #RSGT2026
kintotechdev
0
1.1k
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
2.1k
Node vs Deno vs Bun 〜推しランタイムを見つけよう〜
kamekyame
1
520
Vivre en Bitcoin : le tutoriel que votre banquier ne veut pas que vous voyiez
rlifchitz
0
310
Qiita Bash アドカレ LT #1
okaru
0
190
Featured
See All Featured
エンジニアに許された特別な時間の終わり
watany
106
230k
My Coaching Mixtape
mlcsv
0
26
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
380
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
44
The untapped power of vector embeddings
frankvandijk
1
1.5k
Between Models and Reality
mayunak
1
170
Designing for Performance
lara
610
70k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
170
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
190
Transcript
効率的な技術組織が作れる! 書籍『チームトポロジー』要点まとめ 2024-12-25 ENECHANGE I/O Day LT大会(社内イベント) VPoT兼CTO室マネージャー 岩本隆史
『チームトポロジー』(2021) 副題:価値あるソフトウェアをすばやく届ける適応型組織設計 2/18
同書の主張 疎結合なソフトウェアは、疎結合な組織から生まれる 小さなチームで、認知負荷を制限すべき 組織は静的ではなく、進化させるべき ※ 重要な意見をピックアップし、自分なりに整理したものです 3/18
疎結合なソフトウェアは、疎結合な組織から生まれる システムを設計する組織は、その構造をそっくりまねた構造の設計を生み出して しまう(コンウェイの法則) アーキテクチャー設計に従うようチームに求めるのではなく、システムに反映し たいアーキテクチャーに合うようなチーム構造にする(逆コンウェイ戦略) 明瞭なチームインタラクションだけにコミュニケーションパスを限定すること で、モジュール化した疎結合なシステムが生まれる 4/18
小さなチームで、認知負荷を制限すべき チームとは、5人から9人のメンバーからなる安定したグループで、共有されたゴ ールのために働く単位のこと グループのサイズが大きくなると、必要なレベルの信頼関係を維持できなくなる 認知負荷容量を考慮しないと、チームの責任範囲と担当領域は広がりすぎること になる。自分の仕事に熟達するだけの余裕がなくなり、担当業務のコンテキスト スイッチに悩まされる 5/18
組織は静的ではなく、進化させるべき 技術、マーケット、顧客やユーザーの要望、規制の要件などが急速に変化してい るため、成功している組織は当然、組織構造を定期的に適応させ進化させる必要 がある 組織図やマトリクスマネジメントのような単一で静的な組織構造を利用していて は、現代のソフトウェアシステムで効果的なアウトカムを生み出せないことが 徐々に明らかになってきている 6/18
同書が提示したモデル 4つのチームタイプ 3つのインタラクションモード 7/18
4つのチームタイプ ストリームアラインドチーム プラットフォームチーム イネイブリングチーム コンプリケイテッド・サブシステムチーム 8/18
ストリームアラインドチーム ビジネスの主な変更フローに沿って配置されるチーム。職能横断型で、他のチー ムを待つことなく、利用可能な機能をデリバリーする能力を持つ 組織で根幹となるチームタイプで、残りの基本的なチームタイプの目的は、スト リームアラインドチームの負荷を減らすことにある 9/18
プラットフォームチーム 下位のプラットフォームを扱うチームで、ストリームアラインドチームのデリバ リーを助ける。プラットフォームは、直接使うと複雑な技術をシンプルにし、利 用するチームの認知負荷を減らす プラットフォームチームの知識は、長大な利用マニュアルではなく、セルフサー ビスの形でウェブポータルやプログラマブルなAPIとして提供され、ストリームア ラインドチームは簡単に活用できる 10/18
イネイブリングチーム 転換期や学習期に、他のチームがソフトウェアを導入したり変更したりするのを 助ける 特定のテクニカル(プロダクト)ドメインのスペシャリストから構成され、能力 ギャップを埋めるのを助ける うまく機能すれば、ストリームアラインドチームは、イネイブリングチームから の支援を数週間から数か月で必要としなくなる 11/18
コンプリケイテッド・サブシステムチーム 普通のストリームアラインドチーム、プラットフォームチームが扱うには複雑す ぎるサブシステムを扱うためのチーム。本当に必要な場合にだけ編成される サブシステムの例としては、動画処理コーデック、数理モデル、リアルタイム取 引裁定アルゴリズム、金融サービスのトランザクションレポートシステム、顔認 識エンジンなどがある 12/18
3つのインタラクションモード コラボレーションモード X-as-a-Serviceモード ファシリテーションモード 13/18
コラボレーションモード 特に新しい技術やアプローチを探索している間、2つのチームがゴールを共有して 一緒に働く。学習のペースを加速する上で、このオーバーヘッドには価値がある ペアプログラミング、モブプログラミング、ホワイトボードでのスケッチのよう な基本的なコラボレーションスキルに関するトレーニングやコーチングは、コラ ボレーションモードを使用するチームに有益 14/18
X-as-a-Serviceモード あるチームが、別のチームが提供する何かを利用する(API、ツール、ソフトウェ ア製品全体など)。コラボレーションは最小限になっている コアとなるユーザーエクスペリエンス(UX)とデベロッパーエクスペリエンス (DevEx)のプラクティスに関するトレーニングやコーチングは、X-as-a-Service モードを使用するチームに有益 15/18
ファシリテーションモード あるチーム(通常はイネイブリングチーム)が、新しいアプローチの学習と適用 を促すため、他のチームをファシリテーションする ファシリテーションのやり方や他のチームから助けてもらう方法に関するトレー ニングやコーチングは、ファシリテーションモードを使用するチームに有益 16/18
基本形と進化の例 17/18
まとめ 同書の主張 疎結合なソフトウェアは、疎結合な組織から生まれる 小さなチームで、認知負荷を制限すべき 組織は静的ではなく、進化させるべき 同書が提示したモデル 4つのチームタイプ 3つのインタラクションモード 18/18