Rozmowa kwalifikacyjna - coś przed czym od czasu stajemy w naszej karierze. Ja już w swoim życiu trochę ich odbyłem… zarówno jako “przesłuchiwany” jak i “przesłuchujący”. Myślę więc, że mam już jako takie doświadczenie w tej kwestii. W dzisiejszym wpisie postanowiłem podzielić się z Wami tymi doświadczeniami i przekazać Wam kilka rad związanych z procesem rekrutacji. Jako, że jest to blog adresowany przede wszystkim do front-end developerów, to będę się skupiał przede wszystkim na rekrutacji na to właśnie stanowisko. Nie znaczy to jednak, że porady te (a przynajmniej ich część) nie nadają się do wykorzystania również przy rekrutacji na inne stanowiska programistyczne.

Pomyśl jakich pytań możesz się spodziewać

Przygotowując się do rozmowy kwalifikacyjnej powinieneś, po pierwsze, przeczytać bardzo uważnie ofertę pracy. Jakie technologie i narzędzie są wymagane oraz jakie z nich będą jedynie traktowane jako dodatkowy atut. Mam nadzieję, że kojarzysz przynajmniej te wymagane…

Kiedy dobrze już znasz wymagania, zastanów się jakich pytań możesz się spodziewać. Poniżej przedstawiam moją listę pytań, których zwykle spodziewam się podczas rozmowy kwalifikacyjnej na stanowisko front-end developera:

  • Twoje poprzednie projekty, jakich technologii używałeś, jaka architektura była w nich stosowana
  • pytania o technologie i narzędzie, które są wymagane na stanowisku na które aplikujesz
  • ogólne pytania na temat programowania z użyciem JavaScript, HTML, CSS itp.

Z doświadczenia mogę powiedzieć, że każda rozmowa kwalifikacyjna zwykle zawiera przedstawione powyżej elementy. Poniżej przedstawiam trochę więcej szczegółów na ich temat.

Pytania o poprzednie projekty

Zwykle na początku każdej rozmowy kwalifikacyjnej na stanowiska programistyczne padają pytania o Twoje poprzednie projekty. Nawet jeśli chodzi o stanowisko młodszego programisty, to rekruter zwykle chce wiedzieć czy wcześniej zajmowałeś się już jakimiś projektami.

Moim zdaniem ta kategoria pytań, to świetna okazja do pokazania siebie z jak najlepszej, profesjonalnej strony. Aby się do tego pytania dobrze przygotować, wybierz jeden - dwa projekty przy których pracowałeś i które najlepiej pasują do wymagań stanowiska. Mogą to być również te z Twoich poprzednich projektów, z których jesteś najbardziej dumny. Przygotuj sobie na ich temat kilka zdań. Jest to szczególnie ważne jeśli nie czujesz się pewnie na takich rozmowach. Opowiedz rekruterowi o wykorzystywanych w projekcie frameworkach, technologiach i narzędziach. Jeśli to możliwe pokaż, że stosowałeś nowoczesny front-end’owy stos technologiczny. Dla przykładu: zamiast wspominać tylko, ze wykorzystywałeś Angular/React, wspomnij dodatkowo, że używałeś też Webpack/Browserify do “bundlowania”, Grunt/Gulp do automatyzacji zadań itd. Jeśli możesz, wtrąć co nieco o jakichś ciekawych przypadkach, które rozwiązaliście w trakcie pracy nad projektem. To pokaże, że wiesz o czym mówisz i się tym interesujesz.

Z drugiej strony, nawet jeśli nie używałeś nigdy wspomnianych wcześniej technologii i narzędzi, powinieneś przynajmniej znać obowiązujące dzisiaj trendy. Rekruter na pewno o nie zapyta więc bądź na to przygotowany! Byłoby swietnie jeśli możesz mu powiedzieć, że co prawda nie używałeś ich komercyjnie ale wypróbowałeś je w swoich projektach “po godzinach”. Albo lepiej: w projektach open source, w których bierzesz udział. Tylko błagam - nie ściemniaj! To na pewno prędzej czy później wyjdzie na wierzch…

Podczas Twojej opowieści o poprzednich projektach, powinieneś też być przygotowany na dodatkowe pytania o wymieniane przez Ciebie narzędzia i technologie. Na przykład, jeśli powiesz, że używałeś Grunta albo Gulpa, rekruter może zapytać, który z nich jest lepszy i dlaczego… albo jakie są korzyści z użycia “bundlera”… Dlatego też pamiętaj, że zawsze musisz wiedzieć o czym mówisz!

Pytania o technologie i narzędzia wymagane na stanowisku, na które aplikujesz

Kiedy jakaś firma szuka pracownika, zwykle potrzebuje osoby, która wejdzie w nowy projekt tak szybko jak to możliwe. Z tego powodu rozmowa kwalifikacyjna to dla nich możliwość dowiedzenia się jak dobrze znasz technologie i narzędzia, które w ich firmie są wykorzystywane na codzień.

