Kandydaci aktywnie poszukujący pracy często chcą znaleźć miejsce, w którym wykorzystają nabytą wiedzę, ale też poszerzą ją w wybranych przez siebie kierunkach. Z moich obserwacji wynika, iż dla programistów kluczową kwestią jest to, jakie zadania będą wykonywać w codziennej pracy. Niestety zdarza się, iż przez błędy w komunikacji, źle sformułowane pytania na rekrutacji czy też celowe zatajenie niedogodności przez potencjalnego pracodawcę, nowa praca okazuje się rozczarowaniem.
#top_oferta: Mocny backendowiec
Lista częstych powodów niezadowolenia z pracy
Nie sposób wymienić wszystkich możliwych sytuacji, które spotkały pracowników i spowodowały, iż nowa praca nie spełniła oczekiwań. Można natomiast spróbować stworzyć zbiór tematów, które często wracają na tapet w branży IT:
1. Niskie standardy jakości kodu oraz procesu developmentu
Problem wręcz memiczny, bo ile razy oglądaliśmy już ciekawostki o braku testów czy testach na produkcji. W teorii możemy uchronić się przed pracą w takich warunkach, zadając podczas rekrutacji pytania o to, jakie w projekcie są testy, jakie będą środowiska i proces, co w znacznym stopniu może nakreślić sytuację. Niestety w pracy czasami trzeba zwiększyć tempo, by zaspokoić potrzeby biznesowe i nierzadko kończy się to pogorszeniem jakości kodu i konsekwencjami, które z tego wynikają.
Zazwyczaj Ci sami programiści, którzy byli przeciwko “chodzeniu na skróty” ponoszą konsekwencje decyzji podjętych na wyższych szczeblach. Zdarza się, iż firmy outsourcingowe mają tyle wolności, na ile pozwoli im klient, więc kandydat może nasłuchać się o tym, jak to firma dąży do perfekcji i na koniec trafić do projektu, który nie ma z tym nic wspólnego.
Praca w projekcie, w którym zabrakło czasu w poprawny design, czy też odpowiednie testy potrafi być bardzo frustrująca i czasochłonna (co również rzutuje na aspekt finansowy firmy). Do tego potrzeba tworzenia obejść lub poprawy błędów powstałych przez brak testów to coś, co skłoniło wielu ludzi to zmiany pracy.
2. Niekończąca się pętla zmian
Każdy z nas gdy ma do wykonania pracę, chciałby ją zrobić raz a dobrze i do tematu nie wracać. W IT niestety nie jest to oczywiste, głównie dlatego, iż bardzo często pracujemy przyrostowo i tworzenie danego elementu wymaga kilku iteracji. Większość pracowników jest przyzwyczajona do tego modelu pracy – gdzie leży problem? Notorycznie wręcz zmieniają się wymagania, które oznaczają przebudowę czegoś, co już istnieje.
Wytwarzanie systemu nie bez powodu stało się dziedziną inżynieryjną – jest bardzo precyzyjne. Gdy budujemy dom, każdy wie, iż w środku budowy nie możemy zmienić całego projektu, tej świadomości niestety brakuje w IT. Częste zmiany prowadzą do licznych patologii, które długofalowo mogą skutkować doprowadzeniem projektu do etapu, gdzie nie będzie już “rozwijalny” lub będzie to nieopłacalne.
Spotkałem się kiedyś ze stwierdzeniem, iż firma jest dumna z tego, iż potrafi reagować na potrzeby klientów i zmieniać wszystko w dowolnym momencie. Było to ewidentną próbą “odwrócenia kota ogonem” i wyjścia z odpowiedzią na zarzuty o braku ustaleń i słabego zarządzania. Zmiany są możliwe, ale dokładne przemyślenie projektu przed fazą wytwarzania oprogramowania, zaoszczędzi firmie pieniędzy, czasu oraz sporów w pracy, warto o tym pamiętać!
3. Błędne dopasowanie umiejętności kandydata do projektu
Nie każdy programista zna każdą technologię i nie każdej chce się uczyć. Większość pracowników ma swoje obszary zainteresowań, które niekoniecznie pokrywają się z potrzebami firmy. Zanim programista trafi do projektu, warto byłoby porozmawiać i ustalić, w jakim zakresie developer pozna technologie, z którymi nie miał do czynienia.
Co interesujące w większości umów, pracownik zobowiązuje się do wykonywania pracy zgodnie z najlepszymi praktykami, ale jak miałby to zrobić nie znając wybranych narzędzi?
W skrajnych sytuacjach widziałem, iż menedżer bez jakiejkolwiek rozmowy założył, iż jeżeli ktoś zna Angulara 2+ to na pewno nie będzie miał problemu pisać w jQuery. To była bardzo krótka kooperacja zakończona wypowiedzeniem ze strony pracownika.
4. Brak interesujących projektów
Sytuacja częsta w firmach outsourcingowych oraz firmach tworzących systemu szytę na miarę dla klientów. Sama sytuacja przypomina mi czasy, gdy pytanie “Czemu chce Pan pracować w naszej firmie?” było obecne na prawie każdej rozmowie rekrutacyjnej. Pracodawcy nie rozumieją, iż większość pracowników nie chce pracować w tej konkretnej firmie, a raczej w wybranym projekcie, wykonując zadania wynikające z oferty pracy.
Przekonałem się o tym, ponieważ przed zmianą pracy ustaliłem z firmą projekt i poświęciłem własny czas na przygotowanie się jeszcze przed wstąpieniem w szeregi pracodawcy. Na początku współpracy okazało się, iż do tego projektu nie trafię. Przez wiele miesięcy firma próbowała znaleźć coś na co się umawialiśmy, ale finalnie rozstaliśmy się. Smutne, ale prawdziwe i niestety nie było tutaj wygranych.
5. Faktyczny zakres obowiązków różniący się od ustalonego
Kolejny istotny temat, który nie zawsze udaje się doprecyzować podczas rozmowy kwalifikacyjnej. zwykle firmy różnią się pod względem wymagań względem stanowisk juniorskich czy seniorskich. Wiadomo, iż od wyższych stanowisk (nawet technicznych) wymagane będzie wsparcie w podejmowaniu decyzji biznesowych, co samo w sobie nie brzmi źle. Niestety często analitycy biznesowi nie są w stanie złożyć kompletnego procesu i wymagań i ich pracę wykonują programiści. Sporadyczna pomoc zwykle jest dla wszystkich w porządku, ale ciągle przerzucanie tej odpowiedzialności jest gwarantem tarć w zespołach.
6. Brak wyzwań
Moja perełka na sam koniec listy. To temat, który bardzo często wywołuje zdziwienie na twarzy menedżerów, którzy realizując kolejny projekt z myślą o wyzwaniach czy trudnościach do pokonania, bo biznesowa część przedsięwzięcia jest nietrywialna. Problem polega głównie na tym, iż często najważniejsze procesy firmy można obsłużyć zwykłym CRUD’em. Takie rozwiązanie dla większości programistów jest po prostu nudne a dla osób zarządzających jest próbą zinformatyzowania czegoś, co firmie przynosi zyski i jest kluczowe.
Warto pamiętać o tym, by pracownicy podejmowali również wyzwania techniczne, bo większość z nich po prostu zacznie szukać szczęścia gdzieś indziej. Oczywistym jest fakt, iż firmy muszą skupić się na osiąganiu celów biznesowych i systemy informatyczne są tylko środkiem do celu, ale w dzisiejszych czasach stały się kluczowe, więc i ludzie którzy je tworzą są niezbędni.
Dialog jako próba wyjścia z sytuacji
Z moich obserwacji wynika, iż powyższe sytuacje, mogą doprowadzić do pogorszenia relacji pracownika z firmą i przynieść negatywne skutki na efekty pracy. Pracodawcy często chcąc poprawić sytuację przez dialog, wychodzą z założenia to pracownik jest źródłem problemu. Niestety bardzo często przybiera to efekt kuli śnieżnej, która narasta przez błędy firmy rozwija się przez problemy komunikacyjne kończąc się rozstaniem stron.
Po drugiej stronie barykady nie zawsze jest lepiej. Pracownicy często twierdzą, iż nie mają sobie nic do zarzucenia. Zachęcam obie strony do dialogu, to naprawdę może pomóc jeżeli tylko podejdziemy do tematu z otwartymi głowami.
Jak wybrać pracodawcę, który spełni oczekiwania
Mam nadzieję, iż ten artykuł będzie pomocny dla kandydatów, którzy chcą zmienić pracę. Pamiętajcie, iż nie ma złych pytań: jeżeli nie wyobrażacie sobie pracy w kodzie legacy czy w przestarzałych technologiach to zadajcie konkretne pytania na rozmowie rekrutacyjnej. Tu chodzi o waszą pracę, która jest ważnym elementem życia. jeżeli pytanie będzie źle odebrane, to może nie jest idealny pracodawca. Celem rozmowy rekrutacyjnej jest zatrudnienie odpowiedniej osoby zdolnej do osiągania celów, ale też to, by pracownik był zadowolony z pracy!
Dlaczego warto dbać o pracownika?
Z drugiej strony mam nadzieję, iż artykuł pomoże firmom, poprzez zwrócenie uwagi na negatywne skutki “konfliktu interesów” między pracownikami a pracodawcami. Często mówi się o cichej rezygnacji czy wypaleniu a standardowymi tematami poruszanymi od lat jest też rotacja i spadek efektywności. Każdy z wymienionych skutków, jest dla firmy wyzwaniem, szczególnie jeżeli skala problemu będzie się powiększać.
Oprócz utraty fachowców zaznajomionych z technikaliami i stroną biznesową (których trzeba będzie zastąpić nowymi i nauczyć ich tego), firmy wydają coraz więcej pieniędzy na rekrutacje oraz przekraczają kolejne deadline’y z powodu niskiej wydajności. Warto wiedzieć, iż można temu zapobiec, nie tylko przez dodawanie kolejnych benefitów.
Zdjęcie główne artykułu pochodzi z envato.com.