Kiel malsovaĝigi junulon?

Kiel eniri grandan kompanion se vi estas juna? Kiel dungi decan junulon se vi estas granda firmao? Sub la tranĉo, mi rakontos al vi nian historion pri dungado de komencantoj ĉe la antaŭa fino: kiel ni laboris per testaj taskoj, prepariĝis por fari intervjuojn kaj konstruis mentoran programon por la disvolviĝo kaj aliĝo de novuloj, kaj ankaŭ kial normaj intervjuaj demandoj ne faras. ne funkcias.

Kiel malsovaĝigi junulon?
Mi provas malsovaĝigi Junioron

Saluton! Mi nomiĝas Pavel, mi faras antaŭfinan laboron en la teamo Wrike. Ni kreas sistemon por projekt-administrado kaj kunlaboro. Mi laboras en la reto ekde 2010, laboris 3 jarojn eksterlande, partoprenis en pluraj start-entreprenoj kaj instruis kurson pri retaj teknologioj en la universitato. Ĉe la kompanio, mi okupiĝas pri la disvolviĝo de teknikaj kursoj kaj la programo de mentorado de Wrike por junuloj, kaj ankaŭ rekte varbado de ili.

Kial ni eĉ pensis pri dungado de junuloj?

Ĝis antaŭ nelonge, ni rekrutis mezajn aŭ altnivelajn programistojn por la fasado - sufiĉe sendependaj por fari produktajn taskojn post enŝipiĝo. Komence de ĉi tiu jaro, ni komprenis, ke ni volas ŝanĝi ĉi tiun politikon: dum la jaro la nombro de niaj produktaj teamoj preskaŭ duobliĝis, la nombro da antaŭfinaj programistoj alproksimiĝis al cent, kaj en la proksima estonteco ĉio ĉi estos. devas denove duobliĝi. Estas multe da laboro, malmultaj liberaj manoj, kaj estas eĉ malpli da ili sur la merkato, do ni decidis turni sin al la uloj, kiuj ĵus komencas sian vojaĝon en la antaŭa fino kaj rimarkis, ke ni pretas investi en ilia. evoluo.

Kiu estas junulo?

Ĉi tiu estas la unua demando, kiun ni faris al ni mem. Estas malsamaj kriterioj, sed la plej simpla kaj plej komprenebla principo estas ĉi tiu:

Junior devas esti klarigita kian funkcion kaj kiel fari ĝin. La Mezo devas esti klarigita, kian funkcion oni bezonas, kaj li mem eltrovos la efektivigon. La sinjoro mem klarigos al vi kial ĉi tiu funkcio tute ne bezonas esti farita.

Unu maniero aŭ alia, junulo estas programisto, kiu bezonas konsilojn pri kiel efektivigi ĉi tiun aŭ alian solvon. Sur kio ni decidis konstrui:

  1. Junior estas iu, kiu volas disvolviĝi kaj pretas labori forte por ĉi tio;
  2. Li ne ĉiam scias, en kiu direkto li volas disvolviĝi;
  3. Bezonas konsilojn kaj serĉas helpon de ekstere - de sia gvidanto, mentoro aŭ en la komunumo.

Ni ankaŭ havis plurajn hipotezojn:

  1. Estos ŝtormo de respondoj al la pozicio de junio. Vi devas filtri hazardajn respondojn ĉe la etapo de sendado de via vivresumo;
  2. Primara filtrilo ne helpos. — necesas pli da testtaskoj;
  3. Testaj taskoj fortimigos ĉiujn - ili ne estas bezonataj.

Kaj kompreneble ni havis celon: 4 junuloj en 3 semajnoj.

Kun ĉi tiu konstato ni komencis eksperimenti. La plano estis simpla: komencu per la plej larĝa funelo ebla kaj provu iom post iom malvastigi ĝin por ke vi povu prilabori la fluon, sed ne redukti ĝin al 1 kandidato semajne.

Ni afiŝas vakanton

Por la kompanio: Estos centoj da respondoj! Pensu pri filtrilo.

Por juniora: Ne timu la demandaron antaŭ ol sendi vian vivresumon kaj testan taskon - ĉi tio estas signo, ke la kompanio prizorgis vin kaj bone aranĝis la procezon.

En la unua tago, ni ricevis ĉirkaŭ 70 vivresumojn de kandidatoj "kun scio pri JavaScript." Kaj poste denove. Kaj plu. Ni fizike ne povis inviti ĉiujn al la oficejo por intervjuo kaj elektis el ili la ulojn kun la plej bonegaj dorlotbestaj projektoj, viva Github, aŭ almenaŭ sperto.

