Afirmam într-un articol anterior că din punctul de vedere al unui candidat inteligent, interviul este un proces în care şi angajatorul generează impresii. S-a încetăţenit atitudinea că intervievatorul creează un cadru academic clasic, în care intervievatul se poziţionează într-o postură de inferioritate, similară cu cea a studentului în sesiune. Odată cu evoluţia mecanismelor sociale, s-a creat un echilibru, care transformă interviul într-un proces proactiv de tip win-win.
Spre deosebire de alte domenii, IT-ul are o rată de progres extrem de accelerată, fapt care obligă specialiştii să studieze în permanență. Transpus în alţi termeni, un developer bun se află într-o cursă continuă de asimilare de noi cunoștințe, dar în acelaşi timp trebuie să îşi realizeze și sarcinile de lucru. Prefigurând R&D, standardul dezvoltatorului modern s-a transformat în L&D (learning and developement). Practic, viaţa unui developer bun este un permanent megatlon tehnic.
Evoluţia tehnologică software în perioada '95-2005 avea un ritm diferit, tehnologiile erau dezvoltate doar de marii furnizori, - Microsoft, Borland, IBM, care dominau piaţă. Începutul de secol a fost întâmpinat de diverşi terţi cu o atitudine proactivă, astfel că spre sfârşitul primului cincinal au început să apară diverse componente dezvoltate de alţi furnizori. Perioada 2005-2010 a generat o adevărată explozie de tehnologie creată de terţi. Spre finele anilor 2015-16, viaţa unui developer a început să se transforme într-o adevărată competiţie de tip L&D. În prezent, doar developerii cu o capacitate excelentă de studiu, cât şi de lucru pot să se ridice la standardele pieţei de IT.
Pentru a crea un cadru de discuţie, voi defini câteva concepte. Cunoștințele pe care le deţine un developper le-aş numi simplu know-how net, în timp ce spectrul de cunoștințe brut l-aş defini ca fiind suma dintre capacitatea sa de asimilare, adaptare la noile tehnologii şi know how-ul net.
Interviurile pot fi o sarcina extrem de complexă pentru o companie responsabilă, care îşi construieşte cu grijă imaginea pe piaţă. Există o tensiune destul de mare în selectarea candidaţilor compatibili cu valorile corporatiste (am definit conceptul în articolul anterior) şi know-how-ul candidatului. Majoritatea interviurilor, pe care le-am întâlnit pe piaţă locală, se axează pe o paradigmă academică în care accentul absolut cade pe know-how-ul net. Candidatul este selectat în funcție de criteriul capacităţii de reproducere a cunoştinţelor sale, potenţialul de asimilare al acestuia rămânând un element în afara spectrului de discuţii. Cu alte cuvinte tot ce contează pentru un intervievator obişnuit este know-how-ul net, componenta de learning fiind ignorată.
Lordul britanic Alan Sugar, devenit deja celebru pentru nenumăratele sale interviuri redate pe posturile BBC (emisiunea "you're hired"), abordează interviurile dintr-o paradigmă complet diferită. Cu siguranţă know-how-ul net rămâne un reper important, în schimb lucrurile nu se opresc aici. Există o gamă largă de calităţi pe care trebuie să le deţină un candidat bun, dincolo de know-how-ul net. Pasiunea este un prim reper important pe care lordul britanic o accentuează. Un angajat cu un bagaj de cunoștinţe robuste nu este neapărat un angajat bun, o persoană care poate desfăşura o activitate proactivă. Am întâlnit multe situaţii în care candidaţi cu un număr impresionant de diplome să se dovedească a fi incompatibili la capitolul adaptare, evoluţie, creativitate, rezolvare de probleme, lucru în echipa. Pasiunea ocupă un loc important în angrenajul evolutiv al unui developer. Fără pasiune, capacitatea de învăţare şi adaptare la nou se poziţionează pe o treaptă inferioară. Aş spune că pasiunea este ecosistemul unui developer bun.
Elementul distinctiv al unui candidat pasionat este, pe de o parte, reprezentat de o amplă activitate extra job-time de dezvoltare de proiecte individuale. Mulţi candidaţi intervievaţi îşi limitau întreg spectrul cunoştinţelor lor la "ce au făcut la job". Din punctul meu de vedere, un astfel de candidat, chiar dacă are o capacitate de redare a cunoştinţelor foarte bună şi poate răspunde la multe întrebări, nu se ridică la un nivel de excelenţă. Cultură corporatistă Siemens încurajează spiritul antreprenorial, ingeniozitatea, inovativitatea. Paradoxal, developerul clasic format într-un mediu rigid se simte complet lipsit de confort într-un mediu dominat de mediul antreprenoial. Ingeniozitatea, creativitatea, proactivitatea nu sunt elemente din toolboxul lui zilnic.
Elementele targetate într-un interviu sunt indicatori definitorii ai viitoarei activităţi din cadrul respectivei companii. Un intervievator poate sugera două piste complementare unui candidat. Pe de o parte descrie politică companiei ca fiind una de dezvoltare, care permite manifestarea spiritului inovativ, pe de altă parte, fluxul de întrebări se centrează doar în jurul know-how-ului net. A te asigura doar de prezența unui volum de informaţie netă, fără a te concentra pe capacitatea inovativă este o greşeală care permite unui candidat abil să simtă antinomia procesului de intervievare. Convergenţa fluxului de întrebări trebuie să coincidă cu descrierea obiectivelor anunţate de intervievator.Un alt exemplu de incoerenţă se manifestă între prezentarea mediului companiei drept unul favorabil creativității și atitudinea dominantă a intervievatorului, obstructivă, în care se subliniază cu majuscule doar lipsurile candidatului. O astfel de antinomie defineşte, fără dubii, faptul că poziţia vacantă nu se încadrează în rândul celor care au nevoie de un candidat cu spirit creativ. Creativitatea în sine, nu este o calitate care se poate manifestă într-un cadru agresiv, superioritatea impulsivă fiind de fapt o pârghie cu rol inhibitor.
Este extrem de important ca toate elementele prezentate de echipa de intervievatori să conveargă, contradicţiile directe sau indirecte, indicând existenţa unor procese din background care străpung autocenzura persoanelor de faţă.
Strategiile de intervievare dozează ingredientele în funcţie de experienta membrilor participanţi şi de obiectivelor urmărite. Astfel testarea know-how-ului net poate să ocupe o pondere cuprinsă între 70% - 100%. În interviuri, aloc, în medie, 70% pentru testarea cunoştinţelor de bază, restul rămânând testării potenţialului de asimilare de noi cunoștințe, creativitate, inovație.
Cum spuneam în alte articole, formarea profesională a unui developer, în prezent, este compartimentată pe anumite segmente de interes. Avem specialişti în front-end developement, back-end developement, full-stack developement, arhitecţi software, analişti business, manageri de proiect, scrum-masters, project-owners, etc. . Fiecare dintre aceştia au acces doar la un segment bine definit, fiind privaţi de înţelegerea procesului de ansamblu. Chiar dacă sunt performanţi în domeniile lor, nu au o viziune de ansamblu, nu înţeleg dinamica dezvoltării unei aplicaţii ca întreg. Acest aspect aduce avantaje cât şi dezavantaje specifice. În trecut, procesul de proiectare și realizare a unui produs software implica toate compartimentele tehnice, astfel că fiecare developer stăpânea mecanismul de ansamblu, trecând prin toate etapele de dezvoltare. Spre exemplu, persoanele tehnice nu pot înţelege deciziile în multe situaţii limitative din punct de vedere al resurselor de dezvoltare. Nu înţeleg faptul că în multe situaţii arhitectura unui proiect este un compromis între buget şi calitate. Proiectele cu buget limitativ pun accent doar pe viteza de dezvoltare a produsului finit, fără a avea pe agendă aspecte legate de dezvoltarea produsului software în viitor, întreţinere, etc. lucru care este vital pentru un developer. În aceeaşi ordine de idei, o persoană non-tehnică cu greu va înţelege necesităţile dezvoltării unui produs robust, întrucât, în viziunea lui, toate produsele trebuie să fie robuste, indiferent de resursele umane sau financiare alocate. Un front-end developer nu înţelege paradigma unui back-end developer, un back-end developer cu greu va înţelege provocările din segmentului front-end. Toate aceste diferenţe pot influenţa procesul de intervievare mai mult sau mai puţin pozitiv, în funcţie de obiectivul urmărit.
Din punctul meu de vedere, la un interviu tehnic trebuie să participe întotdeauna o persoană cu o viziune de ansamblu bine structurată, astfel ca să se evite pierderea echilibrului procesului de intervievare, prin supra-accentuarea importanţei unor aspecte izolate ale dezvoltării software. De-a lungul carierei am asistat la multe interviuri lipsite de echilibru şi fair-play, lucru care mi-a permis să "arunc" o privire în "bucătăria" companiei respective. Developerii care au participat la un număr mic de proiecte tind să absolutizeze procesul de dezvoltare software, să adapteze necesităţile tehnologice la aplicaţiile realizate, lucru care poate fi limitativ dintr-o perspectivă mai largă.
Un interviu bine realizat, indiferent dacă se incheie cu o tranzacţie între cele două părţi sau nu, este o experienţă motivatoare. Cele mai bune interviuri la care am participat, fie din postura de gazdă, fie de candidat, au rămas ca repere de care mi-am reamintit cu plăcere şi care au constituit experienţe pivotante în viată personală. Interviurile reuşite mi-au dat noi teme de gândire, mi-au adus pe agenda de interes tehnologii care au constituit capitole mari din profilul de developer pe care l-am dezvoltat până în prezent.
Îmi amintesc de un interviu avut cu mai bine de zece ani în urmă, care mi-a trasat o ţintă importantă pe care am încercat să o urmez de-a lungul anilor. Întrebarea viza realizarea mea profesională de top (what was your master-piece?) în cariera de developer. Majoritatea programatorilor îşi construiesc profilul în jurul unor taskuri de pe un board al unor aplicaţii proiectate şi dezvoltate de alte echipe, astfel realizările de top ale majorităţii gravitează în jurul creării unor funcţionalităţi software, în cadrul unor proiecte. Realizarea unui master-piece implică proiectarea şi dezvoltarea unor aplicaţii de succes, în care rolul developerului este major, atât la nivel arhitectural, analiză business, relaţii şi negocieri cu clientul, cât şi la dezvoltarea de caracteristici software.
Am întâlnit şi foarte multe interviuri de o calitate reproşabilă. Cele cu un caracter mai puţin profesional nu ţinteau nici un scop nobil, ci erau adevărate sesiuni de defulare din partea echipei de intervievare. Pericolul unor interviuri neprofesionale este că pot deveni o anti-reclamă de amploare firmei respective. Calibrarea interviurilor trebuie să fie făcută cu multă atenţie, astfel că un candidat mai puţin pregătit să rămână cu o impresie de profesionalism, atât la nivel tehnic, cât şi la nivel de diplomaţie. Iar candidaţii compatibili să fie motivaţi să îşi aducă un aport maxim la evoluţia departamentului, încă din primul moment.