チームトポロジー
今まで属人的な行動で良かったことが、チームで行動する必要性が増してきた。属人的な状態でもサービスを安定的に提供することはできるが、今後進化や拡大を図る上では制約になり得る。そのため、チーム組成の考え方としてもっと複雑であろうエンジニアの考えを取り入れられないか以下の本を読んでみた。
基本の4つのチームがあり、それぞれのチームが成熟に向かうにあたりどう進化するかに目を向ける。
各チームがオーナーシップをもち、目的・役割・責任を明確にして行動する
チームのオーバーラップと元のチームの目的を使い分ける
チームファーストの行動
デリバリーのフローと戦略的適応性を優先したインタラクションの促進
認知負荷を減らす→範囲の制限と情報が流れる仕組みの徹底
各チームの役割
ストリームアラインドチーム:価値のある単一の仕事のストリームに沿って働くチーム。その事業のサービスやプロダクトの提供を行うチーム
イネイブリングチーム:特定のテクニカルドメインのスペ社率とから構成され、能力ギャップを埋めるのを支援する。ストリームアラインドチームを横断的に支援し、適切なツール、プラクティス、フレームワークなどアプリケーションスタックのエコシステムに関する調査、オプションの探索、正しい情報に基づく提案を実施
コンプリケイテッド・サブシステムチーム:スペシャリストの知識が必要となるパーツを開発・保守する責任を持つ。ストリームアラインドチームの認知負荷を減らす
プラットフォームチーム:ストリームアラインドチームが自律的に仕事を届けられるようにする
組織
自社の進化について変化も含めて発信することで方向性を示する
各チームの目的・役割・責任を明確にすることで各チームがその進化に対しどのように関わっていくのかを示す
各チームがその進化に向けてチームファーストで行動する
チームファーストの行動が、他のチームを底上げする
チームインタラクションが必要な時
コラボレーション:他のチームと密接に協力して作業をすること
X-as-a-Service:最小限のコラボレーションで何かを利用または提供すること
ファシリテーション:障害を取り除くために他のチームを支援したり、支援を受けたりすること
チームトポロジーの進化のきっかけ
1チームで扱うにはサービスが大きくなっている
デリバリーのリズムが遅くなっている
複数の業務サービスが大量の下位のサービス群に依存している
フロー全体を把握できない
サービス提供に仕組みの数が多く、複雑に関連しているため、円滑で早い変更フローの達成が困難
既存の仕組みを再利用することが困難
組織が新たな課題に取り組む際には常に、異なるチーム間には異なるインタラクションが行われることを予見する必要がある
この記事が気に入ったらサポートをしてみませんか?