Sed la ĉefa konkludo, kiun ni faris por ni mem en la unua tago, estis, ke la ŝtormo komenciĝis. Nun estas la tempo aldoni demandaran formularon antaŭ sendi vian vivresumon. Ŝia celo estis forigi kandidatojn, kiuj ne volis fari la minimuman penon por sendi vivresumon, kaj tiujn, kiuj ne havis la scion kaj kuntekston por almenaŭ Guglo la ĝustajn respondojn.

Ĝi enhavis normajn demandojn pri JS, aranĝo, retejo, Komputiko - ĉiuj, kiuj imagas, kion ili demandas ĉe antaŭa intervjuo, konas ilin. Kio estas la diferenco inter let/var/const? Kiel mi povas apliki stilojn nur al ekranoj pli malgrandaj ol 600px larĝaj? Ni ne volis demandi ĉi tiujn demandojn ĉe teknika intervjuo - praktiko montris, ke ili povas esti responditaj post 2-3 intervjuoj sen kompreni evoluon. Sed ili povis komence montri al ni, ĉu la kandidato principe komprenas la kuntekston.

En ĉiu kategorio, ni preparis 3-5 demandojn kaj tagon post tago ni ŝanĝis ilian aron en la respondformularo ĝis ni forigis la plej aprobeblajn kaj la plej malfacilajn. Ĉi tio permesis al ni redukti la fluon - en 3 semajnoj ni ricevis 122 kandidatoj, kun kiu ni povus labori plu. Ĉi tiuj estis IT-studentoj; uloj kiuj volis movi al la fronto de la malantaŭo; laboristoj aŭ inĝenieroj, 25-35-jaraj, kiuj radikale volis ŝanĝi sian okupon kaj meti diversajn penojn en memedukadon, kursojn kaj staĝojn.

Pli bone koni unu la alian

Por la kompanio: La testtasko ne malhelpas kandidatojn, sed helpas mallongigi la funelon.

Por juniora: Ne kopiu-algluu testajn - ĝi estas rimarkebla. Kaj konservu vian github en ordo!

Se ni vokus ĉiujn por teknika intervjuo, ni devus fari ĉirkaŭ 40 intervjuojn semajne nur por junuloj kaj nur ĉe la antaŭa parto. Tial ni decidis testi la duan hipotezon - pri la testtasko.

Kio estis grava por ni en la testo:

  1. Konstruu bonan skaleblan arkitekturon, sed sen troinĝenierado;
  2. Pli bone estas preni pli longe, sed faru ĝin bone, ol kunmeti metiaĵon subite kaj sendi ĝin kun la komento "Mi certe finos ĝin";
  3. La historio de evoluo en Git estas la inĝenieristika kulturo, ripeta evoluo kaj la fakto, ke la solvo ne estis evidente kopiita.

Ni konsentis, ke ni volis rigardi unu algoritman problemon kaj malgrandan TTT-aplikaĵon. Algoritmaj estis preparitaj je nivelo de elementnivelaj laboratorioj - duuma serĉado, ordigo, kontrolado de anagramoj, laborado kun listoj kaj arboj. Al la fino, ni decidis por binara serĉo kiel unua prova opcio. La TTT-aplikaĵo devis esti tic-tac-toe uzante ajnan kadron (aŭ sen ĝi).

Preskaŭ duono de la ceteraj uloj plenumis la testtaskon - ili sendis al ni la solvojn 54 kandidatoj. Nekredebla kompreno - kiom da efektivigoj de tic-tac-toe, pretaj por kopii-alglui, ĉu vi pensas, ke ekzistas en la Interreto?

Kiom da?Fakte ŝajnas, ke estas nur 3. Kaj en la granda plimulto de decidoj estis ĝuste ĉi tiuj 3 ebloj.
Kion mi ne ŝatis:

  • kopii-alglui, aŭ disvolviĝo bazita sur la sama lernilo sen via propra arkitekturo;
  • ambaŭ taskoj estas en la sama deponejo en malsamaj dosierujoj, kompreneble ne ekzistas commit-historio;
  • malpura kodo, SEKA malobservo, manko de formatado;
  • miksaĵo de modelo, vido kaj regilo en unu klason centojn da kodlinioj longaj;
  • manko de kompreno de unutestado;
  • "fronta" solvo estas malmola kodo de 3x3 matrico de venkaj kombinaĵoj, kiuj estos sufiĉe malfacile ekspansiiĝi ​​al 10x10, ekzemple.

