Top 7 sposobów na szybką weryfikację kompetencji specjalistów IT przed rozmową kwalifikacyjną

Zatrudnianie specjalistów IT to niełatwe zadanie. Po pierwsze, obecnie na rynku występuje niedobór doświadczonych pracowników, co zdają sobie sprawę. Kandydaci często nie są gotowi spędzać dużo czasu na 'selekcjonowaniu' przez pracodawcę, jeśli wcześniej ich nie zainteresujemy. Dawniej popularna praktyka 'zrobimy test na 8+ godzin' obecnie już nie działa. Aby wstępnie ocenić wiedzę i odsiać kandydatów przed przeprowadzeniem szczegółowej rozmowy technicznej, musimy stosować inne, szybsze metody. Po drugie, aby dokładnie ocenić wiedzę i umiejętności, należy samemu posiadać takie umiejętności lub zaangażować kolegę z takimi umiejętnościami. Te trudności można rozwiązać za pomocą metod, o których opowiem w tym artykule. Sam stosuję te metody i stworzyłem dla siebie rodzaj rankingu.

Oto moje top-7 sposobów na szybką weryfikację kompetencji specjalistów IT przed rozmową:

7. Przejrzenie portfolio, przykładów kodu, otwartych repozytoriów kandydata.

6. Krótkie zadanie testowe na czas (realizowane w ciągu 30-60 minut).

5. Krótkie rozmowy ekspresowe na temat umiejętności przez telefon/Skype (jak kwestionariusz, tylko online i głosem).

4. Live-Doing (programowanie) – rozwiązanie prostego zadania w czasie rzeczywistym z udostępnionym ekranem.

3. Kwestionariusze z pytaniami otwartymi na temat doświadczenia.

2. Krótkie testy z wariantami odpowiedzi, ograniczone czasowo.

1. Wiele etapowe zadanie testowe, pierwszy etap realizowany przed rozmową.

Dalej szczegółowo rozważam te metody, ich zalety i wady oraz sytuacje, w których stosuję tę czy inną metodę szybkiej weryfikacji kompetencji programistów.

Top 7 sposobów na szybką weryfikację kompetencji specjalistów IT przed rozmową kwalifikacyjną

W poprzednim artykule na temat lejka rekrutacyjnego habr.com/ru/post/447826 przeprowadziłem ankietę wśród czytelników na temat sposobów szybkiej weryfikacji umiejętności specjalistów IT. W tym artykule opowiadam o metodach, które osobiście mi się podobają, dlaczego mi się podobają i jak je stosuję. Zaczynam od pierwszego miejsca i kończę na siódmym.

1. Wiele etapowe zadanie testowe, pierwszy etap realizowany przed rozmową

Uważam, że ten sposób weryfikacji kompetencji programistów jest najlepszy. W przeciwieństwie do tradycyjnego zadania testowego, kiedy mówisz "otrzymaj zadanie i zrób to", w mojej wersji proces wykonywania testowego zadania dzieli się na etapy – omówienie i zrozumienie zadania, zaprojektowanie rozwiązania oraz ocena wymaganych zasobów, kilka etapów realizacji rozwiązania, dokumentacja oraz oddanie-przyjęcie rozwiązania. To podejście jest bliższe nowoczesnej technologii tworzenia oprogramowania niż po prostu "weź i zrób". Szczegóły poniżej.

W jakich przypadkach używam tego sposobu

W swoich projektach zazwyczaj zatrudniam zdalnych pracowników, którzy opracowują oddzielną, samodzielną i relatywnie niezależną część projektu. To zmniejsza potrzebę komunikacji między pracownikami, często do zera. Pracownicy komunikują się nie między sobą, ale z kierownikiem projektu. Dlatego ważne jest dla mnie, aby od razu ocenić zdolności danej osoby do szybkiego zrozumienia zadania, zadawania pytań wyjaśniających, samodzielnego opracowania planu działania dotyczącego rozwiązania zadania, oceny wymaganych zasobów i czasu. W tym bardzo pomaga mi wieloetapowe zadanie testowe.

Jak to zrealizować

