Spotify Squad framework — Part I

I watched this video about the Spotify Engineering culture last year and BOOM, my mind just exploded. Don’t forget to also read the part II here. I felt completely in love with Spotify and its culture. The video explains the Spotify Product Development, the release methodology and the frameworks they use. They’re a 100% Agile company that started with the Scrum framework, but as their teams were growing, they noticed some things on the Scrum framework that weren’t working well for them. So, they decided to break some Scrum roles, artifacts and events. According to the video, these things were getting in the way, so they decided to make the Scrum roles, artifacts and events optional.

“Rules are a good start, then break them”

They figured out that Agile matters more than Scrum and principles matter more than any specific practices. Spotify renamed the Scrum Master to Agile Coach because they wanted “servant leaders” more than “process masters”. They also renamed Scrum teams to Squads.

What’s Squad?

It’s a small cross-functional self-organized team with usually less than 8 people. They have end-to-end responsibilities and they work together toward long-term missions. On Squads, the key drive is autonomy.

Each Squad has autonomy to decide what to build, how to build it, and how to work together while building it, although they need to be aligned with the Squad mission, product strategy, and short-term goals.

“Be autonomous, but don’t sub-optimize!”.

Why autonomy?

Autonomy provides employees with a sense of collective ownership. They are part of a greater whole, active members (rather than passive) of the team, “making a positive overall contribution to the organization”.

Griffin and Moorhead, 2008. Organizational Behavior Managing People And Organizations, 2009 Ed.
Trust > control

People work with autonomy, mastery, and purpose. Autonomy is motivating, and motivated people build things better and faster. Autonomy makes us work better and faster because decisions are made locally instead of up the chain through managers and committees.

Squad roles

  • Leader’s job: Communicate what problem needs to be solved, and why.
  • Squad’s job: Collaborate with each squad to find the best solution.
“Loosely coupled, tightly aligned squads”

Why alignment?

Alignment enables autonomy. It’s important that everybody understands the company/startup culture. The stronger alignment, the more autonomy we can afford to grant.

Autonomy with alignment increases motivation, quality and also fast releases.”
Font: Spotify Engineering Culture — part 1

Spotify process

Spotify has little standardization and it doesn’t have a formal standard. They believe that cross-pollination is better than standardization. For example, when enough Squads use a specific tool, that tool becomes a path of less resistance and others Squads tend to choose the same tool. After other Squads use the same tool, test it and and collaborate together, the tool became a default standard.

Consistency x Flexibility

They have an internal open-source model where their culture is more sharing than owning. Based on mutual respect and little ego, Spotify has a peer code review where anyone can add any code anytime. Then a peer can review the code and also make adjustments where everybody collaborates together and spread the knowledge. They also have a culture that is focused on motivation which helps them to build a very good reputation as a workplace.

How the Squad works

Because Spotify has a lot of different Squad’s, they needed to create some structure to it. Each Squad is grouped into Tribes that have Chapters. During this particular process, you can switch your Squad without changing your manager. They also have a Guild that is a community of interest gathered by mailing list or another informal type of communication method inside Spotify.

Font: Spotify Engineering Culture — part 1
  • Tribe: Little weight matrix who’ primary dimension is focused on product delivery and quality.
  • Chapter: Competency areas such as quality assistance, Agile coaching or web development.
  • Guild: A lightweight community of interest where people across the whole company gather and share knowledge of a specific area. Anyone can join or leave a Guild anytime.
“Most organizational charts are an illusion”

Most organizational charts are an illusion. Spotify’s main focus is community over the structure, rather than hierarchical structures. They found that strong enough communities can get away without volume structure. If you need to know exactly who is making decisions, you’re in the wrong place at Spotify.

“If you need to know exactly who is making decisions, you’re in the wrong place at Spotify”
Font: Spotify Engineering Culture — part 1

How easy can they get their stuff into production?

The main goal is to have a small and frequent release and invest in automation and continuous release infrastructure. If releasing is hard, the release will be difficult. Although if releasing is easy, they can release often.

Font: Spotify Engineering Culture — part 1

Instead of creating rules to manage their releasing process, Spotify simplified it to encouraging small and frequent releases that became routine. They changed the architecture to enable decoupled releases using the encoded embedded framework. Each section of the web browser is like a frame of a website where each Squad can release their own stuff directly. They have three different Squads based on the self-service model.

  • Feature Squad: Focused on one feature area.
  • Client App Squad: Focused on making the release easy in one specific area platform.
  • Infrastructure Squad: Focused on making other Squads more effective providing tools and routines for Squads.
Font: Spotify Engineering Culture — part 1

Release trains — feature + toggles

Each client app has a release train that departs on their regular schedule, typically every week or every three weeks, depending on the client. The trains depart frequently and reliable and they don’t need much upfront planning.

The interesting part of it is that Spotify releases hidden features, for example, when the next train came, a feature that isn’t 100% done was released and then they hide this feature. Why did they do that? The answer is simple, releasing unfinished features and hiding them exposed integration problems early and minimized the need for code branching. Brilliant!

Principles > Practices

Interesting ideas:

  • Almost all walls at Spotify are a whiteboard.
  • Each Squad has their own space with a lounge and meeting room.
  • Releases hidden features.
No fear, no politics! Keep experimenting Spotify!

👏 Clap once, 👏👏 clap twice, clap as many times as you want (actually Medium will only allow you to clap 50 times).

My name is Thaisa, I’m a Product and Program Manager and I’m based in San Francisco, USA.

Learn more about me @ my Portfolio, LinkedIn, Instagram, Facebook, and Twitter. I’m also building an app. If you want to get early access subscribe to the waiting list here!