Si të zbutni një junior?

Si të futeni në një kompani të madhe nëse jeni i ri? Si të punësoni një të ri të denjë nëse jeni një kompani e madhe? Më poshtë, unë do t'ju tregoj historinë tonë të punësimit të fillestarëve në pjesën e përparme: si kemi punuar përmes detyrave testuese, të përgatitur për të kryer intervista dhe ndërtuar një program mentorimi për zhvillimin dhe futjen në bord të të sapoardhurve, dhe gjithashtu pse pyetjet standarde të intervistës nuk janë nuk punon.

Si të zbutni një junior?
Po mundohem ta zbut Juniorin

Përshëndetje! Emri im është Pavel, bëj punë të përparme në ekipin Wrike. Ne krijojmë një sistem për menaxhimin dhe bashkëpunimin e projektit. Unë kam punuar në ueb që nga viti 2010, kam punuar për 3 vjet jashtë vendit, kam marrë pjesë në disa startup dhe kam dhënë një kurs për teknologjitë e ueb-it në universitet. Në kompani, unë jam i përfshirë në zhvillimin e kurseve teknike dhe programit të mentorimit Wrike për të rinjtë, si dhe në rekrutimin e drejtpërdrejtë të tyre.

Pse menduam të punësonim të rinj?

Deri kohët e fundit, ne rekrutuam zhvillues të nivelit të mesëm ose të lartë për frontin - mjaftueshëm të pavarur për të kryer detyrat e produktit pas hyrjes në bord. Në fillim të këtij viti, ne kuptuam se donim të ndryshonim këtë politikë: gjatë vitit numri i ekipeve tona të produkteve pothuajse është dyfishuar, numri i zhvilluesve të nivelit të përparmë është afruar në njëqind, dhe në të ardhmen e afërt e gjithë kjo do të duhet të dyfishohen përsëri. Ka shumë punë, pak duar të lira, dhe ka edhe më pak prej tyre në treg, ndaj vendosëm t'u drejtohemi djemve që sapo po e nisin udhëtimin e tyre në fund dhe kuptuam se jemi gati të investojmë në to. zhvillimin.

Kush është një junior?

Kjo është pyetja e parë që i bëmë vetes. Ka kritere të ndryshme, por parimi më i thjeshtë dhe më i kuptueshëm është ky:

Juniorit duhet t'i shpjegohet se çfarë veçorie dhe si ta bëjë atë. Mesit duhet t'i shpjegohet se çfarë veçori i nevojitet, dhe ai do ta kuptojë vetë zbatimin. Vetë nënshkruesi do t'ju shpjegojë pse kjo veçori nuk duhet të bëhet fare.

Në një mënyrë apo tjetër, një i ri është një zhvillues që ka nevojë për këshilla se si të zbatojë këtë apo atë zgjidhje. Ajo që vendosëm të ndërtojmë:

  1. Junior është dikush që dëshiron të zhvillohet dhe është i gatshëm të punojë shumë për këtë;
  2. Ai nuk e di gjithmonë se në cilin drejtim dëshiron të zhvillohet;
  3. Ka nevojë për këshilla dhe kërkon ndihmë nga jashtë - nga drejtuesi i tij, mentori ose në komunitet.

Kishim edhe disa hipoteza:

  1. Do të ketë një stuhi përgjigjesh ndaj qëndrimit të qershorit. Ju duhet të filtroni përgjigjet e rastësishme në fazën e dërgimit të CV-së tuaj;
  2. Një filtër kryesor nuk do të ndihmojë. — nevojiten më shumë detyra testuese;
  3. Detyrat e provës do t'i trembin të gjithë - ato nuk janë të nevojshme.

Dhe sigurisht, ne kishim një qëllim: 4 juniorë në 3 javë.

Me këtë realizim filluam të eksperimentojmë. Plani ishte i thjeshtë: filloni me gypin më të gjerë të mundshëm dhe përpiquni ta ngushtoni gradualisht në mënyrë që të mund të përpunoni rrjedhën, por jo ta zvogëloni atë në 1 kandidat në javë.

Ne shpallim një vend të lirë pune

Për kompaninë: Do të ketë qindra përgjigje! Mendoni për një filtër.

Për junior: Mos kini frikë nga pyetësori përpara se të dërgoni CV-në tuaj dhe detyrën e testimit - kjo është një shenjë se kompania është kujdesur për ju dhe e ka vendosur mirë procesin.

Në ditën e parë, ne morëm rreth 70 CV nga kandidatë "me njohuri të JavaScript". Dhe pastaj përsëri. Dhe më tej. Ne fizikisht nuk mund t'i ftonim të gjithë në zyrë për një intervistë dhe zgjodhëm prej tyre djemtë me projektet më të bukura për kafshët shtëpiake, Github live, ose të paktën përvojë.

