Nábor IT špecialistov nie je jednoduchá úloha. Po prvé, na trhu je nedostatok skúsených pracovníkov, ktorí si to uvedomujú. Uchádzači často nie sú ochotní tráviť veľa času na 'výberových procedúrach' zamestnávateľa, ak ich predtým nezaujmeme. Predtým populárna prax 'dáme test na 8+ hodín' už nefunguje. Na počiatočné hodnotenie vedomostí a vylúčenie uchádzačov pred vykonaním rozsiahlej technickej pohovoru je potrebné využiť iné, rýchlejšie metódy. Po druhé, na kvalitné hodnotenie vedomostí a zručností je potrebné mať sám také zručnosti alebo si prizvať kolegu, ktorý ich vlastní. Tieto ťažkosti možno vyriešiť pomocou metód, o ktorých sa budem rozprávať v tomto článku. Sám tieto metódy používam a vytvoril som si akýsi rebríček.
Takže, moje top-7 metód rýchlej kontroly kompetencií IT špecialistov pred pohovorom:
7. Preskúmať portfólio, ukážky kódu, verejné repozitáre uchádzača.
6. Krátka testová úloha na čas (vykonáva sa za 30-60 minút).
5. Krátky expresný pohovor o zručnostiach cez telefon/Skype (ako dotazník, len online a hlasom).
4. Live-Doing (Kódovanie) – riešime jednoduchú úlohu v reálnom čase so zdieľanou obrazovkou.
3. Dotazníky s otvorenými otázkami o skúsenostiach.
2. Krátke testy s možnosťami odpovedí, obmedzené časom.
1. Viacstupňová testová úloha, prvý stupeň sa vykonáva pred pohovorom.
Ďalej podrobne zvažujem tieto metódy, ich výhody a nevýhody a situácie, v ktorých využívam tú alebo onú metódu rýchlej kontroly kompetencií programátorov.