Wydzielamy i formułujemy samodzielne i oryginalne zadanie związane z projektem, nad którym programista ma pracować. Zazwyczaj opisuję w ramach zadania uproszczony prototyp głównego zadania lub przyszłego produktu, dla realizacji którego programista będzie musiał zmierzyć się z podstawowymi problemami i technologiami projektu.

Pierwszym etapem zadania testowego jest zapoznanie się z zadaniem, wyjaśnienie niejasności, zaprojektowanie rozwiązania, zaplanowanie kroków do rozwiązania zadania oraz ocena czasu potrzebnego na realizację poszczególnych kroków i całego zadania testowego. Oczekuję, że na końcu otrzymam dokument na 1-2 strony, w którym będzie opisany plan działań programisty i ocena czasu. Proszę również kandydatów o wskazanie, który z etapów chcieliby zrealizować w całości, aby potwierdzić swoje umiejętności w praktyce. Na razie nie trzeba jeszcze programować.

To zadanie (to samo) jest przekazywane kilku kandydatom. Oczekuje się, że odpowiedzi od kandydatów wpłyną następnego dnia. Następnie, po 2-3 dniach, gdy wszystkie odpowiedzi zostaną otrzymane, analizujemy, co kandydaci nam przesłali oraz jakie pytania wyjaśniające zadawali, zanim przystąpili do realizacji zadania. Na podstawie tych informacji można zaprosić na następny etap dowolną liczbę wymaganych kandydatów.

Następnym etapem jest krótka rozmowa kwalifikacyjna. Mamy już o czym rozmawiać. Kandydat ma już ogólne pojęcie o obszarze tematycznym projektu, nad którym będzie pracował. Głównym celem tej rozmowy jest odpowiedzenie na techniczne pytania kandydata oraz zmotywowanie go do wykonania głównego zadania testowego – zaprogramowania tej części zadania, którą sam wybrał. Lub tej części, której realizację chce zobaczyć z naszej strony.

Zawsze bardzo interesujące jest obserwować, którą część zadania programista chce zrealizować. Niektórzy wolą rozwinąć strukturę projektu, dekomponując rozwiązanie na moduły i klasy, czyli działają od góry do dołu. Inni – wydzielają pojedyncze podzadanie, które ich zdaniem jest najważniejsze, nie opisując rozwiązania w całości. Czyli idą od dołu do góry – od najtrudniejszego podzadania do całkowitego rozwiązania.

Zalety

Możemy dostrzec erudycję kandydata, zastosowanie jego wiedzy do naszego projektu, rozwój umiejętności komunikacyjnych. Poza tym łatwo jest nam porównywać kandydatów między sobą. Zazwyczaj odrzucam tych kandydatów, którzy podali zbyt optymistyczne lub zbyt pesymistyczne oceny czasu realizacji zadania. Oczywiście mam własną ocenę czasu. Niska ocena kandydata może świadczyć o tym, że osoba nie zagłębiła się w zadanie odpowiednio i wykonała dany test powierzchownie. Zbyt wysoka ocena czasu zazwyczaj wskazuje na to, że kandydat ma słabe wyobrażenie o danym obszarze tematycznym i nie posiada doświadczenia w ważnych dla mnie tematach. Nie odrzucam kandydatów natychmiast na podstawie ich oceny, lecz proszę o uzasadnienie tej oceny, jeśli nie była ona już w wystarczającym stopniu uzasadniona.

Dla niektórych ten sposób może wydawać się skomplikowany i czasochłonny. Moja ocena trudności zastosowania tego sposobu jest taka – opis testowego zadania zajmuje 30-60 minut, a następnie sprawdzenie odpowiedzi każdego kandydata – 15-20 minut. Kandydatom wykonanie takiego testowego zadania zajmuje zwykle nie więcej niż 1-2 godziny, przy tym zanurzają się w istotę zadań, które będą musieli później rozwiązać. Już na tym etapie kandydat może stracić zainteresowanie i zrezygnować z kontaktu z Wami, tracąc niewiele czasu.

Wady

