Jak rekrutować front-end developera?

W jednym z moich ostatnich postów pisałem na temat rozmowy kwalifikacyjnej na stanowisko front-end developera z punktu widzenia kandydata. Jako, że mam już jako takie doświadczenie w rekrutowaniu front-endowców to postanowiłem podzielić się moimi spostrzeżeniami również z tego punktu widzenia. Dlatego też, w artykule tym postaram się pokazać Ci jak rekrutować front-end developera. Dowiesz się z niego jak przygotować się do takiej technicznej rozmowy, jakie pytania zadawać oraz jakie wyciągać wnioski z tego co słyszysz. Moim zdaniem dobre przygotowanie do takiej rozmowy to klucz do znalezienia odpowiedniego kandydata!

Przygotowania

Przygotowanie do rozmowy to, moim zdaniem, kluczowe zadanie do wykonania przed właściwą rozmową. Pierwsze co powinieneś zrobić to upewnić się, że wiesz wszystko o stanowisku, na które będziesz rekrutować. W oparciu o to będziesz mógł przygotować zakres tematów, o które zapytasz.

Pytania o technologie

No dobra. Ale jak w takim razie przygotować się do rozmowy? Na początek dowiedz się jaka wiedza jest potrzebna na stanowisku na które rekrutujesz. W końcu co innego musi umieć „junior” a co innego „senior”. Mając już tę wiedzę, możesz przygotować specyficzne pytania. Na przykład jeśli stanowisko wymaga dogłębnej wiedzy z zakresu React/Redux to zapewne będziesz chciał zapytać o cykl życia aplikacji React, jak można zapewnić komunikację pomiędzy komponentami lub co to jest „action creator” w Redux.

Poza pytaniami stricte o technologie, kandydat powinien zapewne znać też różnego rodzaju narzędzia. W zależności od tego, jakie narzędzia są używane w danym projekcie, możesz właśnie na nie położyć nacisk. Dla przykładu w wielu front-endowych projektach używa się Grunta/Gulpa do automatyzacji zadań. W takim przypadku możesz zapytać, który z nich jest lepszy i dlaczego. Możesz chcieć też sprawdzić jego wiedzę i doświadczenie z narzędziami takimi jak Webpack czy Browserify. Pytania o znajomość Git (lub innych systemów kontroli wersji) również są mile widziane.

Generalnie moje podejście jest takie: zadaję pytania o technologie i narzędzia specyficzne dla projektów w firmie, w której pracuję. Do tego dorzucam też pytania o technologie i narzędzia, które są obecnie standardem we front-endzie. Zdarza się, że w projekcie używa się niszowych technologii i małe są szanse, że kandydat będzie je znać. Wtedy pytania o obecne standardy mogą pokazać na ile jest on ogólnie obeznany w świecie front-endu. Jeśli rzeczywiście jest, to na pewno poradzi sobie też z danym projektem.

Pytania z podstaw JavaScript

Poza pytaniami o technologie i narzędzia, kluczowe jest moim zdaniem sprawdzenie wiedzy z podstaw JavaScript. Wiesz „co to jest callback?”, „co to jest closure?”, „jak można zmienić kontekst wywołania metody?”, itp. Możesz też dorzucić jakieś pytania z HTML/CSS w zależności od tego jak taka wiedza jest istotna na stanowisku, na które rekrutujesz.

Na koniec bardzo ważna rzecz: spisz sobie gdzieś te pytania i upewnij się, że znasz na nie poprawną odpowiedź. Ja zwykle odpowiedź też sobie zapisuje dla pewności. Jeśli zadajesz pytanie, musisz znać na nie odpowiedź!

whiteboard

Rozmowa

Ok. Jesteś już świetnie przygotowany. Teraz nadszedł czas na zaaranżowanie spotkania (samodzielnie lub dział HR to zrobi). Na początek trzeba by się przedstawić i powiedzieć ze dwa zdania o sobie – jakie jest Twoje stanowisko itp.

Zaraz po tym kurtuazyjnym początku zwykle proszę kandydata aby opowiedział mi w kilku zdaniach o jakichś swoich ostatnich projektach, w których brał udział. Pytam o technologie, które były w nich użyte, czy stosowali git/webpack/gulp itp., czy pisane były testy jednostkowe (jeśli tak to jakie frameworki itp.). Jest to też okazja aby dowiedzieć się czy wśród technologii i narzędzi, których używał są te wymagane na danym stanowisku.