V predchádzajúcom článku o náborovom lieviku som uskutočnil prieskum medzi čitateľmi o metódach rýchlej kontroly zručností IT špecialistov. V tomto článku sa rozprávam o metódach, ktoré sa mi osobne páčia, prečo sa mi páčia a ako ich používam. Začínam s prvým miestom a končím siedmym.
1. Viacstupňová testová úloha, prvý stupeň sa vykonáva pred pohovorom.
Považujem tento spôsob hodnotenia kompetencií vývojárov za najlepší. Na rozdiel od tradičného testovacieho úlohy, keď poviete „tu máš úlohu, choď a urob to“, v mojej variante je proces vykonania testovacej úlohy rozdelený na fázy - diskusia a pochopenie úlohy, navrhnutie riešenia a posúdenie potrebných zdrojov, niekoľko fáz realizácie riešenia, dokumentovanie a odovzdanie-podpis riešenia. Tento prístup je bližšie k normálnej modernej technológii vývoja softvéru ako len „vezmi to a urob“. Podrobnosti sú ďalej.
V akých prípadoch používam tento spôsob
Pre svoje projekty zvyčajne najímam remote zamestnancov, ktorí vyvíjajú samostatnú, oddelenú a relatívne nezávislú časť projektu. To znižuje potrebu komunikácie medzi zamestnancami, často až na nulu. Zamestnanci komunikujú nie medzi sebou, ale s projektovým manažérom. Preto je pre mňa dôležité ihneď posúdiť schopnosti človeka rýchlo sa zorientovať v úlohe, klásť upresňujúce otázky, samostatne vypracovať plán činností na riešenie úlohy, posúdiť potrebné zdroje a čas. V tom mi veľmi pomáha viacfázová testovacia úloha.
Ako realizovať
Vyčleníme a formulujeme samostatnú a originálnu úlohu, súvisiacu s projektom, na ktorom bude vývojár pracovať. Zvyčajne popisujem ako úlohu zjednodušený prototyp hlavnej úlohy alebo budúceho produktu, pri realizácii ktorého sa bude vývojár musieť vysporiadať s hlavnými problémami a technológiami projektu.
Prvým krokom testovacej úlohy je oboznámenie sa s úlohou, objasnenie nejasného, navrhnutie riešenia, plánovanie krokov na riešenie úlohy a posúdenie času potrebného na vykonanie jednotlivých krokov a celej testovacej úlohy. Na konci očakávam dokument na 1-2 strany, kde je rozpracovaný plán činností vývojára a posúdenie času. Taktiež žiadam kandidátov, aby uviedli, ktorý z krokov by chceli kompletný realizovať na potvrdenie svojich zručností v praxi. Programovať zatiaľ nie je potrebné.
Toto zadanie (rovnaké) sa rozdáva viacerým kandidátom. Očakáva sa, že odpovede od kandidátov budú doručené na nasledujúci deň. Potom, po 2-3 dňoch, keď sú všetky odpovede získané, analyzujeme, čo nám kandidáti poslali a aké upresňujúce otázky kladli predtým, než začnú vykonávať úlohu. Na základe týchto informácií môžeme pozvať na nasledujúcu fázu akýkoľvek počet kandidátov, ktorý potrebujete.
Ďalším krokom je krátky pohovor. Už máme o čom hovoriť. Kandidát už má zhruba predstavu o tematickej oblasti projektu, na ktorom bude pracovať. Hlavnou úlohou tohto pohovoru je odpovedať na technické otázky kandidáta a motivovať ho na vykonanie hlavnej testovacej úlohy – programovanie tej časti úlohy, ktorú si sám vybral. Alebo tej časti, ktorú chcete vidieť realizovanú vy.
Je vždy veľmi zaujímavé sledovať, ktorú časť úlohy sa vývojár chystá realizovať. Niektorí dávajú prednosť rozpracovaniu štruktúry projektu, dekompozícii riešenia na moduly a triedy, t.j. idú zhora nadol. Iní vyčlenia samostatnú podúlohu, ktorú považujú za najdôležitejšiu, bez toho aby opísali riešenie celkovo. T.j. idú zdola nahor – od najťažšej podúlohy k celkovému riešeniu.
Výhody
Môžeme vidieť erudíciu kandidáta, aplikovateľnosť jeho vedomostí na náš projekt, rozvinutosť komunikačných zručností. Tiež nám uľahčuje porovnávanie kandidátov medzi sebou. Zvyčajne vylučujem kandidátov, ktorí dali príliš optimistické a príliš pesimistické odhady času dokončenia úlohy. Samozrejme, mám vlastný odhad času. Malý odhad kandidáta často naznačuje, že osoba sa do úlohy poriadne nezapojila a dielo vykonala povrchne. Príliš veľký odhad času zvyčajne naznačuje, že kandidát slabšie chápe tematickú oblasť, nemá skúsenosti v potrebných témach. Kandidátov nevylučujem okamžite na základe ich odhadu, ale žiadam ich, aby odôvodnili svoj odhad, ak nebol adekvátne odôvodnený.
Pre niekoho môže byť tento spôsob považovaný za zložitý a nákladný. Moje hodnotenie náročnosti uplatnenia tohto spôsobu je také – na popis testovej úlohy je potrebných 30-60 minút a následne na vyhodnotenie odpovede každého uchádzača 15-20 minút. Uchádzačom zvyčajne trvá splniť takúto testovaciu úlohu maximálne 1-2 hodiny, pričom sa prehlbujú do podstaty úloh, ktoré budú neskôr riešiť. Už v tomto štádiu môže uchádzačovi prísť nezaujímavé a vzdáva sa komunikácie s vami po strávení chvíle času.
Nevýhody
Po prvé, je potrebné vymyslieť originálnu, izolovanú a výstižnú testovú úlohu, čo nie vždy je možné. Po druhé, nie všetci uchádzači hneď pochopia, že v prvom kroku nie je potrebné programovať. Niektorí hneď začnú programovať a zmiznú na niekoľko dní, potom pošlú úplne vypracovanú testovú úlohu. Formálne, nesplnili túto testovú úlohu, pretože urobili nie to, čo sa od nich žiadalo. Ale zároveň aj splnili, ak poslali adekvátne riešenie celej testovej úlohy. Aby som vylúčil takéto situácie, zvyčajne volám všetkým uchádzačom, ktorí dostali úlohu, dva dni po jej vydaní a zisťujem, ako im ide.
2. Krátke testy s možnosťami odpovedí, časovo obmedzené
Tento spôsob nezvyknem často uplatňovať, hoci sa mi veľmi páči a považujem ho za jeden z najlepších spôsobov rýchlej kontroly kompetencií. O tomto spôsobe napíšem samostatný článok čoskoro. Takéto testy sa široko používajú v rôznych oblastiach vedomostí. Najvýraznejším a typickým príkladom je teoretická skúška na získanie vodičského oprávnenia. V Rusku táto skúška obsahuje 20 otázok, na ktoré je potrebné odpovedať za 20 minút. Dovoľuje sa jedna chyba. Pri dvoch chybách je potrebné bezchybne odpovedať na 10 dodatočných otázok. Tento spôsob sa skvele automatizuje.
Žiaľ, nestretol som sa s dobrými realizáciami podobných testov pre programátorov. Ak poznáte dobré hotové realizácie takýchto testov pre programátorov, prosím, napíšte do komentárov.
Ako realizovať
Pracoval som s nezávislými realizáciami podobných testov zamestnávateľmi pri vykonávaní objednávok ako externý náborár. Implementovať takýto test je celkom možné. Napríklad pomocou Google Forms. Hlavným problémom je zostavenie otázok a možných odpovedí. Zvyčajne zamestnávateľom stačí predstavivosť na 10 otázok. Bohužiaľ, v Google Forms nie je možné realizovať rotáciu otázok z potoka a časové obmedzenia. Ak poznáte dobrý online nástroj na vytváranie vlastných testov, kde je možné obmedziť čas na absolvovanie testu a zorganizovať výber rôznych otázok pre rôznych kandidátov, prosím, napíšte o takýchto službách v komentároch.
V akých prípadoch používam tento spôsob
Teraz používam tento spôsob na požiadanie zamestnávateľov, ak majú pripravené testy, ktoré môžeme dať kandidátom. Možné je tiež kombinovať takéto testy so štvrtým spôsobom z môjho rebríčka – žiadame kandidáta, aby zdieľal svoju obrazovku a absolvoval test. Pri tom môžete s ním diskutovať o otázkach a odpovediach.
Výhody
Pri dobrej realizácii je tento spôsob autonómny. Kandidát si môže vybrať pohodlný čas na absolvovanie testu a vy nemusíte tráviť veľa svojho času.
Nevýhody
Kvalitná realizácia tohto spôsobu je dosť nákladná a nie je to veľmi pohodlné pre malú spoločnosť, ktorá zriedka zamestnáva nových zamestnancov.
3. Dotazníky s otvorenými otázkami o skúsenostiach
To je súbor otvorených otázok, ktoré ponúkajú kandidátovi zamyslieť sa na základe svojich skúseností. Pri tom nenavrhujeme možné odpovede. Otvorené otázky sú také, na ktoré sa nedá odpovedať jednoducho a jednoznačne. Napríklad, spomeňte si na najťažšiu úlohu, ktorú ste riešili pomocou nejakého rámca? V čom bola pre vás hlavná náročnosť? Na takéto otázky sa nedá odpovedať jednoznačne. Presnejšie, jediná jednoduchá odpoveď je – nemám takú skúsenosť, nepracoval som s týmto nástrojom.
Ako realizovať
Jednoducho sa realizuje pomocou Google Forms. Hlavné je vymyslieť otázky. Používam niekoľko štandardných konštrukcií.
Povedzte nám o poslednom projekte, ktorý ste robili pomocou XXX, čo bolo pre vás najťažšie v tomto projekte?
Aké sú hlavné výhody technológie XXX pre vás, uveďte príklady zo svojich skúseností?
Pri výbere technológie XXX, aké ďalšie alternatívy ste zvažovali a prečo ste si vybrali práve XXX?V akých situáciách by ste preferovali technológiu AAA namiesto BBB?
Povedzte nám o najnáročnejšej úlohe, ktorú ste riešili pomocou XXX, v čom spočívala hlavná ťažkosť?
Tieto konštrukcie sa dajú použiť na mnohé technológie z vášho pracovného stacku. Na takéto otázky nie je jednoduché odpovedať šablónovými frázami z internetu, pretože sú osobné a vychádzajú z osobnej skúsenosti. Pri odpovedaní na tieto otázky má kandidát obvykle na pamäti myšlienku, že počas pohovoru môže byť každý jeho odpoveď rozvinutá do ďalších otázok. Preto ak nemá skúsenosť, kandidáti sa často sami odhlasujú, chápejúc, že ďalšia diskusia môže byť bezvýznamná.
V akých prípadoch používam tento spôsob
Pri práci na objednávkach na výber špecialistov, ak zákazník nenavrhol svoj spôsob počiatočnej kontroly kompetencií, používam tento spôsob. Mám už pripravené dotazníky na niekoľko tém a nie je mi nič proti použitiu tohto spôsobu pre nového zákazníka.
Výhody
Nie je ťažké to zrealizovať pomocou Google Forms. Navyše nový prieskum sa dá vytvoriť na základe predchádzajúceho, jednoduchou zmenou názvov technológií a nástrojov na iné. Napríklad prieskum o skúsenostiach s Reactom sa nebude veľmi líšiť od prieskumu o skúsenostiach s Angularom.
Príprava takého dotazníka trvá 15-20 minút a kandidáti zvyčajne potrebujú na odpovede 15-30 minút. Náklady na čas sú malé, ale získavame informácie o osobnej skúsenosti kandidáta, na ktorých môžeme stavať a spraviť každé pohovorenie s kandidátmi jedinečné a zaujímavejšie. Obvykle je dĺžka pohovoru po takomto dotazníku kratšia, pretože nie je potrebné klásť jednoduché, jednotvárne otázky.
Nevýhody
Aby ste odlíšili vlastnú odpoveď kandidáta od odpovede „našejdenej“ na internete, treba sa vyznať v tematike. Ale to rýchlo prichádza s praxou. Po zhliadnutí 10-20 odpovedí sa naučíte rozlíšiť originálne odpovede kandidátov od tých nájdených na internete.
4. Live-Doing (Coding) – riešime jednoduchú úlohu v reálnom čase s zdieľanou obrazovkou
Podstata tohto prístupu spočíva v tom, že požiadať kandidáta, aby vyriešil jednoduchú úlohu a sledovať proces. Kandidát môže používať čokoľvek, nie je zakázané hľadanie informácií na sieti. Kandidát môže cítiť stres z toho, že je sledovaný pri práci. Nie všetci kandidáti sú ochotní súhlasiť s takýmto spôsobom hodnotenia svojich zručností. Na druhej strane, tento prístup umožňuje vidieť, aké vedomosti má človek, s čím mu pomôže aj v stresovej situácii a po akej informácii pôjde do vyhľadávača. Takmer okamžite je viditeľná úroveň kandidáta. Začiatočníci používajú základné, dokonca primitívne funkcie jazyka, často začínajú implementovať funkčnosť základných knižníc ručne. Skúsenejší kandidáti sa dobre orientujú v základných triedach, metódach, funkciách a môžu rýchlo vyriešiť jednoduchú úlohu – 2-3 krát rýchlejšie ako začiatočníci, pričom využijú známy im funkčný základ knižnice jazyka. Ešte skúsenejší kandidáti zvyčajne začínajú s úvahami o rôznych prístupoch k riešeniu úlohy a rozprávajú o niekoľkých možnostiach riešenia, pýtajú sa, akú implementáciu ktorého variantu chcem vidieť. Všetko, čo kandidát robí, je možné prediskutovať. Aj na základe rovnakej úlohy sú rozhovory veľmi rozmanité, rovnako ako aj riešenia kandidátov.
Ako variant tohto prístupu môžete požiadať kandidáta, aby prešiel nejakým testom na overenie profesionálnych kompetencií, pričom obhajuje výber konkrétneho z možných odpovedí. Na rozdiel od bežného testovania zistíte, do akej miery bol výber odpovedí opodstatnený. Môžete vymyslieť vlastné varianty tohto prístupu s ohľadom na špecifiká vašej ponuky práce.
Ako realizovať
Tento spôsob sa ľahko realizuje pomocou Skype alebo iného podobného systému videohovorov, ktorý umožňuje zdieľanie obrazovky. Úlohy si môžete vymyslieť sami alebo využiť platformy ako Code Wars, rôzne pripravené testy.
V akých prípadoch používam tento spôsob
Keď hľadám programátorov a z životopisu nie je jasné, aká je úroveň znalostí kandidáta, navrhujem uchádzačom pohovor v takom formáte. Podľa mojej skúsenosti - približne 90% vývojárov nemá námietky. Je im príjemné, že už od prvého pohovoru sa začína diskusia o programovaní, a nie hlúpe otázky ako „kde vidíte seba za 5 rokov“.
Výhody
Napriek stresu a nervozite uchádzača, je hneď viditeľná celková úroveň jeho zručností. Rovnako sa dobre prejavia aj komunikačné zručnosti uchádzača - ako rozmýšľa, ako vysvetľuje a motivuje svoje rozhodnutia. Ak je potrebné diskutovať o uchádzačovi s kolegami, nie je ťažké urobiť videonahrávku obrazovky a potom ukázať pohovor iným osobám.
Nevýhody
Spojenie sa môže prerušiť. Z dôvodu nervozity môže uchádzač začať váhať. V tejto situácii je vhodné prerušiť a dať mu čas premýšľať o úlohe osamote, zavolať mu za 10 minút a pokračovať. Ak sa po tomto uchádzač správa stále zvláštne, mali by sme vyskúšať iný spôsob hodnotenia zručností.
5. Krátky expresný pohovor o zručnostiach cez telefón/Skype
Je to len rozhovor hlasom cez telefón, Skype alebo iný systém hlasovej komunikácie. Pri tom môžeme hodnotiť komunikačné zručnosti uchádzača, jeho erudovanosť a rozhľad. Ako plán rozhovoru môžeme použiť dotazník. Alternatívne - môžeme podrobnejšie prediskutovať uchádzačove odpovede na váš dotazník.
Ako realizovať
Dohodneme sa s uchádzačom na rozhovore a zavoláme mu. Kladieme otázky, zaznamenávame odpovede.
V akých prípadoch používam tento spôsob
Tento spôsob zvyčajne používam spolu s dotazníkom, keď mi odpovede uchádzača pripadajú originálne alebo nedostatočne presvedčivé. Rozprávam sa s uchádzačom o otázkach z dotazníka a zisťujem jeho názory podrobnejšie. Považujem takýto rozhovor za povinný, keď záleží na komunikačných zručnostiach uchádzača, schopnosti jednoducho a zrozumiteľne formulovať svoje myšlienky.
Výhody
Bez rozhovoru hlasom na odborné témy zvyčajne nemožno určiť, ako dobre uchádzač dokáže vyjadriť svoje myšlienky.
Nevýhody
Hlavnou nevýhodou sú dodatočné náklady na čas. Preto tento spôsob používam ako doplnok k iným, ak je to potrebné. Okrem toho existujú kandidáti, ktorí skvele hovoria na odborné témy, ale v praxi majú málo skúseností. Ak potrebujete programátora, ktorý bude stabilne a kvalitne riešiť úlohy, je lepšie zvoliť iný spôsob prvotného overenia kompetencií. Ak potrebujete manažéra alebo analytika, teda odborníka, ktorý prekladá z bežného jazyka do „programátorského“ a späť, tento spôsob overovania kompetencií bude veľmi užitočný.
6. Krátka testovacia úloha na čas (vykonáva sa za 30-60 minút)
Pre určité profesie je dôležité, aby odborník rýchlo našiel riešenie úlohy. Zvyčajne sa riešia jednoduché úlohy, ale dôležitý je čas potrebný na ich vyriešenie.
Ako realizovať
Dohodneme sa s kandidátom na čas vykonania testovacej úlohy. V dohodnutom čase zašleme kandidátovi podmienky úlohy a zistíme, či pochopil, čo sa od neho požaduje. Meriame čas, ktorý kandidát strávil riešením úlohy. Analyzujeme riešenie a čas.
V akých prípadoch používam tento spôsob
V mojej praxi sa táto metóda používala na overenie kompetencií odborníkov technickej podpory, SQL programátorov a testerov (QA). Úlohy boli typu „nájsť problematické miesta a navrhnúť, ako problém odstrániť“, „optimalizovať SQL dotaz, aby pracoval 3x rýchlejšie“ a podobne. Samozrejme, môžete si vymyslieť vlastné úlohy. Pre začínajúcich vývojárov sa táto metóda tiež dá uplatniť.
Výhody
Trávime svoj čas len na zostavení a kontrole úlohy. Kandidát si môže zvoliť pre neho pohodlný čas na vykonanie úlohy.
Nevýhody
Hlavnou nevýhodou je, že na internete môžu byť zverejnené riešenia vašich úloh alebo podobných úloh, preto je potrebné mať niekoľko variantov a občas prichádzať s novými úlohami. Ak potrebujete otestovať rýchlosť reakcie a prehľad, osobne volím testy na čas (metóda č. 2).
7. Skontrolovať portfólio, príklady kódu, verejné repozitáre kandidáta
Toto je snáď najzrozumiteľnejší spôsob overenia kompetencií, za predpokladu, že vaši kandidáti majú portfólio a vo vašom tíme výberu sú odborníci schopní oceniť portfólio.
Ako realizovať
Skúmame životopisy kandidátov. Ak nájdeme odkazy na portfóliá, preskúmame ich. Ak v životopise nie sú uvedené odkazy na portfólio, žiadame kandidáta o portfólio.
V akých prípadoch používam tento spôsob
V mojej praxi sa tento spôsob používal veľmi zriedka. Zriedka sa v portfóliách kandidátov nachádzajú práce na požadovanú tému. Skúsení kandidáti často uprednostňujú tento prístup pred typickým a nezaujímavým testovacím úlohou. Hovoria - "pozrite si môj rep, tam sú desiatky príkladov mojich riešení rôznych úloh, uvidíte, ako píšem kód."
Výhody
Šetrí sa čas kandidátov. V prípade, že vaša odborná tím má čas, je možné rýchlo a bez komunikácie s kandidátmi vylúčiť nevhodných. Kým náborár hľadá kandidátov, jeho kolega hodnotí portfóliá. Práca tak prebieha dosť rýchlo a paralelne.
Nevýhody
Tento spôsob nie je možné použiť pre všetky IT profesie. Na hodnotenie portfólia je potrebné mať rozvinuté zručnosti. Ak nie ste špecialista, nebudete schopní kvalitne ohodnotiť portfólio.
Kolegovia, pozývam vás na diskusiu o prečítanom v komentároch. Podeľte sa, aké ďalšie spôsoby rýchlej kontroly kompetencií používate?
Zdroj: habr.com