Po pierwsze, trzeba wymyślić oryginalne, izolowane i zwięzłe zadanie testowe, co nie zawsze jest możliwe. Po drugie, nie wszyscy kandydaci od razu rozumieją, że na pierwszym etapie nie trzeba programować. Niektórzy od razu przystępują do programowania i znikają na kilka dni, a potem przesyłają całkowicie wykonane testowe zadanie. Formalnie, nie poradzili sobie z danym testowym zadaniem, ponieważ zrobili coś innego, niż od nich wymagano. Ale równocześnie, poradzili sobie, jeśli przesłali adekwatne rozwiązanie całego testowego zadania. Aby wykluczyć takie wpadki, zwykle dzwonię do wszystkich kandydatów, którzy otrzymali zadanie, dwa dni po jego wydaniu i pytam, jak im idzie.

2. Krótkie testy z wyborami odpowiedzi, ograniczone czasowo

Nie stosuję często tego sposobu, chociaż bardzo mi się podoba i uważam go za jeden z najlepszych sposobów szybkiej weryfikacji kompetencji. Napiszę na ten temat osobny artykuł w najbliższym czasie. Takie testy są szeroko stosowane w różnych dziedzinach wiedzy. Najbardziej wyrazisty i typowy przykład to teoretyczny egzamin na prawo jazdy. W Rosji egzamin ten zawiera 20 pytań, na które trzeba odpowiedzieć w ciągu 20 minut. Dopuszczalny jest jeden błąd. Przy dwóch błędach należy bezbłędnie odpowiedzieć na 10 dodatkowych pytań. Ten sposób znakomicie się automatyzuje.

Niestety, nie spotkałem dobrych realizacji podobnych testów dla programistów. Jeśli znasz dobre gotowe realizacje podobnych testów dla programistów, napisz proszę w komentarzach.

Jak to zrealizować

Pracowałem z samodzielnymi realizacjami podobnych testów przez pracodawców podczas wykonywania zleceń jako rekruter zewnętrzny. Zrealizowanie takiego testu jest jak najbardziej możliwe. Na przykład, z pomocą Google Forms. Głównym problemem jest stworzenie pytań i wariantów odpowiedzi. Zwykle fantazji pracodawców wystarcza na 10 pytań. Niestety, w Google Forms nie można zrealizować rotacji pytań z puli oraz ograniczenia czasowego. Jeśli znasz dobre narzędzie online do tworzenia własnych testów, gdzie można ograniczyć czas trwania testu i zorganizować wybór różnych pytań dla różnych kandydatów, proszę, napisz o takich serwisach w komentarzach.

W jakich przypadkach używam tego sposobu

Obecnie korzystam z takiego sposobu na prośbę pracodawców, jeśli mają gotowe testy, które mogą być danych kandydatom. Możliwe jest także połączenie takich testów z czwartym sposobem z mojego rankingu – prosimy kandydata o udostępnienie swojego ekranu i przystąpienie do testu. W tym czasie można omawiać z nim pytania i warianty odpowiedzi.

Zalety

Przy dobrej realizacji ten sposób jest samodzielny. Kandydat może wybrać dogodny dla siebie czas na przystąpienie do testu i nie musisz poświęcać na to dużo swojego czasu.

Wady

Jakościowa realizacja tego sposobu jest dość kosztowna i nie jest zbyt wygodna dla małej firmy, która czasami zatrudnia nowych pracowników.

3. Ankiety z pytaniami otwartymi na temat doświadczenia

To zestaw otwartych pytań, które zachęcają kandydata do rozważenia na podstawie swojego doświadczenia. Nie proponujemy przy tym wariantów odpowiedzi. Pytania otwarte są to takie, na które nie można odpowiedzieć prosto i jednoznacznie. Na przykład, wspomnij najtrudniejsze zadanie, które rozwiązywałeś za pomocą takiego a takiego frameworka? Na czym polegała główna trudność dla ciebie? Na takie pytania trudno jest odpowiedzieć jednoznacznie. Właściwie, jedyną prostą odpowiedzią byłoby – nie mam takiego doświadczenia, nie pracowałem z tym narzędziem.

Jak to zrealizować