Por përfundimi kryesor që bëmë për vete që në ditën e parë ishte se stuhia kishte filluar. Tani është koha për të shtuar një formular pyetësor përpara se të dorëzoni CV-në tuaj. Qëllimi i saj ishte të eliminonte kandidatët që nuk ishin të gatshëm të bënin përpjekjet minimale për të paraqitur një CV, dhe ata që nuk kishin njohuritë dhe kontekstin për të paktën në Google përgjigjet e sakta.

Ai përmbante pyetje standarde në lidhje me JS, paraqitjen, ueb-in, Shkencën Kompjuterike - të gjithë ata që imagjinojnë se çfarë pyesin në një intervistë të përparme i dinë ato. Cili është ndryshimi midis let/var/const? Si mund të aplikoj stile vetëm për ekranet me gjerësi më të vogël se 600 px? Ne nuk donim t'i bënim këto pyetje në një intervistë teknike - praktika ka treguar se ato mund të përgjigjen pas 2-3 intervistave pa e kuptuar fare zhvillimin. Por ata mundën të na tregojnë fillimisht nëse kandidati, në parim, e kupton kontekstin.

Në secilën kategori përgatitëm 3-5 pyetje dhe ditë pas dite ndryshuam grupin e tyre në formularin e përgjigjes derisa eliminonim më të kalueshmet dhe më të vështirat. Kjo na lejoi të zvogëlojmë rrjedhën - në 3 javë që morëm 122 kandidatë, me të cilin mund të punonim më tej. Këta ishin studentë të IT-së; djem që donin të kalonin në pjesën e përparme nga pjesa e pasme; punëtorë ose inxhinierë, 25-35 vjeç, të cilët donin rrënjësisht të ndryshonin profesionin e tyre dhe të bënin përpjekje të ndryshme për vetë-edukim, kurse dhe praktika.

Le të njihemi më mirë

Për kompaninë: Detyra e testimit nuk i pengon kandidatët, por ndihmon në shkurtimin e hinkës.

Për junior: Mos i kopjoni ato testuese - është e dukshme. Dhe mbajeni github-in tuaj në rregull!

Nëse i thërrisnim të gjithë për një intervistë teknike, do të duhej të bënim rreth 40 intervista në javë vetëm për të rinjtë dhe vetëm në front. Prandaj, vendosëm të testojmë hipotezën e dytë - në lidhje me detyrën e testimit.

Çfarë ishte e rëndësishme për ne në test:

  1. Ndërtoni një arkitekturë të mirë të shkallëzueshme, por pa mbiinxhinierim;
  2. Është më mirë të marrësh më shumë kohë, por ta bësh mirë, sesa të bësh një zanat brenda natës dhe ta dërgosh me komentin “Do ta mbaroj patjetër”;
  3. Historia e zhvillimit në Git është kultura inxhinierike, zhvillimi përsëritës dhe fakti që zgjidhja nuk u kopjua hapur.

Ne ramë dakord që donim të shikonim një problem algoritmik dhe një aplikacion të vogël ueb. Ato algoritmike u përgatitën në nivelin e laboratorëve të nivelit elementar - kërkim binar, renditje, kontrollim për anagrame, punë me lista dhe pemë. Në fund, ne u vendosëm në kërkimin binar si opsionin e parë të provës. Aplikacioni në internet duhej të ishte tic-tac-toe duke përdorur çdo kornizë (ose pa të).

Pothuajse gjysma e djemve të mbetur përfunduan detyrën e provës - ata na dërguan zgjidhjet 54 kandidatë. Një pasqyrë e pabesueshme - sa zbatime të tic-tac-toe, gati për copy-paste, mendoni se ka në internet?

Sa shumëNë fakt duket se janë vetëm 3. Dhe në shumicën dërrmuese të vendimeve ishin pikërisht këto 3 opsione.
Ajo që nuk më pëlqeu:

  • copy-paste, ose zhvillim i bazuar në të njëjtin tutorial pa arkitekturën tuaj;
  • të dyja detyrat janë në të njëjtin depo në dosje të ndryshme, sigurisht që nuk ka histori të kryerjes;
  • kod i ndyrë, shkelje e DRY, mungesë formatimi;
  • një përzierje e modelit, pamjes dhe kontrolluesit në një klasë me qindra rreshta kodi të gjatë;
  • mungesa e të kuptuarit të testimit të njësisë;
  • një zgjidhje "me kokë" është një kod i fortë i një matrice 3x3 të kombinimeve fituese, e cila do të jetë mjaft e vështirë të zgjerohet në 10x10, për shembull.

