Tworzenie produktywnych zespołów

Inżynierowie rozwijają się w środowiskach, w których mogą się skupić i dostać w strefie. Zespoły często napotykają rozproszenie uwagi i konkurencyjne priorytety, które zmuszają inżynierów do zmiany kontekstu i dzielenia uwagi. Walczą o zrównoważenie głowy w dół czasu z głowy w górę czasu. Dodanie nowych funkcji wymaga, aby członkowie zespołu mogli pracować w dół i skoncentrować się. Reagowanie na problemy klientów i rozwiązywanie problemów z witryną na żywo wymaga, aby zespół był kierownikami i świadomymi tego, co się dzieje.

Aby ograniczyć rozproszenie uwagi, zespół może podzielić się na dwie załogi: jedną dla funkcji i jedną dla kondycji lokacji na żywo.

Illustration of feature crew and customer crew working together.

Podejście dwuosobowe daje większą produktywność i przewidywalność. Pomyślna implementacja opiera się na następujących kluczowych elementach:

  • Jasno zdefiniowane role załogi
  • Dobrze zdefiniowany proces rotacji załogi
  • Częste korekty wielkości załogi

Załoga funkcji

Załoga funkcji, lub F-crew, koncentruje się na przyszłości. Pracują one jako efektywna jednostka mająca wyraźną misję i cel: tworzenie i dostarczanie wysokiej jakości funkcji.

Załoga F jest chroniona przed codziennym chaosem usługi na żywo, aby upewnić się, że mają czas, aby zaprojektować, zbudować i przetestować swoją pracę. Mogą polegać na minimalnych rozproszeniu uwagi i swobodzie od konieczności rozwiązywania problemów, które pojawiają się losowo. Zachęcamy ich do rzadko sprawdzania poczty e-mail i unikania ściągania do innych problemów, chyba że są one krytyczne.

Kiedy członek załogi F dołącza do rozmowy lub od czasu do czasu zostaje zasysany w wątku e-mail, inni członkowie zespołu powinni je chide: "Jesteś na F-crew, co robisz?" Jeśli członek załogi F musi rozwiązać krytyczny problem, zachęcamy ich do delegowania go do załogi klienta i powrotu do pracy funkcji.

Załoga F działa jako ściśle dzianiny zespół, który roi się na małym zestawie cech. Dobry limit pracy w toku (WIP) to dwie funkcje lotu dla 4-6 osób. Ściśle współpracują ze sobą, tworząc głęboki kontekst udostępniony i wyszukują krytyczne usterki lub problemy projektowe, których brakowałoby pobiecą recenzję kodu. Dedykowana załoga umożliwia bardziej przewidywalną szybkość przepływności i czas realizacji. Członkowie zespołu często odnoszą się do załogi F jako spokojnej i skoncentrowanej. Uważają, że to spokojne i odmłodzone, aby skupić się głęboko na funkcji, aby poświęcić jej pełną uwagę. Osoby pozostawić swój czas na F-crew uczucie odświeżone i wykonane.

Załoga klienta

Załoga klienta lub zespół C-crew koncentruje się na tej chwili i zapewnia obsługę linii frontu dla klientów i problemów z witryną na żywo, usterek, telemetrii i monitorowania. Załoga C często miesza się wokół komputera, debugowanie krytycznego problemu na żywo. Ich priorytetem numer jeden jest kondycja lokacji na żywo. Laser koncentruje się na tym środowisku, buduje specjalistyczne umiejętności debugowania i analizy. Załoga klienta jest często nazywana zespołem tarczy , ponieważ chroni resztę zespołu przed rozproszeniem uwagi. Zamiast pracować nad nadchodzącymi funkcjami, zespół C-crew jest mostem między klientami a bieżącym produktem. Członkowie załogi są aktywni w wiadomościach e-mail, Twitterze i innych kanałach opinii. Klienci chcą wiedzieć, że są słyszane, a zadaniem C-crew jest ich usłyszeć. Zespół C-crew klasyfikuje problemy zgłaszane przez klientów natychmiast i szybko angażuje się i pomaga zablokować klientów.