Łatwo to zrealizować z pomocą Google Forms. Najważniejsze to wymyślić pytania. Używam kilku standardowych konstrukcji.

Opowiedz o ostatnim projekcie, który realizowałeś z pomocą ХХХ, co było dla ciebie najtrudniejsze w tym projekcie?

Jakie są dla ciebie główne zalety technologii ХХХ? Podaj przykłady ze swojego doświadczenia.
Wybierając technologię ХХХ, jakie inne alternatywy rozważałeś i dlaczego wybrałeś właśnie ХХХ?

W jakich sytuacjach preferujesz technologię AAA, a nie BBB?
Opowiedz o najtrudniejszym zadaniu, które rozwiązałeś przy użyciu ХХХ, na czym polegała główna trudność?

Zgodnie z tym, te konstrukcje można zastosować do wielu technologii w twoim staku roboczym. Na takie pytania trudno odpowiedzieć szablonowymi frazami z sieci, ponieważ są one osobiste i dotyczą osobistego doświadczenia. Odpowiadając na te pytania, kandydat zazwyczaj ma na uwadze myśl, że na rozmowie kwalifikacyjnej każdy z jego odpowiedzi może zostać rozwinięty w formie dodatkowych pytań. Dlatego jeśli nie ma doświadczenia, kandydaci często się wycofują, zdając sobie sprawę, że dalsza rozmowa może być bezsensowna.

W jakich przypadkach używam tego sposobu

Pracując nad zamówieniami na dobór specjalistów, jeśli zamawiający nie zaproponował swojego sposobu wstępnej weryfikacji kompetencji, stosuję ten sposób. Mam już przygotowane kwestionariusze na kilka tematów i nic nie stoi na przeszkodzie, aby zastosować ten sposób dla nowego zamawiającego.

Zalety

Nie jest trudno to zrealizować za pomocą Google Forms. Zresztą nowy kwestionariusz można stworzyć na podstawie wcześniejszego, zmieniając nazwy technologii i narzędzi na inne. Na przykład kwestionariusz dotyczący doświadczenia z React niewiele różniłby się od kwestionariusza dotyczącego doświadczenia z Angular.

Sporządzenie takiego kwestionariusza zajmuje 15-20 minut, a kandydaci zazwyczaj potrzebują 15-30 minut na odpowiedzi. Koszty czasu są niewielkie, ale uzyskujemy informacje o osobistym doświadczeniu kandydata, od których możemy się odwołać, dzięki czemu każda rozmowa kwalifikacyjna z kandydatami staje się unikalna i bardziej interesująca. Zwykle długość rozmowy kwalifikacyjnej po takim kwestionariuszu jest krótsza, ponieważ nie trzeba zadawać prostych, jednorodnych pytań.

Wady

Aby odróżnić własną odpowiedź kandydata od 'wygooglonej', trzeba znać się na temacie. Ale to szybko przychodzi z doświadczeniem. Po przejrzeniu 10-20 odpowiedzi nauczysz się odróżniać oryginalne odpowiedzi kandydatów od tych znalezionych w sieci.

4. Live-Doing (Kodowanie) – rozwiązujemy prostą zadanie w czasie rzeczywistym z udostępnionym ekranem.

Istotą tej metody jest poproszenie kandydata o rozwiązanie prostego zadania i obserwowanie procesu. Kandydat może korzystać z czegokolwiek, nie ma zakazu wyszukiwania informacji w sieci. Kandydat może odczuwać stres z powodu tego, że jego praca jest obserwowana. Nie wszyscy kandydaci zgadzają się na taki sposób oceny ich umiejętności. Jednak z drugiej strony, ta metoda pozwala zobaczyć, jakie wiedzę ma osoba w głowie, z czego będzie mogła skorzystać nawet w stresowej sytuacji oraz po jaką informację uda się do wyszukiwarki. Poziom kandydata widać prawie od razu. Nowicjusze korzystają z najbardziej podstawowych, nawet prymitywnych możliwości języka, często zaczynają realizować funkcjonalność podstawowych bibliotek ręcznie. Bardziej doświadczeni kandydaci dobrze orientują się w podstawowych klasach, metodach, funkcjach i mogą szybko rozwiązać proste zadanie – 2-3 razy szybciej niż nowicjusze, stosując znajomą im funkcjonalność podstawowej biblioteki języka. Jeszcze bardziej doświadczeni kandydaci zazwyczaj zaczynają od rozważań na temat różnych podejść do rozwiązania problemu i przedstawiają kilka opcji rozwiązania, pytają, którą z opcji chciałbym zobaczyć. Wszystko, co robi kandydat, można omówić. Nawet w oparciu o to samo zadanie wywiady są bardzo różne, tak jak i rozwiązania kandydatów.

