Programiści są bardzo pożądanymi pracownikami, nie tylko na rynku IT. Ze względu na to, wiele młodych osób decyduje się kształcić w tym kierunku. Część studiuje programowanie, inni uczą się na dodatkowych kursach i w szkołach programowania, a wiele osób uczy się samodzielnie w domu. Zatrudnienie Juniora może mieć bardzo dobry wpływ na zespół w Twojej firmie – skorzysta na tym nie tylko początkujący programista, ale również jego bardziej doświadczeni koledzy, którzy będą mogli doszlifować swoje umiejętności miękkie. Żeby było to możliwe, konieczny jest skuteczny i dopracowany „onboarding”.

Czym jest „onboarding”?

Onboarding to proces witania nowego pracownika na pokładzie. Proces ten jest szczególnie istotny w przypadku początkujących programistów, jednak zalety przeprowadzenia onboardingu są znaczące dla każdego pracodawcy. Aż 58% osób, które zostały w ustrukturyzowany sposób przywitane w firmie, pracuje tam nadal po 3 latach. To oznacza, że dobry onboarding zmniejsza rotację pracowników, co dobrze wpływa na zespoły w firmie, które mają czas, aby nauczyć się ze sobą współpracować.

Zatrudnianie Junior Developera

Zanim będziemy mogli przywitać nowego członka zespołu na pokładzie, musimy przeprowadzić rekrutację. Ważne jest, aby już na tym etapie zwracać uwagę na to, kogo rekrutujemy, ponieważ ułatwi nam to późniejszy onboarding, a nowemu pracownikowi – adaptację w nowym miejscu pracy. Na jakie cechy i zdolności powinniśmy zwracać uwagę podczas rekrutowania Junior Developerów?

Zdolności techniczne

Bardzo prawdopodobne jest, że kandydaci nie będą mieli żadnego doświadczenia zawodowego, dlatego nie będzie możliwe ocenienie ich umiejętności na podstawie przeszłej pracy. Warto natomiast zwrócić uwagę na wszelkie odbyte staże i praktyki, a także na projekty, które kandydat robił w domu na własny użytek, takie jak: strony internetowe czy podstawowe aplikacje. Zwykle początkujący programiści posiadają kilka mniejszych projektów, którymi mogą się pochwalić np. na profilu GitHub. Przeglądając profile na tego typu portalu warto przejrzeć repozytorium GIT i „commit’y”, czyli etapy rozwoju projektu. Dzięki temu można ocenić czy dana osoba uczy się na błędach, czy powtarzają się one w całym projekcie. Przejrzenie repozytorium GIT pomoże nam też sprawdzić, jak rozwijała się dana osoba i czy, z upływem czasu, pisany kod stawał się coraz lepszej jakości. Warto również zadawać pytania o to, jakie blogi branżowe czyta dany kandydat oraz co robi, aby być na bieżąco z nowymi trendami na rynku.

Osobowość i umiejętności miękkie

W przypadku Junior Developerów ich osobowość i umiejętności miękkie są często dużo ważniejsze, niż umiejętności i wiedza techniczna. Im bardziej zmotywowany i pełen pasji jest nasz kandydat, tym łatwiej przebiegnie jego onboarding i dalsza nauka. To, co powinniśmy ocenić podczas rekrutacji początkujących programistów, to przede wszystkim ich chęć do nauki, potrzeba stałego rozwoju i gotowość do pracy nad swoimi umiejętnościami. Warto też ocenić umiejętności miękkie kandydata: komunikację i pracę zespołową. Nie należy oczywiście oczekiwać, że początkujący programista będzie doskonale zorganizowany i doświadczony w pracy w zespole, natomiast ocenienie jego potencjału jest kluczowe, aby później nasz Junior Developer mógł się rozwijać i kształcić.

„Witamy na pokładzie!”

Gdy zatrudnimy już początkującego programistę, możemy przejść do onboarding’u. Jak przeprowadzić ten proces i na co zwracać uwagę? Jak wspomnieliśmy wyżej – proces onboarding’u ma bardzo duże znaczenie dla przyszłości pracownika w firmie, dlatego należy zadbać, aby był on przeprowadzony starannie i skutecznie.

