Role w zespole informatycznym

Krzysztof Wojewodzic to prezes Escola S.A. Jest to software house, który produkuje aplikacje mobilne. CEO Escola podzielił się swoją wiedzą na temat pracy w zespole informatycznym. Jakie role ma developer, a jakie scrum master czy architekt? Ten przewodnik łatwo pomoże Ci dowiedzieć sie kto jest kim. A najcenniejsze w tym artykule jest to, że wiedza o mechanizmach tworzenia oprogramowania pochodzi od człowieka, który z sukcesem zarządza swoją firmą.

 

Role w zespole informatycznym – mini-przewodnik

 

Jeśli zlecasz oprogramowanie, warto wiedzieć jakie są role w tych zespołach. Po pierwsze, by wiedzieć jakie kompetencje dobrać do projektu. Po drugie, by właściwie adresować pytania do poszczególnych osób. Co ciekawe, nie wszystkie role wymagają ukończonych studiów z informatyki.

 

Analityk biznesowy

 

Osoba, która ma za zadanie określić jakie parametry biznesowe ma spełniać dany projekt. Jej zadaniem będzie dokładnie rozpisać założenia biznesowe oraz diagramy procesów, które wskażą jak osiągnąć te cele.

 

Architekt

 

Architekt, czasem nazywany analitykiem technicznym, to osoba, która powinna z lotu ptaka spojrzeć na projekt i określić jak przebiegają procesy techniczne w aplikacji, jaka będzie zastosowana technologia, gdzie będą przechowywane dane, jak będą między sobą komunikowały się różne systemy etc.

 

DevOps / Administrator

 

Osoba, która konfiguruje i utrzymuje serwery. Ubuntu to jej podstawowy system operacyjny. Na maszyny (lub wirtualne maszyny) wgrywa niezbędne oprogramowanie i instaluje środowisko, do tego, aby programiści mogli tworzyć właściwą aplikację.

 

Komitet Sterujący / Rada projektu

 

Do rozwiązywanie kwestii spornych w projekcie, powoływana jest grupa, która bezpośrednio nie kieruje projektem, ale podejmuje kluczowe decyzje – może zmienić harmonogram, budżet, założenia projektu etc. Może ona też odbierać/zatwierdzać kamienie milowe (milestone) projektu.

 

Project manager

 

Menedżer projektu to osoba, która ma dbać o to by zadania zostały przydzielone i zrealizowane w określonym budżecie i czasu. W przeciwieństwie do właściciela produktu, ma ograniczony wpływ na kształt projektu.

 

Programista, Developer

 

Osoba, która tworzy aplikacje. Przyjęło się dzielić programistów w zależności od ich doświadczenia w danej technologii:
Junior – do dwóch lat doświadczenia
Regular / Professional – dwa do pięciu lat doświadczenia
Senior – powyżej pięciu lat doświadczenia
Warto zwrócić uwagę, że developer może być seniorem w jednej technologii, ale w innej, której akurat pracuje, nie mieć doświadczenia i być juniorem. Stąd trudno czasem w 100% określić jaki jest poziom zaawansowania danego programisty. Pomijając oczywiście aspekt, że część osób znacznie szybciej się uczy i może zostać seniorem w młodym wieku, podczas gdy innym zajmie to wiele lat. Określenia te nie są więc jednoznaczne.

 

Scrum master

 

Scrum master to specjalista z obszaru zwinnego prowadzenia projektów (Agile), która ma za zadanie pilnować procesu zarządzania projektem. Będzie odpowiadała za to by zwoływać i wysłuchać codziennych otwarć dnia (dialy), podsumowań sprintu (retro), a także wspomóc programistów w oszacowaniu czasochłonności zadań (planning poker). Teoretycznie jest to osoba, która nie ma wpływu na zarządzanie projektem, a ma jedynie zajmować się usprawnianiem pracy programistów.

 

UI designer

 

User Interface designer to osoba, która zna się jak nikt inny na tym co ma widzieć klient. Na rozkładzie graficznym, przyciskach, animacjach i mikroanimacjach. Powinna też wiedzieć, jak kolory wpływają na nasze emocje.

 

UX designer

 

User Experience designer. Osoba, która projektuje cały proces doświadczeń jakie powinny znaleźć się w aplikacji. Nierzadko zadania UX i UI designera wykonuje jedna osoba.

 

Właściciel Produktu (product owner lub product manager)

 

Właściciel produktu, to osoba, która ma za zadanie zadbać o jakość wytwarzanego oprogramowania i zgodność z wymaganiami (biznesowymi, funkcjonalnymi, technicznymi). W odróżnieniu od project managera, nie koncentruje się tak bardzo na projekcie, co na produkcie i jego jakości.
 
Nierzadko role w projekcie informatycznym są łączone. Project manager może być jednocześnie właścicielem produktu. UX/UI designer w małych zespołach pełni też funkcje grafika lub też analityka. A programista może także mieć specjalizację jako administrator. Mimo to, że podział jest płynny, warto znać podstawowe kompetencje w zespole IT.

 

Krzysztof był gościem podcastu Developer-Wannabe. Posłuchasz?