Najbardziej efektywne zespoły Agile to małe, zwinne grupy liczące od 5 do 7 osób o różnorodnych, ale powiązanych ze sobą zestawach umiejętności. Ta struktura umożliwia zespołowi rozwijanie bliskich, pełnych zaufania relacji, które wykorzystują różne umiejętności i przyspieszają zdolność zespołu do wykonywania zadań. Czasami jednak zestawy umiejętności potrzebne do realizacji danego projektu wykraczają poza zbiorowe zdolności zespołu.
Tu z pomocą przychodzą specjaliści.
Specjaliści ogólni i specjaliści
Ludzie, z którymi pracujemy, zwykle należą do jednej z dwóch kategorii: specjalistów ogólnych i specjalistów. Jakie są różnice między nimi?
- Ogólny specjalista — osoba o szerokiej wiedzy, która jest w stanie pracować w kilku różnych dziedzinach
- Specjalista — osoba posiadająca dogłębną i unikalną wiedzę na temat konkretnej dziedziny
Wiele metodyk Agile zakłada, że wszyscy członkowie zespołów powinni być ogólnymi specjalistami (więcej informacji to tym, dlaczego tak jest, można znaleźć w naszym artykule na temat zespołów Agile). Z poniższych powodów czasami jednak warto, aby zespół zaprzągł do pomocy specjalistę.
- Określony zestaw umiejętności nie jest potrzebny w danym zespole w pełnym wymiarze godzin.
- Firma ma ograniczoną liczbę osób o określonym zestawie umiejętności, pracujących dla różnych zespołów.
- Wymagana jest specjalna autoryzacja do pracy w dziedzinie, której brakuje zespołowi ogólnemu.
W takich przypadkach najlepiej, aby specjalista dołączył do zespołu na określony czas. Dodanie specjalisty do zespołu wiąże się jednak z szeregiem wyzwań.
Rozpoznawanie wyzwań związanych z pracą ze specjalistami
Ponieważ specjaliści współpracują z zespołem tylko przez określony czas, mogą szybko stać się „ścieżką krytyczną”, czasami hamując postępy całego zespołu. Na przykład, jeśli zespół powierza administratorowi bazy danych wprowadzenie zmian w bazie danych w celu wdrożenia nowego kodu, postęp zespołu będzie blokowany przez administratora bazy danych. Kiedy zespół nie jest w stanie kontynuować pracy, ponieważ potrzebuje wkładu tego specjalisty, strumień pracy ulega zatrzymaniu. Ponieważ specjalista jako jedyny w zespole dysponuje odpowiednimi umiejętnościami, zespół nie ma innego wyjścia, jak tylko poczekać, aż specjalista go odblokuje.
Specjaliści często zmieniają kontekst: zwalniają jeden projekt i przyspieszają inny. Problemem jest fakt, że częste przechodzenie między projektami wiąże się z pewnymi kosztami. Specjaliści prawie nigdy nie mają dogłębnej wiedzy na temat projektu, który wykonują główni członkowie zespołu, w efekcie czego mogą nie zwrócić uwagi na ważne szczegóły. Aby temu zaradzić, główny zespół musi poświęcać dodatkową energię w celu bieżącego informowania specjalisty.
Wskazówki dotyczące pracy ze specjalistami
Omówmy teraz trzy wskazówki pozwalające pokonać przeszkody wiążące się ze współpracą ze specjalistą.
1. Jasno określ, czego potrzebujesz od specjalisty
Jeśli uznasz, że musisz zaangażować specjalistę, poświęć chwilę na zastanowienie się, jakie są Twoje potrzeby. Określ rodzaj prac i wymagany poziom wiedzy. Dzięki temu zespół zyska odpowiedniego specjalistę, a specjalista ten będzie miał wystarczająco dużo czasu, aby pomóc zespołowi odnieść sukces. Brak realistycznie określonego czasu i umiejętności potrzebnych specjalistom naraża zarówno Twój zespół, jak i specjalistę na porażkę.
2. Zadbaj o transfer wiedzy specjalisty do głównego zespołu
Zespoły Agile muszą dysponować zestawami powiązanych umiejętności. Gdy specjalista pracuje z zespołem, należy przewidzieć dla niego czas na przeszkolenie głównego zespołu w możliwie szerokim zakresie, aby wiedza, którą wnosi, nie przepadła całkowicie po jego odejściu. Oto kilka skutecznych sposobów:
- Programowanie w parach — polega na tym, że dwóch lub więcej członków zespołu pracuje razem w czasie rzeczywistym nad konkretnym obszarem projektu. Obie osoby mogą zadawać pytania i angażować się w pracę.
- Przegląd kodu — podczas przeglądu kodu główny członek zespołu dokonuje przeglądu prac wykonanych przez specjalistę, aby zrozumieć wszystkie zmiany. Przeglądy kodu koncentrują się przede wszystkim na przyczynach zmian, dlatego są mniej skuteczne pod względem szkoleń niż programowanie w parach.
- Zebranie „brown bags” — to nieformalne sesje, podczas których specjaliści dzielą się wiedzą z grupą pracowników. To skuteczny sposób na edukację całego zespołu.
Chodzi o to, aby zespół stał się bardziej autonomiczny. Dzięki transferowi wiedzy główny zespół będzie miał szerszy kontekst pozwalający na zarządzanie obszarami, które wcześniej należały do specjalisty, co zmniejszy jego zależność od tego specjalisty w przyszłości.
3. Zminimalizuj bieżące zapotrzebowanie na pracę specjalisty
Po zakończeniu współpracy specjalisty z zespołem ważne jest ustalenie umów o poziomie świadczonych usług między nim a zespołem. Określ, kiedy lub w jakich okolicznościach zespół może potrzebować ponownego zaangażowania specjalisty. Tworzenie przewodników pomocniczych, które przedstawiają typowe scenariusze z dziedziny, którą zajmuje się specjalista, może dać zespołowi większą kontrolę nad własnym losem poprzez rozwiązywanie własnych problemów.
W Atlassian skupiamy się na rozszerzaniu zestawów umiejętności dla ogólnych specjalistów. Na przykład aby przenieść projekt z kategorii „specjalistycznej”, stworzyliśmy praktyczne sposoby budowania umiejętności projektowych dla programistów i właścicieli produktów. Aby dowiedzieć się więcej, zapoznaj się z naszym artykułem na temat projektowania Agile.