Cumu entre in una grande cumpagnia sè site junior? Cumu impiegà un junior decentu sè site una grande cumpagnia? Sottu à u tagliu, vi cuntaraghju a nostra storia di assunzione di principianti in u front end: cumu avemu travagliatu cù i travaglii di prova, preparatu per fà interviste è custruitu un prugramma di mentoring per u sviluppu è l'inserimentu di i novi arrivati, è ancu perchè e dumande standard di intervista ùn travaglia micca.
Aghju pruvatu à ammansà Junior
Bonghjornu! Mi chjamu Pavel, facciu un travagliu front-end in a squadra Wrike. Creemu un sistema per a gestione di u prughjettu è a cullaburazione. Aghju travagliatu nantu à u web dapoi u 2010, hà travagliatu per 3 anni à l'esteru, hà participatu à parechje startups è hà insignatu un cursu di tecnulugia web à l'università. À a cumpagnia, sò implicatu in u sviluppu di i corsi tecnichi è u prugramma di mentoring Wrike per i juniors, è ancu di reclutà direttamente.
Perchè avemu ancu pensatu à l'assunzione di juniors ?
Finu à pocu tempu, avemu reclutatu sviluppatori di livellu mediu o senior per u frontend - abbastanza indipendenti per fà i travaglii di produttu dopu l'imbarcu. À l'iniziu di questu annu, avemu capitu chì vulemu cambià sta pulitica: annantu à l'annu u numeru di i nostri squadre di produttu hè quasi radduppiatu, u numeru di sviluppatori front-end hè avvicinatu à centu, è in un futuru vicinu tuttu questu serà. duverà duppià di novu. Ci hè assai di travagliu, pochi mani libere, è ci sò ancu menu di elli nantu à u mercatu, cusì avemu decisu di vultà à i picciotti chì sò appena principiatu u so viaghju in u front-end è capitu chì simu pronti à investisce in u so. sviluppu.
Quale hè un junior?
Questa hè a prima dumanda chì avemu dumandatu. Ci sò criteri diffirenti, ma u principiu più simplice è più comprensibile hè questu:
Junior deve esse spiegatu quale funziunalità è cumu fà. U Mediu deve esse spiegatu quale funziunalità hè necessariu, è ellu hà da capisce l'implementazione stessu. U signore stessu vi spiegherà perchè sta funzione ùn deve esse fatta in tuttu.
In un modu o l'altru, un junior hè un sviluppatore chì hà bisognu di cunsiglii nantu à cumu implementà questa o quella suluzione. Ciò chì avemu decisu di custruisce:
- Junior hè qualchissia chì vole sviluppà è hè pronta à travaglià dura per questu;
- Ùn sà micca sempre in quale direzzione vole sviluppà;
- Hà bisognu di cunsiglii è cerca aiutu da l'esternu - da u so capu, mentore o in a cumunità.
Avemu ancu avutu parechje ipotesi:
- Ci sarà una tempesta di risposti à a pusizione di ghjugnu. Avete bisognu di filtrà risposte aleatorii in u stadiu di mandà u vostru curriculum vitae;
- Un filtru primariu ùn aiuta micca. - sò necessarii più travaglii di prova;
- I travaglii di prova spaventaranu tutti - ùn sò micca bisognu.
E di sicuru, avemu avutu un scopu: 4 juniors in 3 settimane.
Cù sta realizazione avemu cuminciatu à sperimentà. U pianu era simplice: principià cù u funnel più largu pussibule è pruvate à ristrettu gradualmente in modu chì pudete processà u flussu, ma micca riduce à 1 candidatu à settimana.
Publicemu un vacante
Per a cumpagnia: Ci saranu centinaie di risposte ! Pensate à un filtru.
Per junior: Ùn àbbia paura di u questionnaire prima di mandà u vostru curriculum vitae è l'assignazione di teste - questu hè un signu chì a cumpagnia hà pigliatu cura di voi è hà stabilitu u prucessu bè.
U primu ghjornu, avemu ricevutu circa 70 curriculum vitae da i candidati "cun cunniscenza di JavaScript". E poi di novu. È più in là. Ùn pudemu micca invià fisicamente à tutti à l'uffiziu per una entrevista è hà sceltu da elli i ragazzi cù i prughjetti di animali più belli, Github in diretta, o almenu sperienza.
Ma a cunclusione principale chì avemu fattu per noi stessu in u primu ghjornu era chì a tempesta avia cuminciatu. Avà hè u tempu di aghjunghje una forma di questionnaire prima di mandà u vostru curriculum vitae. U so scopu era di scaccià i candidati chì ùn eranu micca disposti à mette in u minimu sforzu per invià un curriculum vitae, è quelli chì ùn avianu micca a cunniscenza è u cuntestu per almenu Google e risposte currette.
Conteneva dumande standard nantu à JS, layout, web, Computer Science - tutti quelli chì imaginanu ciò chì dumandanu in una entrevista di front-end li cunnosci. Chì ghjè a diffarenza trà let/var/const? Cumu possu applicà stili solu à schermi più chjuchi di 600px di larghezza? Ùn vulemu dumandà queste dumande in una entrevista tecnica - a pratica hà dimustratu chì ponu esse risposti dopu à l'entrevista 2-3 senza capisce u sviluppu à tuttu. Ma sò stati capaci di vede inizialmente se u candidatu, in principiu, capisce u cuntestu.
In ogni categuria, avemu preparatu 3-5 dumande è ghjornu dopu ghjornu avemu cambiatu u so settore in a forma di risposta finu à chì avemu eliminatu u più passable è u più difficiule. Questu ci hà permessu di riduce u flussu - in 3 settimane avemu ricevutu 122 candidati, cù quale pudemu travaglià più. Quessi eranu studienti IT; ragazzi chì vulianu passà à u fronte da u backend; travagliadori o ingegneri, 25-35 anni, chì vulianu radicalmente cambià a so occupazione è mettenu diversi sforzi in l'autoeducazione, i corsi è i stage.
Cunniscite megliu
Per a cumpagnia: U compitu di teste ùn impedisce micca i candidati, ma aiuta à accurtà u funnel.
Per junior: Ùn copià-incollà i testi - hè notevuli. È mantene u vostru github in ordine!
Se chjamemu tutti per una entrevista tecnica, avemu da fà circa 40 entrevista à settimana solu per i juniors è solu in u front end. Dunque, avemu decisu di pruvà a seconda ipotesi - nantu à u travagliu di prova.
Ciò chì era impurtante per noi in a prova:
- Custruisce una bona architettura scalabile, ma senza overengineering;
- Hè megliu piglià più longu, ma fate bè, cà di mette inseme un craft per a notte è mandà cù u cummentariu "Aghju definitivamente finitu";
- A storia di u sviluppu in Git hè a cultura di l'ingegneria, u sviluppu iterativu è u fattu chì a suluzione ùn hè stata copiata in modu sfarente.
Avemu accunsentutu chì vulemu guardà un prublema algoritmicu è una piccula applicazione web. Quelli algoritmichi sò stati preparati à u livellu di i laboratorii elementari - ricerca binaria, sorte, verificazione di anagrammi, travagliendu cù listi è arburi. In fine, avemu stallatu nantu à a ricerca binaria cum'è una prima opzione di prova. L'applicazione web deve esse tic-tac-toe usendu qualsiasi framework (o senza).
Quasi a mità di l'altri ragazzi anu finitu u compitu di prova - ci anu mandatu e soluzioni 54 candidati. Insight incredibile - quante implementazioni di tic-tac-toe, pronta per copia-incolla, pensate chì ci sò in Internet?
Quante?In fatti, pare chì ci sò solu 3. È in a maiò parte di e decisioni ci era precisamente questi 3 opzioni.
Ciò chì ùn mi piace micca:
- copia-incollà, o sviluppu basatu nantu à u listessu tutoriale senza a vostra propria architettura;
- tramindui i travaglii sò in u stessu repository in diverse cartulari, di sicuru ùn ci hè micca una storia di commit;
- codice bruttu, violazione DRY, mancanza di furmatu;
- una mistura di mudellu, vista è controller in una classa centinaie di linee di codice longu;
- mancanza di capiscitura di teste di unità;
- una suluzione "head-on" hè un hardcode di una matrice 3x3 di cumminzioni vincenti, chì serà abbastanza difficiuli di espansione à 10x10, per esempiu.
Avemu ancu prestatu attenzione à i repositori vicini - i prughjetti di l'animali freschi eranu un plus, è una mansa di travaglii di teste da altre cumpagnie eranu più di una sveglia: perchè u candidatu ùn pudia micca ghjunghje?
In u risultatu, avemu truvatu opzioni interessanti in React, Angular, Vanilla JS - ci era 29. È avemu decisu d'invià un candidatu più senza pruvà per i so prughjetti di animali assai cool. A nostra ipotesi nantu à i benefici di i travaglii di teste hè stata cunfirmata.
Entrevista tecnica
Per a cumpagnia: Ùn sò micca i medii / anziani chì sò ghjunti à voi ! Avemu bisognu di un approcciu più individuale.
Per junior: Ricurdativi chì questu ùn hè micca un esame - ùn pruvate micca di stà in silenziu per un C o bombarde u prufessore cù un flussu di tutte e vostre cunniscenze pussibuli per ch'ellu si cunfonda è dà un "eccellente".
Chì vulemu capisce in una entrevista tecnica? Una cosa simplice - cumu pensa u candidatu. Hè prubabilmente hà qualchì capacità dura s'ellu hà passatu i primi tappe di selezzione - resta à vede s'ellu sapi cumu aduprà. Avemu accunsentutu nantu à 3 tarei.
U primu hè di l'algoritmi è e strutture di dati. Cù una penna, nantu à un pezzu di carta, in pseudo-lingua è cù l'aiutu di disegni, avemu capitu cumu copià un arbre o cumu per sguassà un elementu da una lista ligata singolarmente. A scuperta dispiacevule era chì micca tutti capiscenu a ricursione è cumu travaglianu e referenze.
U sicondu hè a codificazione in diretta. Avemu andatu à
Infine, u terzu hè un pocu di l'architettura. Avemu discututu cumu fà una barra di ricerca, cumu funziona u debounce, cumu rende diversi widgets in cunsiglii di ricerca, cumu u front-end pò interagisce cù u back-end. Ci era parechje suluzioni interessanti, cumpresi a rendering di u servitore è i sockets web.
Avemu realizatu 21 entrevista cù stu disignu. U publicu era cumplettamente diversu - fighjemu i fumetti:
- "Rocket". Ùn si calmu mai, s'implica in tuttu, è durante una entrevista vi sopravvive cù un flussu di pinsamenti chì ùn sò mancu direttamente direttamente à a quistione dumandata. S'ellu era in una università, questu seria un tentativu familiar di dimustrà, bè, tutte e vostre cunniscenze, quandu tuttu ciò chì vi ricordate di u bigliettu chì avete scontru hè chì l'ultima notte avete decisu di ùn studià micca - ùn pudete micca ancu ottene. fora.
- "Groot". Hè abbastanza difficiule di mette in cuntattu cun ellu perchè ellu hè Groot. Durante una entrevista, avete da passà assai tempu per pruvà à ottene risposte parolla per parolla. Hè bonu s'ellu hè solu un stuporu - altrimente serà assai difficiule per voi in u vostru travagliu di ogni ghjornu.
- "Drax". Aghju travagliatu in u trasportu di carichi, è in quantu à a prugrammazione, aghju amparatu solu JS nantu à Stackoverflow, per quessa ùn capiscu micca sempre ciò chì hè discututu in una entrevista. À u listessu tempu, hè una bona persona, hà u megliu intenzioni è vole diventà un grande sviluppatore front-end.
- Ebbè, probabilmente "Star Lord". In generale, un bonu candidatu cù quale pudete negocià è custruisce un dialogu.
À a fine di a nostra ricerca 7 candidati ghjunghjenu à a finale, cunfirmendu e so cumpetenze dure cù un grande travagliu di prova è boni risposte à l'entrevista.
Fit culturale
Per a cumpagnia: Travagliate cun ellu ! U candidatu hè dispostu à travaglià assai dura per u so sviluppu? Serà veramente intrutu in a squadra ?
Per junior: Travagliate cun elli ! A cumpagnia hè veramente pronta à invistisce in a crescita di i juniors, o serà solu dump tuttu u travagliu bruttu nantu à voi per un salariu bassu?
Ogni junior, in più di a squadra di u produttu, chì a guida deve accunsente à piglià ellu, riceve un mentore. U compitu di u mentore hè di guidàlu attraversu un prucessu di trè mesi di imbarcazione è aghjurnà e cumpetenze dure. Dunque, avemu ghjuntu à ogni forma culturale cum'è mentori è rispunniu à a quistione: "Averaghju a rispunsabilità di sviluppà un candidatu in 3 mesi secondu u nostru pianu?"
Sta tappa passò senza alcuna funziunalità particulari è in fine ci hà purtatu 4 offerte, 3 di quali sò stati accettati, è i picciotti intrinu in e squadre.
A vita dopu l'offerta
Per a cumpagnia: Fate cura di i vostri juniors o l'altri volenu !
Per junior: AAAAAAAAAAA!!!
Quandu un novu impiigatu esce, deve esse integratu - aghjurnatu cù i prucessi, hà dettu cumu tuttu funziona in a cumpagnia è in a squadra, è cumu si deve travaglià in generale. Quandu un junior esce, avete bisognu di capiscenu cumu si sviluppa.
Quandu avemu pensatu à questu, avemu ghjuntu cun una lista di cumpetenze 26 chì, in u nostru parè, un junior duveria avè à a fine di u periodu di imbarcu di trè mesi. Questu includenu cumpetenze dure (sicondu a nostra pila), cunniscenze di i nostri prucessi, Scrum, infrastruttura è architettura di prughjettu. L'avemu cumminatu in una roadmap, distribuita nantu à 3 mesi.
Per esempiu, quì hè a strada di u mo junior
Assignemu un mentore à ogni junior chì travaglia cun ellu individualmente. Sicondu u mentore è u livellu attuale di u candidatu, e riunioni ponu esse da 1 à 5 volte à settimana per 1 ora. I mentori sò sviluppatori di front-end vuluntarii chì volenu fà qualcosa di più cà scrive codice.
Qualchidunu di u pesu nantu à i mentori hè cacciatu da i corsi nantu à a nostra pila - Dart, Angular. I corsi sò tenuti regularmente per picculi gruppi di 4-6 persone, induve i studienti studianu senza interruzzione di u travagliu.
In u corsu di 3 mesi, raccogliemu periodicamente feedback da i juniors, i so mentori è i guida è aghjustemu u prucessu individualmente. E cumpetenze pumped up sò verificate 1-2 volte in tuttu u periodu, u listessu cuntrollu hè realizatu à a fine - basatu nantu à elli, i cunsiglii sò furmati nantu à ciò chì esattamente deve esse migliuratu.
cunchiusioni
Per a cumpagnia: Vale a pena investisce in i juniors ? Iè!
Per junior: Cercà cumpagnie chì selezziunà cun cura i candidati è sapete cumu sviluppà
Più di 3 mesi, avemu rivisu 122 questionarii, 54 compiti di teste è realizatu 21 interviste tecniche. Questu ci hà purtatu 3 grandi juniors chì anu avà finitu a mità di i so roadmaps di l'accelerazione è di l'accelerazione. Sò digià cumpiendu i veri compiti di u produttu in u nostru prughjettu, induve ci sò più di 2 000 000 linee di codice è più di 400 repository in u front end solu.
Avemu scupertu chì u funnel per i juniors pò è deve esse abbastanza cumplessu, ma à a fine solu quelli ragazzi chì sò veramente pronti à travaglià duramente è invistisce in u so sviluppu passanu per ellu.
Avà u nostru compitu principalu hè di cumplettà i roadmaps di sviluppu di trè mesi per ogni junior in u modu di travagliu individuale cù un mentore è corsi generale, cullà metriche, feedback da i guidati, i mentori è i picciotti stessi. À questu puntu, u primu esperimentu pò esse cunsideratu cumpiitu, cunclusioni ponu esse tirati, u prucessu pò esse migliuratu è pò esse principiatu novu per selezziunà novi candidati.
Source: www.habr.com