Jako odmianę tej metody można poprosić kandydata o rozwiązanie jakiegoś testu weryfikującego kompetencje zawodowe, uzasadniając wybór konkretnej opcji odpowiedzi. W przeciwieństwie do zwykłego testowania, dowiesz się, na ile uzasadniony był wybór odpowiedzi. Możesz wymyślić swoje odmiany tej metody, biorąc pod uwagę specyfikę swojej oferty pracy.

Jak to zrealizować

Ta metoda jest łatwa do wdrożenia za pomocą Skype lub innego podobnego systemu wideo, który umożliwia udostępnienie ekranu. Zadania można wymyślić samodzielnie lub skorzystać z platform takich jak Code Wars, różnorodnych gotowych testów.

W jakich przypadkach używam tego sposobu

Kiedy wybieram programistów i z ich CV nie jest oczywiste, jaki jest poziom wiedzy kandydata, proponuję kandydatom rozmowę kwalifikacyjną w takim formacie. Z mojego doświadczenia – około 90% programistów nie ma nic przeciwko. Cieszy ich, że od pierwszej rozmowy kwalifikacyjnej zaczynamy rozmowę o programowaniu, a nie durnowate pytania typu „gdzie widzisz siebie za 5 lat”.

Zalety

Pomimo stresu i zdenerwowania kandydata, od razu widać ogólny poziom umiejętności kandydata. Dobrze zauważalne stają się również umiejętności komunikacyjne kandydata – jak się wypowiada, jak tłumaczy i motywuje swoje decyzje. Jeśli trzeba, by omówić kandydata z kolegami, łatwo zrobić nagranie wideo ze swojego ekranu i pokazać rozmowę innym osobom.

Wady

Połączenie może się przerywać. Z powodu zdenerwowania kandydat może zacząć się gubić. W takiej sytuacji można przerwać i dać mu czas na przemyślenie zadania w samotności, oddzwonić po około 10 minutach i kontynuować. Jeśli po tym kandydat nadal zachowuje się dziwnie, warto spróbować innej metody oceny umiejętności.

5. Krótkie ekspresowe rozmowy kwalifikacyjne na temat umiejętności przez telefon/Skype

To po prostu rozmowa głosowa przez telefon, Skype lub inny system komunikacji głosowej. W ten sposób możemy ocenić umiejętności komunikacyjne kandydata, jego erudycję i horyzonty. Jako plan rozmowy można wykorzystać kwestionariusz. Alternatywnie – można dokładniej omówić z kandydatem jego odpowiedzi na twój kwestionariusz.

Jak to zrealizować

Umawiamy się z kandydatem na rozmowę i dzwonimy. Zadawaj pytania, zapisuj odpowiedzi.

W jakich przypadkach używam tego sposobu

Ten sposób zazwyczaj stosuję razem z kwestionariuszem, gdy odpowiedzi kandydata wydały mi się oryginalne lub niewystarczająco przekonujące. Rozmawiam z kandydatem na temat pytań z kwestionariusza i dokładniej wyjaśniam jego zdanie. Uważam, że taka rozmowa jest niezbędna, gdy ważne są umiejętności komunikacyjne kandydata, zdolność do prostego i zrozumiałego formułowania swoich myśli.

Zalety

Bez rozmowy głosowej na tematy zawodowe zazwyczaj niemożliwe jest określenie, jak dobrze kandydat potrafi wyrażać swoje myśli.

Wady

