Screening developera svih nivoa iskustva za otvorenu poziciju je standardna regruterska tehnika, u IT-u kao i u drugim industrijama. Nevezano je li u pitanju testiranje uživo koji se odvija na fizičkoj lokaciji, vremenski limitirani test u online okruženju ili tehnička zadaća, čini da većina senior developera već duže vrijeme aktivno raspravlja o tome jesu li tehnički testovi uopće potrebni za provjeru nivoa znanja i iskustva.
👊👊👊This is my solution in #csharp for the counting inversions problem on @hackerrank👊👊👊
— Glen McCallum (@glenmccallumcan) June 20, 2019
Basically straight up merge sort (which I stole from an old comp sci textbook on my shelf) with a few lines added to handle inversion counting.https://t.co/ZrZEojed4P
Ovo je razumljiva pretpostavka ako su iskusni tech profesionalci u pitanju. Stoga, logično se zapitati da li se potrebno desetogodišnjem dev veteranu s bogatim iskustvom dokazivati kroz (često banalne) testove kodiranja?
Nažalost, ne postoji kategoričan odgovor, jer sve ovisi o mnogo faktora. Ukoliko odbijete bilo koji od dijelova propisanog intervju procesa, vrlo vjerojatno možete očekivati da budete isključeni iz istog. U ovom slučaju zgodno je sebe postaviti u perspektivu regrutera: Zašto biste željeli zaposliti nekoga ko se ne slaže s “industrijskim standardima” procesa regrutiranja?
Ukoliko odbijete pomisao da bilo što kodirate u svrhu testiranja, najvjerovatnije će uslijediti i scenarij isključivanja iz daljeg procesa. To često ukazuje regruteru da ste potencijalno osoba koja će stvoriti probleme oko nečega što je dobro poznata praksa. Pored timskog uklapanja s razinom profesionalnog znanja, kandidat mora pokazati i mogućnost uklapanja u korporativnu kulturu organizacije. Odbijanjem tehničkih testova kandidat odašilje nedvosmisleni feedback po ovom pitanju još mnogo prije potpisivanja ugovora. Bitno je istaknuti da se tehnički testovi ne koriste ekskluzivno za donošenje odluka o zapošljavanju.
Zamislite da se od senior developera traži da razvije binarno stablo grananja tokom testa ili neki sličan nonsens. U tom slučaju, većina regrutera bi prihvatila vašu protuponudu da obavite tehnički test ili određeni oblik tehničkog zadatka od kuće. Umjesto da kategorički kažete “Ja ovo neću raditi”, možda je bolje da reći “Nisam siguran da je ‘test na ploči’ najbolji način da pokažem svoje znanje. Iako razumijem zašto moramo proći ovaj korak, više bi mi odgovaralo obaviti test u obliku mini projekta”. Dobar način rada je predložiti programiranje u parovima. Provesti 1-2 sata dijeleći virtualni prostor s osobom zaduženom za provedbu tehničkog dijela testiranja (CTO ili Team Lead) može dati objema stranama dobar uvid u kompatibilnost. Na taj način lako ćete otkriti način na koji kompanija pristupa zadacima i obratno.
Mnogi regruteri nemaju pripremljene tehničke testove, vrlo vjerovatno zbog toga što ih mrze više nego što senior developeri mrze tehničke testove. Ako ponudite alternativu, možda će i biti moguće postići dobru nagodbu u ovom smislu.
Pored testiranja uživo moguće je da će kompanije odabrati testiranje tehničkog znanja kroz zadatke od kuće ili popularne online testove. Testiranja jedan-na-jedan obično se zasnivaju na davanju zadatka koji se obavlja na računaru u prostoriji gdje se nalazi i regruter. Upute su jasne sa očekivanjem što je potrebno uraditi u jasno zadatom vremenskom roku. Većinom kompanije samo žele saznati posjeduje li kandidat osnovne vještine, u suprotnom test je nemoguće kompletirati u zadanom roku. Ovakvi testovi su dizajnirani da bi se ocijenilo koliko možete postići u ograničenom vremenu.
Naše mišljenje je da su live testovi dobro kompromisno rješenje. Neće ostaviti gorak okus u ustima kao što to čine “testovi na ploči”, a omogućavaju potencijalnom poslodavcu da prepozna ima li kandidat potrebnu kompetentnost. Tehnička zadaća je primamljiv oblik testiranja, ali ima i svoje posebnosti.
Tehnički testovi znanja su vremenski zahtjevni. Budite oprezni ako budete zamoljeni da radite test na platformi koju koristi kompanija. Možda se nekada tražilo od vas pronađete bug, ili kreirate funkcionalnosti na postojećoj aplikaciji ili usluzi? To praktično znači da već radite za kompaniju koja vas pokušava regrutirati.
Kada su u pitanju tehnički zadaci koji se mogu raditi od kuće, pobrinite se da vam ne izmaknu kontroli. Neke kompanije tvrde da vam treba nekoliko sati da ih završite, to odmah znači upozorenje da ćete trebati mnogo više vremena i truda za njihovo uspješno obavljanje. Ukoliko testni projekt omogućava da se kompanija istim služi kasnije u produkciji, ili ako ste zamoljeni da provedete dodatni dan na radu oko zadatka, tada definitivno nije neumjesno tražiti kompenzaciju.
U konačnici, odbijanje bilo kojeg oblika tehničkog testiranja najčešće će okončati proces zapošljavanja. Vi znate svoje vještine, a potencijalni poslodavac želi vidjeti jeste li vi prava osoba za njih ili ne. Idealno rješenje je naći zajedničko stajalište kako bi poslodavac mogao procijeniti što znate, a s druge strane se potruditi da se ne osjećate iskorišteno.