Ni ankaŭ atentis najbarajn deponejojn - bonegaj dorlotbestaj projektoj estis pluso, kaj amaso da testaj taskoj de aliaj kompanioj estis pli vekvoko: kial la kandidato ne povis atingi tien?

Kiel rezulto, ni trovis bonegajn eblojn en React, Angular, Vanilla JS - estis 29. Kaj ni decidis inviti unu plian kandidaton sen testi por liaj tre bonegaj dorlotbestaj projektoj. Nia hipotezo pri la avantaĝoj de testaj taskoj estis konfirmita.

Teknika intervjuo

Por la kompanio: Ne mezaj/aĝuloj venis al vi! Ni bezonas pli individuan aliron.

Por juniora: Memoru, ke ĉi tio ne estas ekzameno - ne provu silenti por C aŭ bombadi la profesoron per fluo de ĉiuj viaj eblaj scio, por ke li konfuziĝas kaj donu "bonegan".

Kion ni volas kompreni en teknika intervjuo? Simpla afero - kiel pensas la kandidato. Li verŝajne havas kelkajn malfacilajn kapablojn, se li trapasis la unuajn etaĝojn de elekto - restas vidi ĉu li scias kiel uzi ilin. Ni interkonsentis pri 3 taskoj.

La unua temas pri algoritmoj kaj datumstrukturoj. Per plumo, sur papero, pseŭdolingve kaj helpe de desegnaĵoj ni eksciis kiel kopii arbon aŭ kiel forigi elementon el unuope ligita listo. La malagrabla malkovro estis, ke ne ĉiuj komprenas rikurson kaj kiel referencoj funkcias.

La dua estas viva kodigo. Ni iris al codewars.com, elektis simplajn aferojn kiel ordigi tabelon de vortoj laŭ la lasta litero kaj dum 30-40 minutoj kune kun la kandidato provis igi ĉiujn testojn trapasi. Ŝajnis, ke ne devus esti surprizoj de la uloj, kiuj majstris la piedfingron - sed praktike, ne ĉiuj povis rimarki, ke la valoro devas esti stokita en variablo, kaj la funkcio devas redoni ion per reveno. Kvankam mi sincere esperas, ke ĝi estis tremo, kaj la infanoj povis trakti ĉi tiujn taskojn en pli malpezaj kondiĉoj.

Fine, la tria temas iomete pri arkitekturo. Ni diskutis kiel fari serĉbreton, kiel funkcias debonce, kiel redoni diversajn fenestraĵojn en serĉkonsiletoj, kiel la antaŭa finaĵo povas interagi kun la malantaŭa fino. Estis multaj interesaj solvoj, inkluzive de servilflanka bildigo kaj interretaj ingoj.

Ni faris 21 intervjuojn uzante ĉi tiun dezajnon. La publiko estis tute diversa - ni rigardu bildstriojn:

  1. "Raketo". Li neniam trankviliĝas, okupiĝas pri ĉio, kaj dum intervjuo li superŝutos vin per fluo de pensoj, kiuj eĉ ne rekte rilatas al la demando farita. Se ĝi estus en universitato, ĉi tio estus konata provo pruvi, nu, vian tutan scion, kiam ĉio, kion vi memoras pri la bileto, kiun vi renkontis, estas, ke hieraŭ nokte vi decidis ne studi ĝin - vi ankoraŭ ne povas akiri. ĝi eksteren.
  2. "Groot". Estas sufiĉe malfacile kontakti lin ĉar li estas Groot. Dum intervjuo, vi devas pasigi longan tempon provante ricevi respondojn vorto post vorto. Estas bone, se ĝi estas nur stuporo - alie ĝi estos tre malfacila por vi en via ĉiutaga laboro.
  3. "Drax". Mi kutimis labori en kargotransportado, kaj pri programado mi nur lernis JS ĉe Stackoverflow, do mi ne ĉiam komprenas, kio estas diskutata ĉe intervjuo. Samtempe, li estas bona homo, havas la plej bonajn intencojn kaj volas fariĝi bonega ellaboranto.
  4. Nu, verŝajne "Stelsinjoro". Ĝenerale, bona kandidato kun kiu vi povas negoci kaj konstrui dialogon.

Je la fino de nia esploro 7 kandidatoj atingis la finalon, konfirmante siajn malfacilajn kapablojn per bonega testtasko kaj bonaj respondoj al la intervjuo.

Kultura taŭga

Por la kompanio: Vi laboras kun li! Ĉu la kandidato pretas ege labori por sia evoluo? Ĉu li vere taŭgas en la teamon?