Kiedy już wiesz wszystko o poprzednich projektach kandydata, czas przejść do pytań, które wcześniej sobie zapisałeś podczas przygotowań do rozmowy. Nie zapomnij proszę o podaniu kandydatowi prawidłowej odpowiedzi jeśli sam jej nie zna. Uważam, że proces rekrutacji powinien być dobrym, rozwijającym doświadczeniem. Poza tym zawsze staram się wywrzeć wrażenie u kandydata, że rozmawia on z osobą, która wie o czym mówi.

Po zakończeniu zadawania pytań, daj kandydatowi czas na pytania do ciebie. Nie pomijaj tego elementu, ponieważ kandydat również może chcieć coś wiedzieć o firmie, a Twoim zadaniem jest ją przedstawić w pozytywnym świetle.

Jak wyciągnąć wnioski?

Nadszedł czas na najtrudniejszą, moim zdaniem, część rekrutacji. Po rozmowie z kandydatem jest duża szansa, że mamy już jakieś ogólne odczucie co do jego poziomu, przynajmniej w dziedzinie front-endu. Prawdopodobnie jesteś w stanie powiedzieć już, czy jest to raczej „junior” czy ktoś kto już ma jakieś pojęcie.

Dla mnie najważniejszym punktem odniesienia są ogólne pytania o JavaScript. Jeśli kandydat znał odpowiedź na większość z nich znaczy to, że prawdopobnie jest zainteresowany tematem i lubi „kopać głębiej”. Znaczy to, moim zdaniem, że nawet jeśli nie ma on doświadczenia w jakichś specyficznych dla danego stanowiska technologiach, to ma duży potencjał żeby szybko się wdrożyć.

Z drugiej strony, jeśli kandydat ma już (teoretycznie) doświadczenie we front-endzie, używał topowych obecnie narzędzi/frameworków, a nie wypadł dobrze na pytaniach o JavaScript to masz powody się martwić. Wygląda na to, że jego wiedza jest powierzchowna, ograniczona tylko do wykonywania zadań w danym narzędziu czy frameworku. Widać od razu, że kandydat taki nigdy nie zadał sobie trudu żeby sprawdzić dlaczego coś działa/nie działa. Moim zdaniem taki ktoś nie rokuje za dobrze.

No dobra. To wiemy już mniej więcej jak odróżnić „juniora” od kogoś bardziej doświadczonego. Jak w takim razie rozpoznać specjalistę? No cóż, myślę, że swoje wnioski można oprzeć na tym w jakich projektach brał udział, jak długo działa we front-endzie, jakich technologii używał, czy zna to co jest obecnie na topie itd. Dodatkowo warto zwrócić uwagę jak o tym mówił. Jeśli zauważyłeś u niego pasję, wtrącanie interesujących ciekawostek, na które się natknął w projektach to być może trafiłeś nawet na „seniora”.

Wiem, że często jest to nie możliwe ale osobiście byłem zawsze zwolennikiem podejścia aby nie zatrudniać nikogo od razu na stanowisko „senior developer”. Uważam, że bardzo ciężko jest jednoznacznie stwierdzić czy taka osoba rzeczywiście zasługuje na takie miano. Tak jak widzisz powyżej, dość łatwo da się oddzielić „juniorów” od osób bardziej doświadczonych. Natomiast czy jest to specjalista? Na odpowiedź na to pytanie potrzeba trochę więcej czasu niż godzina rozmowy technicznej.

Jak rekrutować front-end developera – podsumowanie

Moim zdaniem dobre przygotowanie to podstawa do przeprowadzenia dobrej rozmowy kwalifikacyjnej. To może być stresujące doświadczenie zarówno dla kandydata jak i dla ciebie. Dlatego też, wcześniejsze przygotowanie pytań może Ci to ułatwić oraz sprawić, że będziesz wyglądać jak ktoś kto wie co robi.

Poza tym jeśli zadasz dobre pytania to łatwiej będzie Ci przygotować wnioski z rozmowy co nigdy nie jest proste. Jak ze wszystkim: im więcej masz doświadczenia w przeprowadzaniu rozmów kwalifikacyjnych tym dokładniejsza będzie Twoja ocena kandydata i tym łatwiej Ci to przyjdzie.

Programista od 2006 roku, Front-end developer, fan JavaScript. Siedzę, myślę i stukam w te klawisze…

  • zakius

    Jedną z popularniejszych praktyk przy poszukiwaniu front-end deva jest zatytułowanie ogłoszenia „Programista PHP poszukiwany!”

Send this to friend

webmastah.weekly
Cotygodniowa porcja linków ze świata WEBDEV BEZ spamu, TYLKO samo mięcho!
Zobacz poprzednie wydania. Dołącz do 2 tysięcy webdeveloperów!
HTML5, CSS3, JS (React, Angular, Ember, Vue), PHP, SQL