Podczas przygotowań powinieneś więc, skupić się na technologiach i narzędziach, których się u nich używa. To pozwoli Ci przygotować się na ogólne pytania specyficzne dla ich potrzeb. Na przykład jeśli firma, do której aplikujesz poszukuje speca z doświadczeniem w React, możesz spodziewać się pytań, na przykład o cykl życia aplikacji w React albo o to czym jest JSX lub jak działa VirtualDOM itd. Na szczęście w sieci Internet znajduje się mnóstwo przykładów takich pytań. Poświęć więc trochę czasu na ich poszukiwanie i analizę.

Ogólne pytania z JavaScript

Wcześniej wspomniałem, że trzecią kategorią pytań na rozmowie kwalifikacyjnej są ogólne pytania z JavaScript, HTML i CSS. Moje doświadczenie pokazuje, że na stanowisko front-end developera pyta się raczej tylko o JavaScript. Dlatego też w tym akapicie skupię się tylko na tym.

Generalnie, z perspektywy osoby rekrutującej, mogę powiedzieć, że jest to najważniejsza część pytań na rozmowie kwalifikacyjnej na front-end’owca. Jeśli znasz odpowiedzi na te pytania znaczy to, że ogólnie interesujesz się tematem i lubisz kopać głębiej. Wiele razy spotkałem się z osobami, które przez ostatnie 2 lata pracowały, na przykład, w Angularze, a nie znają podstaw JavaScript. O czym to świadczy? Ano o tym, że ktoś taki jest tylko klepaczem kodu. Jeśli chcesz wyskoczyć ponad ten poziom, musisz wiedzieć, co, jak i dlaczego. Tylko ktoś taki jest materiałem na perspektywicznego pracownika, a rozmowa kwalifikacyjna ma to potwierdzić.

Poniżej przedstawiam listę ogólnych pytań z JavaScript, które na pewno mogą pojawić się na rozmowie kwalifikacyjnej:

  • jaki jest zakres zmiennych (scope) w ES5
  • co to jest funkcja natychmiastowa (IIFE)
  • czy wiesz co to jest “revealing module pattern”?
  • jak można zmienić kontekst wywołania funkcji?
  • co to jest “promise”
  • czym jest funkcja wywołania zwrotnego (“callback”)?
  • co to jest “callback hell” i jak można się go pozbyć?

Oczywiście to tylko przykłady i możesz spodziewać się, że Twoja rozmowa kwalifikacyjna będzie zawierać wiele innych pytań tego typu. Proszę nie zaniedbuj przygotowań do tego rodzaju pytań. Uważam, że nawet jeśli nie masz dużego doświadczenia w wymaganych technologiach to udowodnienie znajomości podstaw JS może zwiększyć Twoje szanse na sukces. Skoro je znasz to na pewno szybko dostosujesz się do wymagań projektów w nowej pracy.

Rozmowa kwalifikacyjna - inne ważne kwestie

Poprawne odpowiedzi na zadawane pytania nie gwarantują sukcesu na rozmowie kwalifikacyjnej. To co musisz dodatkowo osiągnąć to pozytywne wrażenie.

Po pierwsze myślę, że powinieneś wiedzieć co nieco o firmie do której aplikujesz. Nawet jeśli o to nie pytają, warto pokazać, że odrobiłeś pracę domową. Aby to zrobić wystarczy, że zadasz jakieś pytania o firmę, o to jak się w niej pracuje itp.

Właściwie to zawsze warto mieć w zanadrzu jakieś pytania do rekrutera, nie tylko na temat firmy. Na pewno jest wiele kwestii, które są dla Ciebie istotne w pracy i rozmowa kwalifikacyjna to świetne miejsce aby o nie zapytać. Na przykład możesz chcieć wiedzieć, czy pracownicy tej firmy muszą zostawać po godzinach, a jeśli tak to jak często. Czy nadgodziny te są płatne czy może w zamian dostaje się dzień wolny? Możesz mieć pytania o projekt, do którego miałbyś trafić jeśli zostaniesz zatrudniony. Jakie narzędzia i frameworki są w nim stosowane. Pamiętaj, że to nie tylko firma Ciebie zatrudniająca ma być zadowolona. Ty również chcesz być zadowolonym pracownikiem!

Na koniec jeszcze jedno. To oczywiste, że musisz być też przygotowany na pytanie o oczekiwania finansowe… Wiem, że to często niełatwa kwestia dla wielu osób. Dlatego też warto zawczasu zastanowić się ile chce się zarabiać i przygotować konkretną kwotę. Dzięki temu, gdy padnie to pytanie, po prostu bez zająknięcia wypowiesz tę kwotę, zamiast kręcić coś w stylu: “no nie wiem, a ile możecie dać?” itp. Dzięki temu zostaniesz odebrany jako osoba konkretna i wiedząca czego chce. To też będzie na Twój plus.

Podsumowanie

Rozmowa kwalifikacyjna to nigdy nie jest łatwa sprawa. Szczególnie dla początkujących. Dobre do niej przygotowanie na pewno może pomóc wypaść dobrze, zmniejszyć stres i zbliżyć Cię do sukcesu. Mam nadzieję, żę te kilka rad będzie dla Ciebie pomocne i pomoże Ci dostać lepszą/wymarzoną pracę!