devlog – Praca w grupie

Czyli jak wyglądała praca w grupie zespołu PiGames

Małe przypomnienie: miałem przyjemność pełnić rolę lidera w zespole, który nazwaliśmy „PiGames”, o naszym projekcie startowym pisałem [tutaj].

W tym wpisie chciałbym podzielić się z Wami naszymi doświadczeniami odnośnie pracy w grupie (narzędziami z których korzystaliśmy). Jednakże na wstępie chciałbym podkreślić, że w momencie rozpoczynania projektu żaden z członków zespołu nie miał doświadczenia w programowaniu zespołowym, a więc nasze rozwiązania nie muszą być tymi najlepszymi.

Trzy filary pracy w grupie


Jak wiadomo praca w grupie różni się od indywidualnej i jak to w każdej dziedzinie do jej efektywnego działania istnieją potrzeby na zapewnienie:

  • dobrej komunikacji;
  • podziału zadań;
  • dostępu do potrzebnych materiałów (kodu).

Komunikacja

W przypadku projektu programistycznego praca może być wykonywana zdalnie, co niesie za sobą potrzebę łatwej i archiwizowanej komunikacji, wspólnej dla wszystkich członków. My zdecydowaliśmy się na korzystanie z platformy [Slack], co raz bardziej popularnej (taki IRC na sterydach).

Swego czasu używaliśmy także TeamSpeak’a do rozmów głosowych, ale z racji że nie zawsze każdy może rozmawiać oraz fajnie by było jednak mieć archiwa naszych rozmów (tak aby można było do nich wrócić) to z nich zrezygnowaliśmy.

Podział zadań

Powszechnie wiadomo, że jeżeli ktoś nie ma przydzielonego zadań, to że nic nie musi robić. W tym celu wprowadziliśmy system karteczek na [Trello], gdzie trzymaliśmy informacje o przydzielonych zadaniach, czasie ich wykonania, itp. Całość dodatkowo zintegrowaliśmy ze Slackiem, dzięki czemu otrzymywaliśmy powiadomienia o zmianach „na żywo”.

Trello – PiGames

Kod

Ostatnią do uzupełnienia składową był dostęp do jak najbardziej aktualnego kodu wraz z możliwością łatwego nanoszenia zmian i kontroli jakości.

W tym celu posłużyliśmy się [Git’em], a jeszcze dokładniej postanowiliśmy użyć [GitHub’a].

Github – PiGames

Na koniec tego paragrafu, że można by się było pokusić o skonfigurowanie [GitLaba], bądź [Travis CI] dla odpowiednio lepszego zarządzania zmianami i automatycznym budowaniem i puszczaniem testów, ale dla naszych potrzeb użyte rozwiązania były zupełnie wystarczające.

Zakończenie


Jeżeli chodzi o pracę w grupie to sporo zależy od samych ludzi, z którymi się pracuje. W moim przypadku trafił mi się całkiem fajny zespół, któremu wystarczyło podsunąć narzędzia ułatwiające pracę w grupie, a reszta „działa się sama” ;)

Tradycyjnie chciałbym Was zaprosić do podzielenia się swoim komentarzem, śledzeniem bloga przez social-media oraz podrzuceniem własnych rozwiązań z których korzystacie do pracy w grupach (mniejszych, większych).

Zapraszam Was także na [repozytorium] oraz [stronę] gdzie obecny team (który się rozrósł nieco od momentu w którym zacząłem pisać ten art) mimo mojej aktywnej obecności realizuje kilka ciekawych projektów ;)

Code ON!