Spotify's Agile Engineering Culture

by Henrik Kniberg

Henrik Kniberg

an Agile/Lean Coach and former Agile Alliance board member based in Stockholm, Sweden.

Henrik Kniberg

Previous Workshops

Spotify is a digital cross-platform music streaming service offering users a variety of record label content from Sony, EMI, Warner Music Group and Universal.

"Music for every moment"

40 million

active users

20+ million songs available

5000+ production Ubuntu servers in 4 sites worldwide

 

Almost 300 servers per ops engineer

 

33 Cassandra Clusters, 50+ Terabytes of Data (Nov 2013)

 

1200+ Employees in 30+ Countries

Practices in Part I

  • Autonomous Squad - Motivating and Fast! 
    • End-2-End Responsibility with a Long-term Mission and Short-term Goals
    • Design-Commit-Deploy-Maintenance-Operations
  • No Hand-off  ... to QA ... to Ops
  • Loosely coupled, Tightly aligned squads
  • Cross-pollination > Standardization
  • Keep systems Small & De-coupled with clear Interface and Protocol

Practices in Part I

  • Internal Open-source Model (they hate waiting!) with Peer Code Review
  • Focus on Motivation
  • Tribe - Chapter - Squad
  • Guild = Community over Structure
  • Small & Frequent Releases = Release should be Routine ... not Drama
  • Decoupled Releases - Architecture Changed
  • Self-Service Model - Buffet Style to avoid Handoffs

Practices in Part I

 

  • Release Trains + Feature Toggles (A/B Testing Infrastructure)
    • Un-merged Code = Hide Problems = Technical Debts
  • Trust > Control = No Politics, No Fear (Innovation Killer)

Practices in Part II

  • Fail Fast - Learn Fast - Improve Fast > Long-Term Succeed
  • Post-mortem (Retrospective)
    • What did we learn?
    • What will we change?
  • Continuous Improvement
  • Limited Blast Radius via:
    • Decoupled Architecture
    • Gradual Rollout
  • Product Development
    • Lean Startup
      • Think it, Build it, Ship it, Tweak it

Practices in Part II

  • Planning
    • Innovation > Predictability
    • Value Delivery > Plan Fullfilment
  • 10% Hack Time
    • Spotify Hack Week: Do Whatever! With Whoever! In Whatever Way!
    • People are natural innovators
  • Experiment-friendly Culture
  • Data-driven Decision

Practices in Part II

  • Lean = Waste-repellent
    • Keep:
      • Guild Unconference
      • GIT
      • Google Docs
      • Daily Standup
      • Retrospective
  • Big Projects = Big Risk! = a common source of waste
    • Improve Collaboration with Short Feedback Loop:
      • Visualize Progress
      • Daily Sync Meeting
      • Demo every week or two

Practices in Part II

  • Retrospective - Improvement Board
  • Definition of Awesome
    • Team agreed on what Awesome looks like
    • Toyota Improvement Kata

Summarize

Let's have a Break

Culture is a sum of everyone's attitude and actions

You are the Culture.

Model the behavior you want to see.

1920 - 2005

Workshop

What's your/your team definition of AWESOME!!?

What actions* you will take get you to one step closer to your awesomeness?

* Scope of your actions:

  • Able to start on this Sprint
  • Have a concrete result measured in the next 2 weeks.

Definition of awesome:

 

All our routine tasks are automated. (So, we have time to do innovative stuffs)

Everything we ship to production is fully automated and non-disruptive.

We are able to ship worry-free software to production everyday :) ... actually, anytime we want.

We love learning and sharing internally and externals what we've learnt. (Internal Knowledge Sharing, Barcamps, Un-conference, Training, TechTalks)

We continuously keep our customers so happy and so pleased with our products and services.

We're a happy team.

Recommended Read

Thank you

... let's get started building our great engineering culture :)

Spotify's Agile Engineering Culture - AAA Platform Team

By Siriwat Jithunsa

Spotify's Agile Engineering Culture - AAA Platform Team

  • 1,075