Ne gjithashtu i kushtuam vëmendje depove fqinje - projektet e lezetshme për kafshët shtëpiake ishin një plus, dhe një sërë detyrash testimi nga kompani të tjera ishin më shumë një thirrje zgjimi: pse kandidati nuk mund të arrinte atje?

Si rezultat, gjetëm opsione fantastike në React, Angular, Vanilla JS - ishin 29. Dhe vendosëm të ftojmë një kandidat tjetër pa testuar për projektet e tij shumë të bukura për kafshët shtëpiake. Hipoteza jonë për përfitimet e detyrave të testimit u konfirmua.

Intervistë teknike

Për kompaninë: Nuk janë të mesmet/të moshuarit që kanë ardhur tek ju! Ne kemi nevojë për një qasje më individuale.

Për junior: Mos harroni se ky nuk është një provim - mos u përpiqni të heshtni për një C ose të bombardoni profesorin me një rrjedhë të të gjitha njohurive tuaja të mundshme në mënyrë që ai të ngatërrohet dhe të japë një "shkëlqyeshëm".

Çfarë duam të kuptojmë në një intervistë teknike? Një gjë e thjeshtë - si mendon kandidati. Ai ndoshta ka disa aftësi të vështira nëse i ka kaluar fazat e para të përzgjedhjes - mbetet për t'u parë nëse di t'i përdorë ato. Ne ramë dakord për 3 detyra.

E para ka të bëjë me algoritmet dhe strukturat e të dhënave. Me një stilolaps, në një copë letër, në pseudo-gjuhë dhe me ndihmën e vizatimeve, ne kuptuam se si të kopjojmë një pemë ose si të heqim një element nga një listë e lidhur. Zbulimi i pakëndshëm ishte se jo të gjithë e kuptojnë rekursionin dhe mënyrën se si funksionojnë referencat.

E dyta është kodimi i drejtpërdrejtë. Shkuam në codewars.com, zgjodhi gjëra të thjeshta si renditja e një vargu fjalësh sipas shkronjës së fundit dhe për 30-40 minuta së bashku me kandidatin u përpoqën të kalonin të gjitha testet. Dukej se nuk duhet të kishte surpriza nga djemtë që kishin zotëruar tic-tac-toe - por në praktikë, jo të gjithë ishin në gjendje të kuptonin që vlera duhet të ruhet në një ndryshore dhe funksioni duhet të kthejë diçka nëpërmjet kthimit. Edhe pse sinqerisht shpresoj se ishte një nervozizëm, dhe djemtë ishin në gjendje të merren me këto detyra në kushte më të lehta.

Së fundi, i treti ka të bëjë pak me arkitekturën. Ne diskutuam se si të krijoni një shirit kërkimi, si funksionon debounce, si të jepni pajisje të ndryshme në këshillat e kërkimit, si mund të ndërveprojë pjesa e përparme me pjesën e pasme. Kishte shumë zgjidhje interesante, duke përfshirë paraqitjen nga ana e serverit dhe prizat në ueb.

Kemi kryer 21 intervista duke përdorur këtë dizajn. Publiku ishte plotësisht i larmishëm - le të shohim komike:

  1. "Raketë". Ai nuk qetësohet kurrë, përfshihet në çdo gjë dhe gjatë një interviste do t'ju pushtojë me një lumë mendimesh që nuk lidhen as drejtpërdrejt me pyetjen e bërë. Nëse do të ishte në një universitet, kjo do të ishte një përpjekje e njohur për të demonstruar, mirë, të gjitha njohuritë tuaja, kur gjithçka që ju kujtohet për biletën që keni hasur është se mbrëmë vendosët të mos e studioni atë - ende nuk mund ta merrni atë jashtë.
  2. "Groot". Është mjaft e vështirë të kontaktosh me të, sepse ai është Groot. Gjatë një interviste, ju duhet të kaloni një kohë të gjatë duke u përpjekur të merrni përgjigje fjalë për fjalë. Është mirë nëse është thjesht një hutim - përndryshe do të jetë shumë e vështirë për ju në punën tuaj të përditshme.
  3. "Drax". Unë kam punuar në transportin e mallrave dhe për sa i përket programimit kam mësuar JS vetëm në Stackoverflow, kështu që nuk e kuptoj gjithmonë se çfarë diskutohet në një intervistë. Në të njëjtën kohë, ai është një person i mirë, ka qëllimet më të mira dhe dëshiron të bëhet një zhvillues i shkëlqyer në front-end.
  4. Epo, ndoshta "Zoti i Yllit". Në përgjithësi, një kandidat i mirë me të cilin mund të negocioni dhe të ndërtoni një dialog.

Në fund të hulumtimit tonë 7 kandidatë arritën në finale, duke konfirmuar aftësitë e tyre të vështira me një detyrë të shkëlqyer testimi dhe përgjigje të mira në intervistë.

