Spotify Engineering Cultureの整理 ver.2 -Autonomous Squads-
アジャイルコーチであるHenrik Knibergさんの解説をyoutubeにしたSpotify Engineering Culture (by Henrik Kniberg)に感銘を受けて、自分の中での整理も込めて、トピック毎にまとめてみようと思います。
第2弾の今回は、Spotifyの開発組織の大事なキーワード、「Squads」についてです。
Squadsは、“小さな、クロスファンクショナルな、自己組織化された”チームです。通常は8名未満で構成されていて、デザイン、実装、メンテナンス、デプロイ、オペレーションなど一連の全ての業務をこなします。Squadsは長期的なミッションとプロダクト戦略、そしてQ毎の短期的なミッションを持っています。長期的なミッションは、例えば、音楽のディスカバリー機能だったり、A/Bテストをインフラとして整えることだったり。それらの各ミッションを持ち、各Squadは自律的に、何(What)をどのように(How)作るか、そして、Squad内のメンバーの動き方を決めます。
この自律性(Autonomous)も重要なキーワードになります。
実際に、Spotifyのオフィスはコラボレーションが起こりやすいように最適化されております。右側の人が映っている部分がSquad Areaで、業務スペースです。左側のLoungeでは、スプリントプランニングやレトロスペクティブに使われ、奥にはhuddle roomと呼ばれる小さなミーティングルームがあります。白い壁の部分は、ホワイトボードになっているようです。
このようなレイアウトによって、自律性を引き出しているわけですが、自律性はモチベーション維持にとってとても重要であると考えられています。
また、自律性は開発スピードの向上に向けても重要です。もし、Squads間で様々な連携が必要になると、Squads間に多くの依存関係が発生してしまいます。
各Squadがそれぞれミッションを持ち、それらがプロダクト戦略や事業事業優先度が整合(Align)していると、Spotify全体の優先度に応じて、各Squadがアクション出来るようになります。
「Be autonomous, but don't suboptimize(自律的であるが、部分最適しない)」を原則として、ジャズ音楽のように、各Squadの動きが協奏し、Spotifyというサービスを作っているイメージです。Squadsは「Loosely coupled, Tightly aligned squads(ゆるくつながっていて、緊密に整合されたSquads)」というゴールを目指し、様々なトライをしています。
次回は、Squads体制の中での大事なキーワード「Alignment」 と「Autonomy」の関係性の解釈について理解を深めていきます。
Spotify Engineering Cultureについての目次になります。目次を参考に必要なところを探すのに役立てればと思います。
ver.1 「Agile > Scrum」
ver.2 「Autonomous Squads」
ver.3 「Alignment and Autonomy」
ver.4 「Communication between squads」
ver.5「Motivate employees」