Z potopem przychodzących zadań, praca nad szybko rozpędzonych C-crew może czasami być radosna. W napiętym tygodniu adresują wiele wiadomości e-mail, badań na żywo i usterek. W miarę po cichu operacji pracują nad ulepszaniem telemetrii i raportowaniem, inwestując swój czas, aby ułatwić utrzymanie usług.

Załogi C pozwalają zespołowi rozwiązywać problemy bez ściągania członków zespołu z innych priorytetów i zapewnić, że klienci i partnerzy są wysłuchani. Czas odpowiedzi na pytania i problemy staje się punktem dumy dla załóg C.. Jednak to tempo może być drenażowe, co wymaga częstej rotacji między załogami.

Rotacja załogi

Dobrze zdefiniowany proces rotacji sprawia, że dwuosobowy system pracy. Można po prostu zamienić załogi (załoga F staje się załogą C i na odwrót), ale ogranicza to dzielenie wiedzy między załogami i wewnątrz załogi. Zamiast tego wybierz cotygodniową rotację.

Pod koniec każdego tygodnia przeprowadzisz krótką wymianę, gdzie zespół decyduje, kto zamienia się między załogami. Możesz użyć wykresu tablicowego, aby śledzić, kto jest obecnie na każdej załogi i kiedy zostały zamienione. Najdłuższe ścięte osoby na każdej załogi powinny zwykle zamieniać się ze sobą. Jednak w danym tygodniu ktoś może chcieć pozostać w celu ukończenia pracy nad badaniem lub funkcją na żywo. Chociaż jest elastyczność, im dłużej ktoś jest na załogi, tym bardziej prawdopodobne, że powinny zostać zamienione.

Cotygodniowe rotacje pomagają zapobiegać silosom wiedzy w zespole i zapewnić stały przepływ informacji i perspektywę między załogami. Częsty ruch inżynierów tworzy wspólną wiedzę na temat pracy zespołu, która pomaga zespołowi w rozwiązywaniu problemów bez pomocy innych osób. Często nowi członkowie załogi F szybko znajdą wcześniej pominięty projekt lub wadę kodu.

Rozmiar załogi

Rozmiar załogi różni się w zależności od kondycji zespołu. Jeśli zespół ma wysoką stopę przychodzących problemów na żywo lub ma dużo długu technicznego, załoga C staje się większa i na odwrót. Dostosowywanie rozmiarów co tydzień zwiększa przewidywalność elementów dostarczanych i zależności zespołu. W ciągu kilku tygodni zespół może przenieść wszystkich do zespołu C-crew, aby zająć się opinią z dużej wersji.

Ta strategia upraszcza komunikację z zarządzaniem. Bez systemu dwuosobowego inżynierowie często pracują nad wieloma rzeczami jednocześnie. Gdy w ciągu jednego tygodnia występuje kilka zakłóceń, funkcje w toku są często opóźnione. W związku z tym zespół może nie być w stanie pewnie nadać osi czasu przyszłej pracy nad funkcjami.

Dedykowana załoga F prowadzi do przewidywalnej przepływności i czasu realizacji. Dzielenie zasobów między załogami zwiększa odpowiedzialność w zespole i zarządzanie tym, co zespół może osiągnąć co tydzień i każdy przebieg.

Następne kroki

System dwuosobowy może pomóc zespołom zrozumieć, gdzie inżynierowie powinni poświęcić czas i poczynić postępy w wielu konkurencyjnych priorytetach.

Oprócz poprawy produktywności i przewidywalności, system dwuosobowy może zwiększyć morale zespołu. Inżynierowie w każdym zespole jasno rozumieją swoje role i obowiązki oraz działają niezależnie i z znacznie większą odpowiedzialnością. Takie podejście jest idealne dla zespołów DevOps, odpowiedzialnych za programowanie i operacje. Takie podejście można jednak zastosować do niemal każdego zespołu Agile zajmującego się konkurencyjnymi priorytetami.

Firma Microsoft jest jedną z największych firm Agile na świecie. Dowiedz się , jak firma Microsoft organizuje zespoły w planowaniu metodyki DevOps.