Zacznijmy od samego początku – zanim jeszcze nasz nowy programista pojawi się w biurze. Żeby uniknąć zamieszania i stresu, warto przygotować wcześniej dokumenty do podpisania przez nowego pracownika, karty dostępu (jeżeli takowe są potrzebne), firmowe konto mailowe, biurko i przestrzeń pracy Junior Developera. Należy również poinformować zespół, do którego przyjdzie nowy pracownik o tym, że dołączy do nich nowa osoba.

Miłym gestem, obecnie bardzo powszechnym, jest również przygotowanie tzw. „Welcome Pack”, czyli zestawu gadżetów firmowych. Często, jeżeli firma to oferuje, w takiej paczce znajduje się też firmowy laptop lub inny sprzęt firmowy. Zwykle „Welcome Pack” zawiera gadżety takie jak kubek, notes, długopisy, ładowarki, power banki lub przekąski. Warto do prezentu dodać np. spersonalizowaną notkę od CEO/przełożonego – nowy pracownik na pewno to doceni.

Dzięki temu, że wcześniej zadbaliśmy o przygotowanie wszelkich niezbędnych rzeczy, możemy skupić się na nowym członku zespołu. Kluczowe rzeczy, które trzeba pokazać mu podczas pierwszego dnia pracy to przede wszystkim biuro i jego miejsce pracy. Należy również zapoznać Juniora z resztą zespołu, a w szczególności z jego bezpośrednim przełożonym, oraz opowiedzieć mu więcej o naszej działalności, wartościach i kulturze firmy. Trzeba oczywiście podpisać też dokumenty, które przygotowaliśmy wcześniej.

Szkolenie Junior Developera

Przywitaliśmy naszego nowego pracownika – i co dalej? Ponieważ jest to początkujący programista, nie możemy oczekiwać, że będzie samodzielny od pierwszego dnia pracy. Onboarding, w tym przypadku, nie kończy się po kilku pierwszych dniach zapoznawania się z firmą. Onboarding Juniora to proces, który ma na celu nie tylko wprowadzenie go w nowe środowisko pracy i zapoznanie z firmą, ale również jego rozwój i usamodzielnienie, sprawienie, że będzie pełnowartościowym członkiem naszego zespołu. Jest kilka różnych metod szkolenia młodych talentów. Musimy wybrać metodę, która najbardziej nam odpowiada lub, w zależności od potrzeb, możemy stosować ich kilka. To, jak szybko uda nam się wyszkolić młody talent, zależy w dużej mierze od tego, jak przeprowadziliśmy rekrutację, należy więc zwracać na to szczególną uwagę. Co możemy zrobić, aby wyszkolić nowego programistę i z jakich metod możemy skorzystać?

Wsparcie bardziej doświadczonego mentora

Jedną z rzeczy, która bardzo pomoże Juniorowi, jest wsparcie bardziej doświadczonego kolegi. Warto wyznaczyć nowemu pracownikowi mentora, u którego będzie on mógł szukać pomocy i porady. W przypadku szkolenia Juniora, mentorem nie musi być Senior Developer – wystarczy doświadczony Mid. Mentor będzie nie tylko pomocą dla początkującego programisty, ale będzie również wyznaczał mu zadania, kontrolował pracę, na bieżąco oceniał postępy i zapewniał informację zwrotną. Dzięki temu mamy pewność, że nasz Junior rozwija się w kontrolowanym środowisku i cały czas otrzymuje wsparcie. Dla nowego pracownika jest to bardzo korzystne rozwiązanie, ponieważ ma nieograniczony dostęp do wiedzy i doświadczenia mentora oraz nie jest „wrzucony na głęboką wodę” – mentor pomaga mu z zadaniami i organizuje pracę.

Taki rozwój początkującego programisty jest korzystny nie tylko dla niego, ale również dla mentora, który ma okazję rozwinąć swoje umiejętności takie jak przywództwo czy komunikacja. Może też sprawdzić się w roli lidera i rozdzielającego zadania, co będzie dla Mid Developera cennym doświadczeniem na drodze do zostania Seniorem.

Code Review – stała kontrola jakości pracy