Përshtatje kulturore

Për kompaninë: Ti punon me të! A është kandidati i gatshëm të punojë jashtëzakonisht shumë për zhvillimin e tij? A do të përshtatet vërtet në ekip?

Për junior: Ti punon me ta! A është vërtet e gatshme kompania të investojë në rritjen e të rinjve, apo thjesht do t'ju hedhë gjithë punën e pistë për një pagë të ulët?

Çdo i ri, përveç ekipit të produktit, drejtuesi i të cilit duhet të pranojë ta marrë atë, merr një mentor. Detyra e mentorit është ta udhëheqë atë përmes një procesi tre mujor të futjes dhe përmirësimit të aftësive të vështira. Prandaj, ne erdhëm në çdo përshtatje kulturore si mentorë dhe iu përgjigjëm pyetjes: "A do të marr përgjegjësinë për zhvillimin e një kandidati në 3 muaj sipas planit tonë?"

Kjo fazë kaloi pa asnjë veçori të veçantë dhe në fund na solli 4 oferta, 3 prej të cilave u pranuan, dhe djemtë hynë në ekipe.

Jeta pas ofertës

Për kompaninë: Kujdesuni për të rinjtë tuaj ose të tjerët do!

Për junior: AAAAAAAAAAAA!!!

Kur del një punonjës i ri, ai duhet të jetë në bord - të përditësohet me proceset, t'i tregohet se si funksionon gjithçka në kompani dhe në ekip dhe si duhet të punojë në përgjithësi. Kur del një i ri, duhet të kuptoni se si ta zhvilloni atë.

Kur e menduam, dolëm me një listë me 26 aftësi që, sipas mendimit tonë, një i ri duhet t'i ketë deri në fund të periudhës tre-mujore të hyrjes. Kjo përfshinte aftësi të vështira (sipas grupit tonë), njohuri për proceset tona, Scrum, infrastrukturën dhe arkitekturën e projektit. Ne i kombinuam ato në një udhërrëfyes, të shpërndarë në 3 muaj.

Si të zbutni një junior?

Për shembull, këtu është udhërrëfyesi i vogëlushit tim

Ne caktojmë një mentor për çdo të ri që punon me të individualisht. Në varësi të mentorit dhe nivelit aktual të kandidatit, takimet mund të zhvillohen nga 1 deri në 5 herë në javë për 1 orë. Mentorët janë zhvillues vullnetarë që duan të bëjnë diçka më shumë sesa thjesht të shkruajnë kod.

Një pjesë e barrës mbi mentorët hiqet nga kurset në grupin tonë - Dart, Angular. Kurset zhvillohen rregullisht për grupe të vogla prej 4-6 personash, ku studentët studiojnë pa ndërprerje nga puna.

Gjatë 3 muajve, ne mbledhim periodikisht reagime nga të rinjtë, mentorët dhe drejtuesit e tyre dhe e rregullojmë procesin individualisht. Aftësitë e pompuara kontrollohen 1-2 herë gjatë gjithë periudhës, i njëjti kontroll kryhet në fund - bazuar në to, formohen rekomandime se çfarë saktësisht duhet të përmirësohet.

Përfundim

Për kompaninë: A ia vlen të investosh te juniorët? Po!

Për junior: Kërkoni kompani që përzgjedhin me kujdes kandidatët dhe dinë t'i zhvillojnë ata

Gjatë 3 muajve, ne shqyrtuam 122 pyetësorë, 54 detyra testimi dhe zhvilluam 21 intervista teknike. Kjo na solli 3 të rinj të shkëlqyeshëm që tani kanë përfunduar gjysmën e udhërrëfyesve të tyre të hyrjes dhe përshpejtimit. Ata tashmë janë duke përfunduar detyrat reale të produktit në projektin tonë, ku ka më shumë se 2 rreshta kodi dhe më shumë se 000 depo vetëm në pjesën e përparme.

Zbuluam se gypi për të rinjtë mund dhe duhet të jetë mjaft kompleks, por në fund vetëm ata djem që janë vërtet të gatshëm të punojnë shumë dhe të investojnë në zhvillimin e tyre kalojnë nëpër të.

Tani detyra jonë kryesore është të përfundojmë udhërrëfyesin e zhvillimit tre-mujor për secilin i ri në mënyrën e punës individuale me një mentor dhe kurse të përgjithshme, të mbledhim metrikë, reagime nga drejtuesit, mentorët dhe vetë djemtë. Në këtë pikë, eksperimenti i parë mund të konsiderohet i përfunduar, mund të nxirren përfundime, mund të përmirësohet procesi dhe mund të fillojë sërish për të përzgjedhur kandidatët e rinj.

Burimi: www.habr.com

Shto një koment