"Przydzielili nam kolejnego nietechnicznego Project Managera, ale to będzie masakra..." - czy programiści faktycznie tak myślą? Zdarza się. Ale jak pracować i rozwijać się, pomimo braku technicznego background'u w IT żeby jednak ominąć ten scenariusz i być dobrym nietechnicznym specjalistą dla swojego zespołu IT? O tym poniżej w rozmowie z Radkiem Wojtysiakiem - doświadczonym managerem zespołu DEV!
💡 Z tego odcinka dowiecie się:
Jak współpracować jako osoba nietechniczna z programistą, żeby Cię nie znienawidzono?Jakie są najczęstsze wyzwania w komunikacji między osobami nietechnicznymi a programistami?Jakie są najczęstsze błędów popełniane przez osoby nietechniczne.Jakie są stereotypy i mity dotyczących współpracy z programistamiJak powinna wyglądać współpraca osób technicznych i nietechnicznych w IT?
W dzisiejszych czasach technologia odgrywa kluczową rolę w biznesie, a współpraca pomiędzy osobami technicznymi i nietechnicznymi w branży IT jest niezwykle istotna. Wspólny sukces projektu wymaga zrozumienia, szacunku i efektywnej komunikacji między tymi dwoma grupami. W tym artykule omówimy najlepsze praktyki współpracy osób technicznych i nietechnicznych w IT, biorąc pod uwagę perspektywę zarówno programistów, jak i Project Managerów.
Kluczowa jest empatia.
Programiści, jako rzemieślnicy nowych czasów, wkładają w swoje dzieła wiele pasji i zaangażowania. Dlatego też ważne jest, aby współpraca między programistami a Project Managerami była oparta na wzajemnym szacunku i zrozumieniu. Project Manager musi być otwarty i empatyczny, zdając sobie sprawę z tego, że ma do czynienia z artystą, a nie tylko wykonawcą. Nauka odpowiedniej komunikacji z programistami jest kluczowa dla PMa, który pełni rolę adwokata klienta. Zarówno Project Manager, jak i programista mają za zadanie dbać o to, aby biznes klienta odnosił sukces. Oczywiście, klient nie zawsze musi mieć rację i niekoniecznie zna się na wszystkim najlepiej, nawet jeśli to on płaci i wyznacza wymagania. Programista, jako osoba na pierwszej linii, ma niezwykle ważną rolę w tym procesie.
Nierzadko programiści mogą utrudniać pracę Project Managerom, nawet nieświadomie. Project Manager, który nie jest specjalistą technicznym, może zbytnio polegać na opinii programisty, który może nie posiadać wystarczającego doświadczenia w podejmowaniu tak kluczowych decyzji. Ważną umiejętnością Project Managera jest dociekanie i dopytywanie, a nawet wyzwanie programisty, aby poznać prawdziwą sytuację i wyłonić osobę, która ma rację.
Czy nietechniczny Project Manager powinien być liderem zespołu IT?
Odpowiedź nie jest jednoznaczna. Istnieją zespoły samoorganizujące się, które nie wymagają lidera technicznego. Jednakże, w niektórych zespołach technicznych liderzy techniczni mogą odgrywać kluczową rolę w podejmowaniu decyzji dotyczących architektury i technologii. W takim przypadku naturalne jest, że Project Manager pełni rolę adwokata biznesu, a lider techniczny staje się liderem w obszarze technologicznym. Programiści z większym doświadczeniem powinni mieć również świadomość logiki biznesowej, jednak nie powinni skupiać się głównie na dyskusjach z przedstawicielami biznesu. Mogą oni dawać rekomendacje i opinie, ale nie powinny to być główne obszary ich odpowiedzialności.
Obalmy parę mitów
Wśród popularnych mitów na temat programistów jest przekonanie, że są oni pracoholikami, którzy pracują po nocach i biorą nadgodziny. Jednakże, rzeczywistość jest taka, że programiści bardziej skupiają się na optymalizacji swojej pracy i zwiększaniu efektywności, niż na dodatkowych godzinach pracy. Ważne jest, aby docenić ten fakt i zrozumieć, że programiści dążą do osiągania wysokiej jakości pracy w rozsądnym czasie. Rekomendowaną książką w tym kontekście jest "Work Rules", która opisuje model pracy w firmie Google i może dostarczyć cennych wskazówek dotyczących organizacji pracy w branży IT.
Współpraca z technicznym Project Managerem nie zawsze jest idealna i przyjemna. Często osoba posiadająca wiedzę techniczną może być przekonana, że wie lepiej, co może prowadzić do zamieszania. Ważne jest, aby osoby techniczne i nietechniczne wzajemnie szanowały swoje umiejętności i doświadczenie, a także otwarcie komunikowały swoje pomysły i opinie, aby osiągnąć wspólne cele.
Błędy popełniane przez nietechnicznych Project Managerów
Największym błędem, który często popełniają Project Managerowie, jest skupienie się tylko na dostarczaniu zadań i oczekiwaniu, że zostaną one wykonane na czas, nie rozumiejąc w pełni kontekstu projektu. Dlatego Project Managerowie powinni zadawać pytania, dociekać, rozumieć i angażować się w projekt. Nie powinni bać się pytać o to, czego nie rozumieją, ponieważ nie ma głupich pytań. PM powinien również interesować się projektem, umieć przejść przez niego, docenić pracę programistów i być w stanie udzielać im konstruktywnego feedbacku. Warto pamiętać, że zespół to nie tylko tabelka w arkuszu kalkulacyjnym budżetu i harmonogramu, ale przede wszystkim ludzie, którzy wykonują pracę, którą można zobaczyć i docenić.
Project Manager powinien włożyć szczególny wysiłek i uwagę w dostarczanie zespołowi i programistom dobrze przygotowanych informacji i kompleksowo opisanych zadań. Ważne jest, aby komunikować się z programistami w sposób przystępny dla nich, unikając nadmiernego użycia języka technicznego. Zachęcanie programistów do myślenia o produkcie i tłumaczenie im zadania w kontekcie użytkownika jest kluczowe. Zamiast skupiać się na technicznych detalach, Project Manager powinien prosić programistów o wyjaśnienie zadania, jakby byli użytkownikami końcowymi. To zachęcanie do myślenia produktowego pozwala uniknąć zbędnych komplikacji i zapewnia lepsze zrozumienie oczekiwań klienta.
Podsumowanie
Współpraca między osobami technicznymi a nietechnicznymi w IT może być wyzwaniem, ale także stanowi ogromną szansę na osiągnięcie sukcesu projektu. Kluczem do udanej współpracy jest wzajemne zrozumienie i szacunek, otwarta komunikacja oraz umiejętność słuchania i dociekania. Zarówno Project Managerowie, jak i programiści mają kluczowe role do odegrania w realizacji celów biznesowych i dostarczaniu wartości klientowi.
W końcu, niezależnie od różnic w umiejętnościach i wiedzy technicznej, wszyscy członkowie zespołu powinni być skoncentrowani na wspólnym celu, czyli tworzeniu wartościowych rozwiązań dla klienta. Wzajemne wsparcie, elastyczność i gotowość do nauki od siebie nawzajem są kluczowe dla udanej współpracy między osobami technicznymi i nietechnicznymi w dziedzinie IT.
Dlatego też, zrozumienie i poszanowanie dla unikalnych perspektyw i umiejętności każdej strony, oraz otwarta i konstruktywna komunikacja, są kluczowe dla sukcesu współpracy między osobami technicznymi i nietechnicznymi w branży IT. Tylko poprzez efektywną współpracę i wzajemne wsparcie możemy osiągnąć doskonałe wyniki i dostarczyć wartość klientom.
Powyższe, to tylko skrót tego o czym rozmawialiśmy w odcinku.