Aby onboarding początkującego programisty był jak najbardziej efektywny i pozwalał na szybką naukę, możemy zastosować też Code Review, nazywany również Peer Review. Jest to metoda kontrolowania jakości kodu stosowana w projektach IT. W tym przypadku będzie ona polegać na kontrolowaniu jakości kodu Junior Developera przez bardziej doświadczonego członka zespołu. Przegląd kodu ma na celu wykrycie i poprawienie błędów popełnionych w trakcie pisania kodu oraz sprawdzenie, czy napisany program spełnia wymogi zawarte w dokumentacji projektu. Peer Review daje doskonałe pole do nauki nowemu pracownikowi, ponieważ może on uczyć się na błędach i dowiadywać się, jak bardziej doświadczeni programiści rozwiązują problemy. Metoda ta stwarza też świetną okazję do zintegrowania się zespołu, co jest niezmiernie ważną częścią onboarding’u, ponieważ członkowie zespołu poznają swoje style programowania i pracy.

Pair Programming – wspólna praca nad kodem

Kolejną z metod stosowanych w onboarding’u nowych pracowników jest Pair Programming, który polega na wspólnym kodowaniu. Dwie osoby programują przy jednym komputerze – jedna z nich (Driver) pisze kod, a druga (Navigator) na bieżąco sprawdza czy nie ma żadnych błędów. Osoby zwykle wymieniają się dość często (co 20-30 minut). Metoda ta zwykle zwiększa czas potrzebny do ukończenia zadania, natomiast zmniejsza liczbę błędów w kodzie średnio o 15%, co w efekcie pozwala nam zaoszczędzić czas. Z perspektywy onboarding’u początkującego programisty metoda ta ma kilka zalet – przede wszystkim przyspiesza proces nauki Juniora, który pracuje od razu nad trudniejszymi zadaniami. Kolejną zaletą jest wprowadzenie Juniora w specyfikę pracy danego zespołu, określone standardy i kulturę firmy. Dodatkowo, początkujący developer na bieżąco poznaje nowe techniki programowania i rozwiązywania problemów. Metoda Pair Programming jest również bardzo często wykorzystywana w rekrutacji IT, ponieważ pozwala już na etapie selekcji kandydatów sprawdzić poziom dopasowania potencjalnego pracownika do reszty zespołu oraz zweryfikować jego kompetencje techniczne.

Shadowing – nauka na własnych błędach

Shadowing (w dosłownym tłumaczeniu „cieniowanie”) to metoda onboarding’u, która opiera się na nauce na własnych błędach. Metoda ta zakłada, że mentor i początkujący developer pracują jednocześnie nad dokładnie tym samym projektem – Junior jest „cieniem” swojego mentora. Mentor wyznacza zadania, cele i terminy na początku każdego tygodnia lub dnia. Zarówno mentor jak i Junior pracują nad tym samym, a nowy pracownik może pytać o rady i pomoc w trakcie pracy. Na koniec danego tygodnia lub projektu, początkujący programista dostaje do wglądu bazę kodu swojego mentora, którą ma porównać ze swoją pracą. Dzięki temu Junior może bezpośrednio uczyć się na własnych błędach, odkrywać nowe rozwiązania, zapoznać się ze stylem programowania zespołu i rozwijać swoje umiejętności. Metoda ta jest bardzo często stosowana w przypadku nowych pracowników i jest bardzo wygodna, ponieważ nie wymaga od mentora stałego zaangażowania, a jedynie wsparcia dla Juniora.

Skuteczna nauka opiera się na ciągłej ewaluacji

Niezależnie od tego, którą z metod onboarding’u wybierzemy, kluczem do sukcesu początkującego programisty jest ciągła ewaluacja jego pracy. Trzeba na bieżąco zapewniać informację zwrotną, dawać wskazówki i porady, aby ukierunkować nowego pracownika. Żeby mieć pewność, że nasz Junior Developer skutecznie się uczy i ciągle rozwija swoje umiejętności, musimy zadbać, aby otrzymywał konstruktywną krytykę oraz wsparcie ze strony bardziej doświadczonych kolegów. Dzięki temu nowy członek zespołu będzie miał cały czas pole do rozwoju i ulepszania swojej pracy. Dodatkowo, badania pokazują, że skutecznie przeprowadzony onboarding zwiększa efektywność pracowników – aż 62% nowych pracowników, których odpowiednio przywitano w firmie, osiągnęło pierwsze cele w pracy terminowo.

