Spotify Engineering Cultureの整理 ver.4 -Communication between squads-

youhei19880130
Feb 28, 2021

--

アジャイルコーチであるHenrik Knibergさんの解説をyoutubeにしたSpotify Engineering Culture (by Henrik Kniberg)に感銘を受けて、自分の中での整理も込めて、トピック毎にまとめてみようと思います。

第4弾の今回は、SpotifyのSquads間のコミュニケーションについてです。

“Spotifyはどんな感じなの?”という質問に対しては、“(所属する)Squadによるよ!”というのがほとんどの回答のようです。基準はほとんどなく、前回の記事で紹介したAlignment and Autonomyの文化に基づいて、各SquadがSquadsがスクラム開発していたり、していなかったりとそれぞれで決めているようです。

雰囲気や行動様式はSquads毎に異なる

つまり、標準化(Standardization)よりも相互交流(Cross-pollination)に重きを置いていることを示します。どのツールを利用するかもSquadで判断しますし、他のSquadとコミュニケーションが必要であれば、情報交換を行ない、こういったコミュニケーションがデファクト・スタンダードになっているようです。こういった非公式のコミュニケーションが、組織の一貫性と柔軟性のバランスを取っています。

Standardizationによりルール化ではなく、Autonomyを活かせるCross-pollinationという考え方

システムのアーキテクチャーは100以上のコンポーネントに分かれており、独立して開発やデプロイが行われています。全てのコンポーネントはそれぞれが、プレイリスト管理や検索、モニタリングなど一つのニーズ実現に絞られています。さらに、それぞれのコンポーネントは一つのSquadに担当され、一つのSquadが複数のコンポーネントをカバーしております。

また、SpotifyではInternal Open-source modelを採用しております。そのため、各Squadは各コンポーネントのソースコードを「所有」するのではなく、「共有」するようなイメージになります。例えば、下図ではコンポーネントBはSquad2の担当です。Squad1がBに変更を加えたい時は、Squad2に依頼します。しかし、Squad2にその時間がなかったり、優先順位が低く対応できない時は、Squad1自らがコンポーネントBの修正を加え、Squad2にレビューしてもらいます。ここで大事なことは、待つ必要はないということで、「誰でもコードを触ってよく、コードレビューをしてもらう」ことです。これはコード品質の改善になりますし、さらに各知識の浸透に繋がり、開発者間の摩擦も減ります。例えば、デザインガイドラインやコード基準などです。

開発者は各Squadが「所有」ではなく「共有」している状態になっている

次回は、Spotifyでの動機付けについての理解を深めていきます。

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

--

--

youhei19880130
youhei19880130

Written by youhei19880130

CyberAgentに新卒で入社後、アドテク事業で事業開発からアドサーバーの実装を行い、インバウンド事業で起業後、ANAとの協業会社のCEOを務めてました。今はメインとしてグロービスでPMをしながら、静岡の商店街の活性化しております。

No responses yet