DevOps Team – Bättre resultat när utveckling och drift jobbar tillsammans
När du sätter ihop ett DevOps-team är det två saker som är särskilt viktiga; att teamet är självstyrande med kompetens och förmåga att ta ansvar för helheten och att det är ett team och inte en grupp.
– En grupp kan han ett gemensamt mål, men skillnaden är att du i ett team tar ett gemensamt ansvar för att nå målet. Det innebär att medlemmarna i teamet inte bara har fokus på sin del i arbetet, utan ser till att teamet som helhet rör sig framåt på bästa möjliga sätt, berättar Torbjörn Dahlström, seniorkonsult på Onbird med fokus på organisationsutveckling, IT-styrning och förändringsledning.
I ett DevOps-team bör det finnas kompetens inom både utveckling, drift och underhåll, men en viktig förutsättning för att teamet ska kunna jobba effektivt är att det finns en korsfunktionell kompetens i gruppen. Medlemmarna i gruppen har med andra ord inte bara har ett djup, utan även en bredd i sin kompetens så att de kan arbeta med flera olika uppgifter.
– Om du enbart har specialistkompetens i gruppen riskerar du att få flaskhalsar där uppgifter hopar sig. Därför behöver man se till att teamet har kompetensen som krävs för att kunna stödja varandras arbetsuppgifter.
Styrkan i ett DevOps-team är att alla arbetar med ett gemensamt mål i sikte – att leverera det kunden vill ha. Teamet bör därför organiseras för att kunna ta ett självständigt ansvar för tjänstens hela livscykel, från beställning till leverans. Det finns några huvudsakliga roller som ofta förekommer.
Fyra vanliga misstag
Kännetecken för DevOps-team
Det som kännetecknar ett DevOps-team är att det är gruppens gemensamma mål och nyckeltal som styr arbetet. Teamet hanterar själva utveckling och drift i nära samarbete med kund/beställare (ofta produktägare) för att teamet ska kunna ta ett gemensamt ansvar att leverera det allra mest värdeskapande. Arbetssättet bygger på en kombination av Lean och Agil utveckling. Och i samma anda innebär det att man jobbar med små ständiga förbättringar för att hela tiden optimera sina flöden och värdet i sin leverans till affärsverksamheten. För att så tidigt som möjligt upptäcka och åtgärda fel ser man till att utveckla och testa produkten i små iterativa steg. I den bästa av världar så görs också dessa tester i produktionslik miljö där alla komponenter i produkten och dess underliggande tekniklager (server, nät, klient, integrationer etcetera) verifieras med den nya versionen av produkten.
Automatisering är också en viktig del i DevOps. Men Torbjörn Dahlström poängterar att det inte är avgörande för hur väl ett DevOps-team lyckas. Då är kulturen mycket mer avgörande.
Kvalitet, lärande och ständig förbättring
Kulturen styr våra beteenden som i sin tur styr vårt arbete. Därför är det viktigt att bygga en kultur som strävar mot kvalitet, lärande och ständig förbättring. Och medarbetarna måste tro på det de gör.
5 typiska kulturmissar
Nyckeltal för teamen
Viktiga nyckeltal för att mäta ett DevOpsteam kan vara ledtider, hur långa releaseperioder man har eller hur lång tid det tar att rulla tillbaka en release.
– För att teamet ska fungera som ett team är det viktigt att man mäter resultaten på gruppnivå och inte på individnivå. Medarbetarna måste känna att det är teamets prestation som är prioriterad, poängterar Torbjörn Dahlström.
Enligt rapporten State of DevOps 2018 finns det några saker som utmärker de Devops-team som är framgångsrika i sitt arbetssätt. De har kortare ledtider, färre fel och bättre tillgänglighet. Dessutom har de en högre releasefrekvens och behöver mindre tid för att återställa en release än andra som jobbar på ett mer traditionellt sätt.
– Det finns stora affärsmässiga vinster med att jobba med DevOps. Många ser det främst som teknik, och det finns också massor med bra tekniska verktyg för att automatisera arbetet i DevOps. Men i grunden handlar det om att vi hittar sätt att jobba så att vi hela tiden ger kunden den bästa lösningen, på kortast tid och utan fel. Och blir det ändå fel, eller om något förändras under vägen, så ska det vara enkelt att rätta till, säger Torbjörn Dahlström.
Så bygger du DevOps-team
-
1
Ta bort stuprören
Ett DevOps-team har ansvar för hela flödet, från beställning till leverans. Utveckling, drift och underhåll är allas ansvar inom samma team. Se till att hela teamet har fokus på kunden och känner ansvar för totalleveransen.
-
2
Bygg teamkänslan
Se till att gruppen arbetar med gemensamma mål och att de mäts och utvärderas på gruppnivå. Och att alla har ett grundläggande förtroende för varandra inom teamet.
-
3
Tänk korsfunktionell kompetens
Säkerställ att medlemmarna i teamet har en bredd i sin kompetens så att de kan stödja varandras arbetsuppgifter.