Por juniora: Vi laboras kun ili! Ĉu la kompanio vere pretas investi en la kresko de junuloj, aŭ ĉu ĝi simple forĵetos al vi la tutan malpuran laboron por malalta salajro?

Ĉiu junulo, krom la produktteamo, kies antaŭeco devas konsenti preni lin, ricevas mentoron. La tasko de la mentoro estas gvidi lin tra tri-monata procezo de enŝipiĝo kaj ĝisdatigo de malfacilaj kapabloj. Tial ni venis al ĉiu kultura taŭga kiel mentoroj kaj respondis la demandon: "Ĉu mi prenos respondecon por disvolvi kandidaton en 3 monatoj laŭ nia plano?"

Ĉi tiu etapo pasis sen iuj specialaj trajtoj kaj finfine alportis nin 4 proponoj, 3 el kiuj estis akceptitaj, kaj la uloj membrigis la teamojn.

Vivo post la oferto

Por la kompanio: Prizorgu viajn junulojn aŭ aliaj volos!

Por juniora: AAAAAAAAAAA!!!

Kiam nova dungito eliras, li devas esti enŝipigita - ĝisdatigita kun la procezoj, rakontita kiel ĉio funkcias en la firmao kaj en la teamo, kaj kiel li devus labori ĝenerale. Kiam junulo eliras, vi devas kompreni kiel disvolvi lin.

Kiam ni pensis pri tio, ni elpensis liston de 26 kapabloj, kiujn, laŭ nia opinio, junulo devus havi antaŭ la fino de la trimonata enŝipiĝoperiodo. Ĉi tio inkludis malfacilajn kapablojn (laŭ nia stako), scion pri niaj procezoj, Scrum, infrastrukturon kaj projektarkitekturon. Ni kombinis ilin en vojmapon, distribuitan dum 3 monatoj.

Kiel malsovaĝigi junulon?

Ekzemple, jen la vojmapo de mia junulo

Ni asignas mentoron al ĉiu junulo, kiu laboras kun li individue. Depende de la mentoro kaj la nuna nivelo de la kandidato, renkontiĝoj povas okazi de 1 ĝis 5 fojojn semajne dum 1 horo. Mentoroj estas volontulaj antaŭfinaj programistoj, kiuj volas fari ion pli ol nur skribi kodon.

Kelkaj el la ŝarĝo de mentoroj estas forigitaj de kursoj sur nia stako - Sageto, Angula. Kursoj okazas regule por grupetoj de 4-6 homoj, kie studentoj studas sen interrompo de laboro.

Dum 3 monatoj, ni periode kolektas komentojn de junuloj, iliaj mentoroj kaj gvidantoj kaj ĝustigas la procezon individue. La pumpitaj kapabloj estas kontrolitaj 1-2 fojojn dum la tuta periodo, la sama kontrolo estas farita ĉe la fino - surbaze de ili, rekomendoj estas formitaj pri tio, kio precize devas esti plibonigita.

konkludo

Por la kompanio: Ĉu indas investi en junuloj? Jes!

Por juniora: Serĉu kompaniojn, kiuj zorge elektas kandidatojn kaj scias kiel disvolvi ilin

Dum 3 monatoj, ni reviziis 122 demandarojn, 54 testajn taskojn kaj faris 21 teknikajn intervjuojn. Ĉi tio alportis al ni 3 bonegajn junulojn, kiuj nun kompletigis duonon de siaj enŝipiĝaj kaj akcelaj vojmapoj. Ili jam kompletigas verajn produktajn taskojn en nia projekto, kie estas pli ol 2 linioj de kodo kaj pli ol 000 deponejoj nur ĉe la fronto.

Ni eksciis, ke la funelo por junuloj povas kaj devas esti sufiĉe kompleksa, sed finfine nur tiuj uloj, kiuj vere pretas labori tre malfacile kaj investi en sia evoluo, trapasas ĝin.

Nun nia ĉefa tasko estas kompletigi tri-monatajn evoluajn vojmapojn por ĉiu junulo en la maniero de individua laboro kun mentoro kaj ĝeneralaj kursoj, kolekti metrikojn, komentojn de gvidantoj, mentoroj kaj la uloj mem. Je ĉi tiu punkto, la unua eksperimento povas esti konsiderata finita, konkludoj povas esti desegnitaj, la procezo povas esti plibonigita kaj ĝi povas esti komencita denove elekti novajn kandidatojn.

fonto: www.habr.com

Aldoni komenton