Na co zwrócić dodatkową uwagę podczas onboarding’u w IT?

Proces onboarding’u zajmuje zwykle około 3-6 miesięcy. W przypadku początkujących programistów jest szczególnie ważny, ponieważ kształcimy młodego, utalentowanego pracownika, mając nadzieję, że zostanie z nami na długo i wniesie wartość do zespołu. Na co jeszcze powinniśmy zwrócić uwagę w trakcie onboarding’u i szkolenia Junior Developera?

Dokumentacja

Początkujący developer nie tylko zaczyna swoją przygodę z zawodowym programowaniem, ale poznaje również środowisko firmy. Spójna i czytelna dokumentacja jest istotna w każdej firmie i w każdym projekcie, ale powinniśmy dodatkowo zadbać, aby nowy pracownik zapoznał się ze specyfiką dokumentacji w naszej firmie. Dzięki temu będzie czuł się pewniej i łatwiej będzie mu wykonywać zadania. Jasna dokumentacja minimalizuje również ryzyko błędów i nieporozumień w pracy.

Komunikacja

Komunikacja jest kluczowym elementem onboarding’u. Należy zadbać, aby nowy pracownik czuł się „włączony” do grupy. Dodajmy go do naszych kanałów komunikacyjnych, zadbajmy, aby zespół dowiedział się o nowym członku. Warto również organizować spotkania początkującego programisty z jego przełożonym, aby na bieżąco pytać go o jego odczucia i wrażenia.

Kultura i atmosfera

Kultura i atmosfera w firmie bardzo często są czynnikiem, który nie tylko przyciąga nowych pracowników, ale również zapewnia pozostanie obecnych. Stworzenie przyjaznego i wyrozumiałego środowiska dla początkującego programisty jest niezwykle ważne, ponieważ będzie on mógł rozwijać się w swoim tempie bez obawy przed popełnieniem błędu i zewnętrzną presją. Wprowadzenie Juniora w kulturę firmy jest tak samo istotne. Skuteczny onboarding wymaga integracji. Jeżeli więc firma organizuje spotkania i aktywności grupowe – będą one doskonałą okazją dla Junior Developera do zapoznania się z resztą zespołu.

Junior Developer w zespole projektowym

Początkujący programista będzie czerpał ogromne korzyści z dobrego procesu onboarding’u. Ale czy firmom opłaca się zatrudniać Junior Developerów? Zdecydowanie tak. Ze względu na deficyt programistów na rynku, warto zatrudniać i szkolić młode talenty. Pozwala nam to kształtować pracownika od samego początku jego kariery zawodowej. Dzięki temu zostanie on z nami na lata i stanie się wartościową częścią zespołu. Dodatkowo, zespoły o mieszanych kompetencjach zwykle rozwijają się dużo szybciej, ponieważ programiści o różnym poziomie doświadczenia mogą wymieniać się wiedzą i wspierać siebie nawzajem.Taki zespół sprzyja również dobrej organizacji pracy  i odpowiedniemu dopasowaniu kompetencji do zadań. Wszystkie te rzeczy są niezwykle istotne w drodze do sukcesu projektu, dlatego warto zatrudnić początkującego developera i włączyć go do swojego zespołu projektowego.

Onboarding kluczem do sukcesu

Sprawdzony i ustrukturyzowany proces onboarding’u da nam pewność, że nowy pracownik odpowiednio wpasuje się w dynamikę zespołu, a jednocześnie będzie stale zdobywał wiedzę i nowe doświadczenia. Wiele firm pomija ten proces lub bagatelizuje jego znaczenie, co skutkuje dużą rotacją pracowników i chaosem za każdym razem, gdy pojawia się nowy pracownik. Zatrudnienie Junior Developera będzie miało bardzo dobry wpływ na cały zespół, pod warunkiem, że podejdzie się do tego w odpowiedni sposób – od zatrudnienia aż po szkolenie.Jeżeli chcesz zatrudnić developerów lub zbudować wydajny zespół IT napisz do nas!