Förra veckan postades en fantastisk video som beskriver Spotify’s utvecklarkultur, som vi hittade via deras utvecklingsblogg (för övrigt med den underbara taglinen ”Think it. Build it. Ship it. Tweak it. Blog it.”).

Videon innehåller massar av bra tips och insikter (till och med för folk utanför utvecklarvärlden), men här är några av mina favorit-take-aways, lite fritt översatt och omtolkat:

  • Principer är viktigare än arbetsformen. Hämta gärna inspiration från olika metodiker, men var öppen för att modifiera dem efter just era behov.
  • Coaching före kontrollerande styrning. Att ha folk som coachar resten in i en viss principbyggd kultur är bättre än någon som håller koll på att alla följer regler.
  • Ledare – hands off från detaljerna. Ledares uppgifter ska vara att formulera problem så väl som möjligt, istället för att instruera hur lösningar ska genomföras.
  • Sammankoppla er löst, men ligg i linje med varandra. Framgångsfaktorn när det kommer till autonoma team bygger på lös sammankoppling i kombination med att alla teams uppdrag ligger i linje med de övergripande målen hos Spotify. Alla team försöker vara god part i ekosystemet.
  • Autonomi skapar motiverade team. Genom att tilldela grupper ett uppdrag, där de ansvarar för hur de ska planera, bygga och underhålla uppdrag skapas en autonomi.
Låg Autonomi Hög Autonomi
I linje med mål Over-management ”Vi har de här behoven – Lös det så här!” Spotify Way – Tillit till kompetens ”Vi har de här utmaningarna. – Lös det på det bästa sätt ni kommer på!”
Ej i linje med mål Micro-management ”Du behöver inte veta vad företaget gör. – Håll klaffen och gör som jag säger!”  Verksamhetsanarki ”Gör vad ni tror är bra. Vi har inga krav på resultatet!”
  • En intern opensource-modell gör att team kan anpassa andras lösningar och sen be det ansvariga teamet att granska det innan man skjuter ut uppdateringarna. Flexibelt resursanvändande kort sagt!
  • Releaser och uppdateringar ska vara rutin, inte något laddat som skapar nervositet. (Eller som de mycket snyggare formulerar det ”Releases should be routine, not drama”)
  • Jobba på att göra allt så modulärt som möjligt. Genom att göra det slipper man moment när olika team sitter och väntar på varandra och man får mer motståndskraft mot buggar eftersom det modulära förhållningssättet skapar vattentäta skott. (Lite av en förlängning på lös sammankoppling).
  • Self service model (på engelska för här hittar jag ingen bra översättning.) – Gör det enkelt för team att göra sina egna releaser istället för att lägga resurser på att skapa gatekeepers som tar hand om alla releaser. Eller om man ska måla det i en metafor. ”Bygg riktigt bra metspön så att folk kan fiska själva, istället för att fiska åt alla.”
  • Tillit är viktigare än kontroll när man kommer upp i storlek på saker.
  • Håll takten! Genom att skapa ett release/uppdaterings-tåg (ännu en metafor), som ständigt håller tiderna,  riskerar man inte att saker och ting kommer halvfärdiga, utan man väljer istället att vänta in nästa tåg.