Główną wadą są dodatkowe straty czasu. Dlatego stosuję tę metodę jako uzupełnienie innych, jeśli zachodzi taka potrzeba. Ponadto są kandydaci, którzy doskonale mówią na tematy zawodowe, ale w praktyce mają małe umiejętności. Jeśli potrzebny jest programista, który będzie stabilnie i jakościowo rozwiązywał zadania, lepiej wybrać inny sposób wstępnej weryfikacji kompetencji. Jeśli potrzebny jest menedżer lub analityk, czyli specjalista, który tłumaczy z języka ludzkiego na 'programistyczny' i odwrotnie, to ta metoda weryfikacji kompetencji będzie bardzo przydatna.

6. Krótkie zadanie testowe na czas (wykonywane w ciągu 30-60 minut)

Dla wielu zawodów ważna jest umiejętność specjalisty szybkiego znalezienia rozwiązania problemu. Zwykle zadania są nieskomplikowane, ale istotny jest czas ich rozwiązania.

Jak to zrealizować

Umawiamy się z kandydatem na czas wykonania zadania testowego. W ustalonym czasie wysyłamy kandydatowi warunki zadania i sprawdzamy, czy zrozumiał, co jest od niego wymagane. Mierzymy czas, jaki kandydat poświęca na rozwiązanie zadania. Analizujemy rozwiązanie oraz czas.

W jakich przypadkach używam tego sposobu

W mojej praktyce ta metoda była stosowana do weryfikacji kompetencji specjalistów wsparcia technicznego, programistów SQL oraz testerów (QA). Zadania były typu 'znajdź problematyczne miejsca i zaproponuj jak je rozwiązać', 'optymalizuj zapytanie SQL, aby działało trzy razy szybciej' itp. Oczywiście można wymyślić własne zadania. Tę metodę można również stosować dla początkujących programistów.

Zalety

Czas poświęcamy tylko na przygotowanie i weryfikację zadania. Kandydat może wybrać dla siebie wygodny czas na wykonanie zadania.

Wady

Główną wadą jest to, że w sieci mogą być dostępne rozwiązania waszych zadań lub podobne, dlatego warto mieć kilka wariantów i okresowo wymyślać nowe zadania. Jeśli trzeba przetestować czas reakcji i horyzont wiedzy, ja osobiście wybieram testy na czas (metoda nr 2).

7. Przejrzenie portfolio, przykłady kodu, otwarte repozytoria kandydata

To prawdopodobnie najczytelniejszy sposób weryfikacji kompetencji, pod warunkiem, że wasi kandydaci mają portfolio i w waszym zespole rekrutacyjnym są specjaliści zdolni ocenić to portfolio.

Jak to zrealizować

Analizujemy CV kandydatów. Jeśli znajdziemy linki do portfolio, dokładnie je przeglądamy. Jeśli w CV nie ma odniesień do portfolio, prosimy kandydata o przesłanie portfolio.

W jakich przypadkach używam tego sposobu

W mojej praktyce ten sposób był stosowany bardzo rzadko. Rzadko można znaleźć w portfolio kandydatów prace na odpowiedni temat. Doświadczeni kandydaci często wolą ten sposób zamiast typowego i nieciekawego zadania testowego. Mówią – „sprawdź mój repo, tam są dziesiątki przykładów moich rozwiązań różnych zadań, zobaczysz, jak piszę kod”.

Zalety

Oszczędza czas kandydatów. Przy odpowiednim czasie ci profesjonalni w waszym zespole mogą szybko i bez komunikacji z kandydatami odfiltrować nieodpowiednich. Podczas gdy rekruter szuka kandydatów, jego kolega ocenia portfolio. Powstaje dość szybka i równoległa praca.

Wady

Nie można stosować tego sposobu do wszystkich zawodów IT. Aby ocenić portfolio, trzeba posiadać rozwinięte umiejętności. Jeśli nie jesteś specjalistą, nie będziesz w stanie ocenić portfolio w sposób jakościowy.

Koleżanki i koledzy, zapraszam do omówienia przeczytanego w komentarzach. Powiedzcie, jakie inne metody szybkiej weryfikacji kompetencji stosujecie?

Źródło: habr.com

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster