Home

Pytania, które programista powinien zadać swojemu potencjalnemu pracodawcy, part 1 – ogólne

Pierwsza część serii o pytaniach, które warto zadać firmie do której się rekrutujesz, by później nie żałować. Wszystko z perspektywy programisty.

Trafny wybór przyszłego pracodawcy jest bardzo ważny dla obu stron. Nikt nie lubi odchodzić po miesiącu, gdyż miało się inne oczekiwania wobec pracy czy projektu. Warto poświęcić więcej czasu by każdy był zadowolony.

Postanowiłem napisać serię artykułów, gdzie sugeruję jakie pytania warto zadać — i dlaczego.

W pierwszej części — 5 ogólnych pytań związanych ze strukturami firmy.

Czym zajmuje się firma?

Odpowiedź na to pytanie warto częściowo zweryfikować samemu — na przykład sprawdzając stronę pracodawcy. Dopytać warto o kilka dodatkowych detali:

  • Jeśli firma jest duża (korporacja) — do jakiego trafisz oddziału i czym ten oddział się zajmuje?
  • Jakiego typu klienci pracują z tą firmą? Z jakich branż? Z jakich krajów?
  • Czy firma ma jakieś swoje produkty? Czy może robi tylko projekty dla klientów?
  • Czy firma ma jakąś strategię związaną z obszarem rozwoju (np. mieć określonych klientów)

Tego typu pytania dadzą Ci pojęcie na temat tego w jakich branżach będziesz się obracać. Możliwe, że trafisz na coś co Cię bardzo interesuje — np sport, albo wręcz przeciwnie. Zawsze lepiej pracować w branży, którą się lubi.

Warto pamiętać, że agencje i software house często mają krótkie projekty (poniżej pół roku), co oznacza z jednej strony częste zmiany (o tym później), ale z drugiej — możliwość zmiany tematyki projektów, dzięki czemu trudniej się znudzić. Warto wtedy zapytać ile trwają projekty.

Jaka jest struktura firmy?

Z mojego doświadczenia rzadko firma ogranicza się do jednego oddziału w jednym miejscu. W przypadku korporacji jest to oczywiste, przeważnie jest dużo oddziałów w wielu miastach i krajach.

W przypadku mniejszych firm, także często struktura nie jest jednolita. Wiele polskich firm ma “oddziały biznesowe” w bogatych, zachodnich krajach (Niemcy, Anglia, USA), gdzie zdobywani są klienci, a praca delegowana do Polski. Często także firmy należą do większych organizacji, mając teoretycznie niezależność, ale jednak formalnie będąc podległymi.

Tego typu wiedza pozwoli Ci z grubsza zorientować się w procesach decyzyjnych, z kim będziesz współpracować itd. Im mniejsza organizacja i większa jednolitość (np stref czasowych), tym mniejszy narzut na komunikację.

Ponadto małe firmy charakteryzuje większa uniwersalność pracowników. Często trzeba zajmować się wieloma rzeczami, zależnie od potrzeb. W dużych firmach jest nacisk na specjalizacje i każdy ma swoje miejsce (trybik w maszynie). Sam odpowiedz sobie jak wolisz pracować.

Kto będzie Twoim przełożonym? Ilu ich będzie i jakie są ich kwalifikacje?

Temat przełożonych jest ściśle związany ze strukturą firmy. W korporacji możemy wypytać o strukturę oddziału i stanowiska. Zaczynając od bezpośredniego przełożonego (coś w rodzaju team lead), przez “wyższe” stanowiska developerskie, jak CTO (i czy będzie on przełożonym, a może tylko supportem?) aż po przełożonych biznesowych — managerów, kierowników, dyrektorów.

Warto zapytać czy przełożeni są programistami, a może ludźmi nietechnicznymi.

W małych firmach często struktura jest płaska, wtedy warto zadać pytania o pełnione role — oficjalnie nie musi być żadnego stanowiska, ale ludzie naturalnie dzielą się pracą lub są do niej delegowani.

W przypadku małych firm dobrze jest zapoznać się z pracownikami na LinkedIn. Znajdując profil firmy, możemy przeglądać wszystkich pracowników, którzy zadeklarowali że tam pracują. Pozwoli nam to z grubsza zweryfikować kompetencje ludzi, którzy tam pracują

Wiedza na temat struktury zarządzania jest moim zdaniem kluczowa, bo ogromnie wpływa na kulturę pracy. W silnie “drabinkowych” strukturach, jest ogromny narzut na (niepotrzebne) procedury, dużo spotkań i ślamazarne tempo. W płaskich strukturach można mieć więcej wpływu na tworzenie produktu, a co za tym idzie — satysfakcję. Ale na ten temat musisz odpowiedzieć sobie sam — niektórzy preferują pracę zadaniową, inni bardziej kreatywną i samodzielną

Jak wygląda proces decyzyjny?

Duże firmy przeważnie mają mocno wykształcone procesy, w tym decyzyjne. Praca jest delegowana “z góry na dół”, następnie raportowana “z dołu do góry”. Im dłuższa ta droga, tym gorzej — każdy szczebel dodaje narzut komunikacyjny i tworzy komplikacje.

W małych firmach łatwiej jest zagwarantować zespołowi niezależność — dostarczyć mu zadanie do wykonania (produkt) i pozwolić pracować. Tego typu podejście przeważnie jest najbardziej satysfakcjonujące dla wszystkich stron, jednak wymaga odpowiedniego doświadczenia, profesjonalizmu i dojrzałości w organizacji.

Warto zadać pytania na temat komunikacji z klientem. Czy to klient podejmuje ostateczne decyzje, przez kogo one przechodzą zanim trafią do zespołu (product owner i project manager) i jaką decyzyjność ma sam zespół.

Kolejnym tematem, który warto poruszyć jest proces zadawania pytań do projektu. Czy zespół może sam komunikować się z odpowiednimi osobami (klientem, designerami itd), czy może tylko zadaje pytania przełożonemu i czeka na odpowiedź?

Im bardziej prostszy proces decyzyjny, tym lepiej.

Czy będziesz pracować z ludźmi z innych krajów?

Zespoły rozproszone po świecie bywają dużym problemem. Sama praca zdalna w firmie z jednego kraju, daje duży narzut związany z komunikacją. Doliczmy do tego inny język (każda strona z wyjątkiem natywnego angielskiego ma pewien procent błędów w pisaniu i czytaniu) i co więcej — kulturę.

Ludzie z różnych krajów różnią się zachowaniem i często powoduje to konflikty. W szczególności wyczulałbym na pracę z Hindusami, ze względu na specyficzne problemy komunikacyjne związane z ich kulturą. Większe firmy często organizują spotkania integracyjne, by poznać ludzi z innych oddziałów, dzięki czemu można poprawić relacje i jakość pracy

Sam osobiście wyczulony jestem na zespoły rozproszone w obrębie jednego teamu — np. kilku programistów w Polsce i jeden “architekt” z innego kraju. Wyklucza to większość zespołu z procesu twórczego i decyzyjnego, nie pozwala na zespołową pracę i tworzy nieprzyjemną kulturę pracy. Oczywiście każdy człowiek jest inny, jednak warto mieć na uwadze jakie są różnice. Długie dyskusje przez Slacka nie umywają się do spontanicznych spotkań face-to-face.


To koniec pierwszej części. Skróconą listę pytań spisałem na moim githubie. W kolejnych artykułach będę przerabiać i opisywać kolejne zagadnienia.