Dzisiaj znowu nie o technologiach. Niemniej chcę podzielić się naszymi przemyśleniami o tym, dlaczego umiejętności miękkie są bardzo, bardzo ważne w IT, czemu nie warto heheszkować z pytań o to, jak poradziłeś sobie z problemem w zespole, oraz, co warto weryfikować i czego oczekiwać w kontekście pracy w zespole, czy wartości firmowych.
Zacznijmy od tytułu, bo może budzić kontrowersje. Nie każdy „dobry człowiek” jest stworzony do programowania. A niniejszy artykuł nie ma stanowić utopii, że programować może każdy, zawsze i wszędzie. W zawodzie programisty, jak myślę, w każdym z innych stanowisk, istnieją pewne fundamenty, podstawy, których potrzebujemy by móc efektywnie pracować. Do tego dochodzi doświadczenie, w kwestii czysto technicznej (ale również ogólnie), ważna jest pewna różnorodność projektów i wyzwań, jak i wybranie sobie pewnej specjalizacji/zainteresowanie się jakaś bardziej szczególną dziedziną. I o tym, jak budować takie fundamenty znajdziecie w sieci, a i na naszym blogu całkiem sporo treści. Te podstawy będą oczywiście różne w zależności od stanowiska na jakie aplikujecie, w skrócie i całkiem logicznie inne wymagania są stawiane dla juniora, a inne dla seniora.
Do tego dodajmy ogólną umiejętność rozwiązywania problemów, logicznego myślenia, zadawania pytań, krytycznej oceny pomysłu. I mamy uważam, bardzo solidny fundament, dla którego tytuł zaczyna nabierać sensu.
Z takim przygotowaniem, gdy będzie trzeba poznać nowy framework, po prostu dasz sobie radę. A może, problem, będzie można rozwiązać w znajomej Ci technologii, o czym pisaliśmy w naszym poprzednim wpisie. Jednak czy taki fundament wystarczy by efektywnie pracować w zespole? Pomagać sobie nawzajem, zrozumieć inny punkt widzenia, komunikować swoje potrzeby, udzielać informacji zwrotnej, współtworzyć firmowe wartości? By poradzić sobie z różnorodnością, a czasem i konfliktami? Ale też rozwijać się, gdy po pewnym czasie zaczynasz dostrzegać, że ten twardy rozwój, przychodzi dość organicznie z doświadczeniem. Tutaj właśnie wchodzą umiejętności miękkie, które czasem potrafi się bagatelizować.
Moje poprzednie doświadczenia obejmują dużo pracy z różnymi zespołami. Działałam w organizacjach studenckich, byłam tam project managerem, prezydentem, szkoleniowcem, ale też po prostu organizatorem, którego zadaniem było zrobić 200 kanapek na śniadanie :) . Uczyłam się nie tylko pracy z innymi ludźmi, czy przekazywania wiedzy, ale też poznawałam bardzo dużo siebie. Z raczej mocnym charakterem, nie było to łatwe, ba, początkowo miałam naprawdę ogromny problem z tym, że inni myślą inaczej. Niemniej, gdy zaczynałam swoją pracę mogłam z tych doświadczeń korzystać.
W jaki sposób?
Tutaj kilka prywatnych i subiektywnych doświadczeń.
- wiedza o tym, jak zespół może działać, czego powinnam wymagać od zespołu, ale też jakie są mogę personalne oczekiwania, pozwala mi na pewną kontrolkę, czy wszystko dla mnie działa w porządku. To pozwoliło zareagować na zachowanie jednego z członków zespołu, który nie dzielił się swoją wiedzą, nie wspierał nas w pracy, kodował dosłownie to, co było w zadaniu. W innym projekcie spędziłam naprawdę sporo czasu wypracowując komunikację z jednym z członków zespołu, który mówiąc wprost nie zaakceptował mojego „autorytetu” (w znaczeniu, moich pomysłów, opinii, feedbacku — a wręcz ciągle go podważał). Na podstawie różnych innych doświadczeń z pracy z ludzi, w tym z pracy z ludźmi z różnych środowisk i kultur, wymyśliłam sobie ścieżkę działania, którą realizowałam, i która choć powoli, to pozwoliła mi osiągnąć znacznie lepszą komunikację.
- wiedza o tym, co ja mogę wnieść do zespołu. W poprzedniej pracy stałam się strażnikiem dzielna się wiedzą. Regularnie podsyłam ciekawe linki, organizował cotygodniowe spotkania techniczne, gdzie prezentowaliśmy wybrane technologie. Pilnowałam by dokumentacja była tworzona na bieżąco. Podjęłam się tego, trochę właśnie dlatego, że wiedziałam, że dla mnie jest to ważne, a także, że mogę być takim organizatorem.
- wiedza o tym, czego wymagam i potrzebuje do sprawnej pracy. Dzięki temu, że pracowałam w różnych zespołach, o różnym stopniu zaangażowania, pozwoliło mi lepiej nauczyć się co jest mi konieczne do efektywnej pracy, a bez czego mogę się obyć. Tą wiedzę mogę wykorzystać nie tylko w pracy w projekcie, ale też szukając nowego pracodawcy.
- to że kiedyś sama zarządzałem zespołem czy projektem, pozwala mi z jednej strony stawiać wymagania, czy szukać odpowiedzi na pytania, które wydaje mi się powinny być zadane. Z drugiej strony, zrozumieć, że nie zawsze na wszystko można odpowiedzieć. Moje doświadczenia pozwoliły mi na pewną empatię, względem zarządzających, jak i pokazały czego mogę i powinnam wymagać.
- sam proces przygotowania projektu czy szkoleń, mogę mocno odnieść do przygotowania produktu, choć występują również różnice. Niemniej, szukanie wizji, misji, celów, czy stawianie pytań czy funkcjonalność A je realizuje wywodzi się właśnie z takich doświadczeń.
- doświadczenia szkoleniowe, pomagają mi w organizowaniu warsztatów programistycznych, ale też w przekazywaniu wiedzy w zespole.
To tylko przykłady, tego jak swoje umiejętności miękkie (ale też samą świadomość i wiedzę z nimi związaną mogę wykorzystać w praktyce), nieustannie wykorzystuje, ale też rozwijam pracując jako programistka. Im większe moje doświadczenie, tym większy nacisk w mojej codziennej pracy ludzi, współpracy, komunikacji i szukania zrozumienia, a mniej na kodowanie, które, jest narzędziem, a nie celem samym w sobie.
Co możesz zrobić, by rozwijać swoje umiejętności miękkie?
Zacznij pracować więcej z ludźmi: może to być organizacja studencka, może jakiś wolontariat, a może zgłosisz się w pracy do współorganizowania wyjścia integracyjnego, wydarzenia rekrutacyjnego czy np. klubu pieszych wędrówek po górach. Poznaj zarówno bycie członkiem zespołu jak i bycie liderem. Zrób to jednak świadomie, zastanów się jakie są Twoje oczekiwania względem tego procesu. Czego chciałbyś się nauczyć? A następnie, spróbuj poszukać ścieżek realizacji tych założeń.
Jeśli rola jest dla Ciebie nowa — nie bój się o tym powiedzieć na głos. Być może w zespole znajdzie się bardziej doświadczona osoba, która pomoże Ci w Twoim rozwoju. Jeśli jesteś świeży na pozycji lidera, nie bój się o tym mówić, ale też weź odpowiedzialność, za to, że zdecydowałeś się na taką rolę. Oczywiście masz prawo do niewiedzy czy pomyłek, jednak Twoim obowiązkiem jest znaleźć odpowiedzi na postawione pytania (lub wskazać ich źródło), albo zaakceptować błąd i znowu, poszukać sposobu na jego rozwiązanie.
Pamiętaj o feedbacku — o tym, że dzięki niemu możesz naprawdę dużo się nauczyć, ale też pomóc rozwinąć się innym.
Czytaj, słuchaj, oglądaj … a potem testuj ze swoim zespołem. Na rynku znajdziesz wiele ciekawych książek, czy szkoleń, które na pewno mogą pomóc w rozwoju tych kompetencji — niemniej, samo czytanie czy odhaczanie kolejnych eventów to za mało. Spróbuj z każdej takiej pomocy wyciągnąć wnioski i następnie sprawdzić je w praktyce. Albo sięgać po nie gdy faktycznie pojawia się jakiś problem / konkretna potrzeba.
Jak zweryfikować pracodawcę w kierunku rozwoju umiejętności miękkich/wartości?
Na samym początku warto zastanowić się jakie są Twoje oczekiwania odnośnie pracy w zespole, współpracy z przełożonym, ogólnej atmosfery i wartości jakie są bliskie Tobie, i fajnie by było, by działały również w Twojej firmie (rozważając to, warto powrócić do wszystkich nerwowych sytuacji z poprzedniej pracy, bo mogą być dobrą inspiracją co do tego, czego nie chcesz). Mając już taką listę, nie bój się zapytać o te rzeczy swojego potencjalnego pracodawcę. Jeśli masz wątpliwości, zawsze powinieneś mieć możliwość rozmowy z pracownikiem podobnego, co ty szczebla. Pamiętaj, że nie zawsze firma musi mieć korporacyjne wartości i dokładnie rozpisany program rozwoju pracowników, mniejsze firmy często będą prowadzić procesy w sposób mniej formalny — niemniej powinny być w stanie dać Ci konkretne przykłady takich działań.
Wracając do tytułu, rozwój umiejętności miękkich nie jest zero — jedynkowy, dlatego daj sobie na niego czas. Niemniej, taka inwestycja powinna przynieść korzyści Tobie i twojemu otoczeniu.