Si e të sjellësh një junior në punë?

Si të hysh në një kompani të madhe si junior? Si të punësosh një junior të denjë nëse je një kompani e madhe? Në këtë artikull do të ndaj historinë tonë mbi punësimin e të rinjve në frontend: sesi punuam me detyrat testuese, përgatitëm intervista dhe ndërtuam një program mentorimi për zhvillimin dhe onboarding-in e të rinjve, si dhe pse pyetjet standarde për intervista nuk funksionojnë.

Si e të sjellësh një junior në punë?
Unë po përpiqem të sjell një junior në punë

Përshëndetje! Emri im është Pavel, unë punoj në frontend në ekipin e Wrike. Ne krijojmë një sistem për menaxhimin e projekteve dhe bashkëpunimin. Më janë bashkëngjitur web-it që nga viti 2010, kam punuar për 3 vjet në një punë të largët jashtë vendit, kam marrë pjesë në disa startup-e dhe kam mbajtur një kurs mbi teknologjitë e web-it në universitet. Në kompani, marr pjesë në zhvillimin e kurseve teknike dhe programit të mentorimit të Wrike për juniorët, si dhe në procesin e tyre të rekrutimit.

Përse menduam të punësojmë juniorë në fillim?

Derisa jo mĂ« parĂ« ne kemi qenĂ« nĂ« kĂ«rkim tĂ« zhvilluesve frontend nĂ« nivelin mesatar ose tĂ« avancuar — tĂ« mjaftueshĂ«m tĂ« pavarur pĂ«r tĂ« kryer detyrat e produktit pas onboardimit. NĂ« fillim tĂ« kĂ«tij viti kuptuam se dĂ«shironim tĂ« ndryshonim kĂ«tĂ« politikĂ«: numri i ekipeve tona produktivĂ« u rrit pothuajse dyfish, numri i zhvilluesve frontend u afrua me qind, dhe sĂ« shpejti parashikohet qĂ« ky numĂ«r duhet tĂ« dyfishohet pĂ«rsĂ«ri. Ka shumĂ« punĂ«, pak duar tĂ« lira, dhe nĂ« treg ka edhe mĂ« pak, prandaj vendosĂ«m tĂ« angazhojmĂ« djemtĂ« qĂ« sapo po fillojnĂ« rrugĂ«n e tyre nĂ« frontend dhe kuptuam se jemi tĂ« gatshĂ«m tĂ« investojmĂ« nĂ« zhvillimin e tyre.

Kush është një junior?

Ky është pyetja e parë që ne na erdhi në mendje. Ka kritere të ndryshme, por parimi më i thjeshtë dhe më i qartë është ky:

Një junior ka nevojë për shpjegim se cilën funksionalitet dhe si të bëhet. Një mid-level duhet të shpjegohet se cila funksionalitet është e nevojshme dhe ai do të merret me zbatimin. Ndërsa një senior do të të shpjegojë se pse kjo funksionalitet nuk duhet bërë fare.

Dhe në një mënyrë ose një tjetër, një junior është ai zhvillues që ka nevojë për këshilla se si të realizojë një zgjidhje të caktuar. Nga kjo ne vendosëm të fillojmë:

  1. Junior është ai që dëshiron të zhvillohet dhe është i gatshëm të punojë shumë për këtë;
  2. Ai nuk di gjithmonë se në cilën drejtim dëshiron të zhvillohet;
  3. Ka nevojĂ« pĂ«r kĂ«shilla dhe kĂ«rkon ndihmĂ« nga jashtĂ« — nga lideri, mentori ose nĂ« komunitet.

ËshtĂ« gjithashtu disa hipoteza qĂ« kemi pasur:

  1. Do të ketë një stuhi aplikimesh për pozitat junior;. Duhet të filtrojmë aplikimet rastësore që në fazën e dërgimit të CV-së;
  2. Filtri i parĂ« nuk do tĂ« mjaftojĂ« — nevojiten gjithashtu detyra testuese;
  3. Detyrat testuese do t'i frikĂ«sojnĂ« tĂ« gjithĂ« — ato nuk janĂ« tĂ« nevojshme.

Natyrisht, kishim edhe një qëllim: 4 juniorë brenda 3 javësh.

Me këtë vetëdije filluam të eksperimentojmë. Plani ishte i thjeshtë: të fillonim me një grumbull të gjerë dhe të provonim ta ngushtonim gradualisht atë për të përballuar fluksin, por pa e ulur në 1 kandidat në javë.

Shpallim vendin e punës

Për kompaninë: Do të ketë qindra aplikime! Mendoni për filtrin.

PĂ«r juniorin: Mos e frikĂ«soni pyetĂ«sorin para dĂ«rgimit tĂ« CV-sĂ« dhe detyrĂ«s testuese — kjo Ă«shtĂ« njĂ« shenjĂ« qĂ« kompania kujdeset pĂ«r ju dhe ka rregulluar mirĂ« procesin.

Në ditën e parë morëm rreth 70 CV nga kandidatë me "dijeni në JavaScript". Dhe pastaj më shumë. E më shumë. Ne fizikisht nuk mund të ftonim të gjithë për intervista në zyrë dhe zgjodhëm ata me projektet më interesante, një GitHub aktiv ose së paku përvojë.

Por çfarĂ«do pĂ«rfundimi qĂ« morĂ«m nĂ« ditĂ«n e parĂ« — stuhia kishte filluar. Era e duhur pĂ«r tĂ« shtuar njĂ« formular pyetjesh para dĂ«rgimit tĂ« CV-sĂ«. QĂ«llimi i saj ishte tĂ« filtroja kandidatĂ« qĂ« nuk ishin tĂ« gatshĂ«m tĂ« bĂ«nin pĂ«rpjekjen minimale pĂ«r dĂ«rgimin e CV-sĂ« dhe ata qĂ« nuk kishin njohuri dhe kontekstin e nevojshĂ«m pĂ«r tĂ« gjetur pĂ«rgjigjet e duhura nĂ« Google.

NĂ« tĂ« kishte pyetje standart mbi JS, kodimin, web-in, ShkencĂ«n e KompjuterĂ«ve — ato i di çdo kush qĂ« ka njĂ« ide se çfarĂ« pyesin nĂ« intervistat e frontend-it. Cila Ă«shtĂ« diferenca mes let/var/const? Si t'i aplikosh stilet vetĂ«m pĂ«r ekranet qĂ« janĂ« mĂ« tĂ« vogla se 600px nĂ« gjerĂ«si? Ne nuk donim ti bĂ«nim kĂ«to pyetje nĂ« intervistat teknike — praktika tregoi se mund tĂ« pĂ«rgjigjesh pas 2-3 intervistave, krejt pa u futur nĂ« detaje pĂ«r zhvillimin. Por ato mund tĂ« tregonin nĂ« fillim nĂ«se kandidati e kupton ose jo kontekstin.

NĂ« secilĂ«n kategori kemi pĂ«rgatitur 3-5 pyetje dhe çdo ditĂ« kemi ndryshuar grupin e tyre nĂ« formĂ«n e reagimit, deri sa eliminuam ato mĂ« tĂ« thjeshta dhe mĂ« tĂ« vĂ«shtira. Kjo na lehtĂ«soi fluksin — pĂ«r 3 javĂ« morĂ«m 122 kandidatĂ«, me tĂ« cilĂ«t mund tĂ« punonim mĂ« tej. KĂ«ta ishin studentĂ« IT; djem qĂ« donin tĂ« kalonin nga backend nĂ« frontend; punĂ«torĂ« ose inxhinierĂ« tĂ« moshĂ«s 25-35 vjeçare, tĂ« cilĂ«t donin tĂ« ndryshonin radikalisht profesionin dhe kishin bĂ«rĂ« pĂ«rpjekje tĂ« ndryshme nĂ« vetĂ«-arsimim, kurse dhe stazhe.

Të njihemi më mirë

Për kompaninë: Detyra e provës nuk i frikëson kandidatët, por ndihmon në zvogëlimin e funnel-it.

PĂ«r juniorin: Mos e kopjoni testin — kjo bie nĂ« sy. Dhe mbani nĂ« rregull Github-in tuaj!

Po tĂ« kishim ftuar tĂ« gjithĂ« nĂ« intervista teknike, do tĂ« duhej tĂ« zhvillonim rreth 40 intervista nĂ« javĂ« vetĂ«m pĂ«r juniorĂ«t dhe vetĂ«m pĂ«r frontend. Prandaj, vendosĂ«m tĂ« kontrollonim hipotezĂ«n e dytĂ« — pĂ«r detyrĂ«n e provĂ«s.

ÇfarĂ« ishte e rĂ«ndĂ«sishme pĂ«r ne nĂ« testin:

  1. Të ndërtosh një arkitekturë të mirë e të shkallëzueshme, por pa overengineering;
  2. Më mirë të bësh diçka për një kohë më të gjatë, por ta bësh mirë, sesa të bësh një punë të shpejtë dhe ta dërgosh me komentin "do ta përfundoj patjetër";
  3. Historia e zhvillimit në git është një kulturë inxhinierike, një proces iterativ zhvillimi dhe tregon se zgjidhja nuk është kopjuar hapur.

KĂ«tu u pajtuam se donim tĂ« shqyrtonim njĂ« detyrĂ« algoritmike dhe njĂ« aplikacion tĂ« vogĂ«l web. Detyrat algoritmike ishin pĂ«rgatitur nĂ« nivelin e laboratorĂ«ve tĂ« kurseve fillestare — kĂ«rkimi binar, renditja, kontrolli pĂ«r anagramet, puna me lista dhe pemĂ«. NĂ« fund, u ndalĂ«m te kĂ«rkimi binar si njĂ« variant i parĂ« pĂ«r provĂ«. Aplikacioni web duhet tĂ« ishte njĂ« lojĂ« e kryqĂ«zimit-me-qira pĂ«rdorur ndonjĂ«qoftĂ« framework (ose pa tĂ«).

GjatĂ« detyrĂ«s provuese u pĂ«rgjigjĂ«n pothuajse gjysma e djemve tĂ« mbetur — na dĂ«rguan zgjidhjet. 54 kandidatĂ«.. NjĂ« informacion i jashtĂ«zakonshĂ«m — si mendoni, sa realizime tĂ« lojĂ«s sĂ« kryqĂ«zimit-me-qira qĂ« janĂ« gati pĂ«r kopjim ka nĂ« rrjet?

Sa?Në të vërtetë, duket se vetëm 3. Dhe në shumicën e zgjidhjeve kishin pikërisht këto 3 variante.
ÇfarĂ« nuk pĂ«lqeve:

  • kopipasta, ose zhvillim sipas tĂ« njĂ«jtit manual pa strukturĂ« personale;
  • tĂ« dyja detyrat nĂ« tĂ« njĂ«jtin depo nĂ« dosje tĂ« ndryshme, histori komitesh nuk ka;
  • kod i ndotur, shkelje e DRY, mungesĂ« formatimi;
  • pĂ«rzierje modeli, shikimi dhe kontrolluesi nĂ« njĂ« klasĂ« me qindra rreshta kodi;
  • mungesĂ« kuptimi tĂ« testeve tĂ« njĂ«sisĂ«;
  • zgjidhje ‘nĂ« fytyrë’ - hardkodimi i matricĂ«s fituese 3x3, qĂ« do tĂ« jetĂ« mjaft e vĂ«shtirĂ« pĂ«r t'u zgjeruar nĂ« 10x10, pĂ«r shembull.

Dhe ne gjithashtu vëmendëm në depo të afërta - projekte të bukura ishin në rritje, ndërsa shumë detyra provuese nga kompani të tjera ishin më tepër një sinjal: përshtypja pse kandidati nuk arriti të kalonte atje?

Si rezultat, gjetëm disa mundësi të shkëlqyera në React, Angular, Vanilla JS - pati 29 të tillë. Dhe një kandidat tjetër e ftuam pa provim për shkak të projekteve të tij shumë të bukura. Hipoteza jonë për përfitimin e detyrave provuese u konfirmua.

Intervista teknike

Për kompaninë: Nuk keni mid-level/senior! Duhet më shumë qasje individuale.

PĂ«r juniorin: Mos kujdesi, qĂ« kjo nuk Ă«shtĂ« njĂ« provim — mos provoni tĂ« heshtni pĂ«r njĂ« notĂ« tĂ« mesme ose tĂ« ngatĂ«rroni profesorin me njĂ« mori njohurish, nĂ« mĂ«nyrĂ« qĂ« ai tĂ« humbasĂ« dhe t'ju japĂ« “tĂ« shkĂ«lqyer”.

ÇfarĂ« duam tĂ« kuptojmĂ« nga intervista teknike? NjĂ« gjĂ« tĂ« thjeshtĂ« — si mendon kandidati. Ndjenja Ă«shtĂ« se ai posedon disa aftĂ«si tĂ« mira, nĂ«se kaloi etapat e para tĂ« pĂ«rzgjedhjes — mbetet tĂ« zbulojmĂ« nĂ«se di t'i aplikojĂ« ato. Ajo qĂ« kemi rĂ«nĂ« dakord Ă«shtĂ« pĂ«r 3 detyra.

E para — pĂ«r algoritmet dhe strukturat e tĂ« dhĂ«nave. Me stilolaps, nĂ« njĂ« copĂ« letre, nĂ« njĂ« pseudo-gjuhĂ« dhe me ndihmĂ«n e vizatimeve, shqyrtuam se si tĂ« kopjojmĂ« njĂ« pemĂ« ose si tĂ« heqim njĂ« element nga njĂ« listĂ« e lidhur. NjĂ« zbulim i pakĂ«ndshĂ«m ishte se jo tĂ« gjithĂ« e kuptojnĂ« rekurzionin dhe si funksionojnĂ« referencat.

E dyta — kodimi live. Ne hyjmĂ« nĂ« codewars.com, zgjodhĂ«m gjĂ«ra tĂ« thjeshta si renditja e njĂ« liste fjalĂ«sh sipas shkronjĂ«s sĂ« fundit dhe pĂ«r 30-40 minuta, sĂ« bashku me kandidatin, u pĂ«rpoqĂ«m tĂ« bĂ«nim qĂ« tĂ« gjithĂ« testet tĂ« kalonin. Dukej se nuk duhej tĂ« ishim tĂ« befasuar nga djemtĂ« qĂ« kishin pĂ«rfunduar lojĂ«n e xhevahirĂ«ve — por nĂ« praktikĂ«, jo tĂ« gjithĂ« arritĂ«n tĂ« kuptonin se vlera duhet tĂ« ruhej nĂ« njĂ« ndryshore, dhe funksioni duhet tĂ« kthejĂ« diçka pĂ«rmes return. MegjithatĂ«, shpresoj sinqerisht se kjo ishte vetĂ«m njĂ« shtyrje nervoze, dhe djemtĂ« arritĂ«n tĂ« zgjidhnin kĂ«to detyra nĂ« kushte mĂ« tĂ« thjeshta.

NĂ« fund, e treta — pak pĂ«r arkitekturĂ«n. Diskutuam se si mund tĂ« bĂ«jmĂ« njĂ« kuti kĂ«rkimi, si funksionon debounce nĂ« kĂ«tĂ« rast, si tĂ« renditnim widget-et e ndryshme nĂ« sugjerimet e kĂ«rkimit, si frontend-i mund tĂ« interaktojĂ« me backend-in. U gjetĂ«n shumĂ« zgjidhje interesante, pĂ«rfshirĂ« renderimin nga serveri dhe websocket-et.

Ne kemi zhvilluar 21 intervista sipas kĂ«saj skeme. Publiku ishte krejt i larmishĂ«m — le tĂ« flasim pĂ«r komikĂ«t:

  1. «Raketa». KurrĂ« nuk qetĂ«sohet, hyn kudo, dhe gjatĂ« intervjuĂ«s do t'ju pĂ«rmendĂ« njĂ« mori mendimesh, tĂ« cilat nuk janĂ« ndĂ«rlidhur drejtpĂ«rdrejt me pyetjen e dhĂ«nĂ«. NĂ«se do tĂ« ishte nĂ« universitet, do tĂ« ishte njĂ« pĂ«rpjekje e njohur pĂ«r shumĂ« pĂ«r tĂ« demonstruar tĂ« gjithĂ« njohuritĂ« e tyre, kur pĂ«r biletĂ«n qĂ« ra duke kujtuar vetĂ«m se mbrĂ«mĂ« vendosĂ«t tĂ« mos e studioni — nĂ« çdo rast nuk do ta nxirrni dot.
  2. «Groot». ËshtĂ« mjaft e vĂ«shtirĂ« tĂ« hysh nĂ« kontakt me tĂ«, sepse ai Ă«shtĂ« Groot. GjatĂ« intervistĂ«s, nevojitet njĂ« kohĂ« e gjatĂ« pĂ«r ta filluar, pĂ«r tĂ« nxjerrĂ« pĂ«rgjigje fjalĂ« pĂ«r fjalĂ«. MirĂ« Ă«shtĂ« nĂ«se Ă«shtĂ« thjesht njĂ« ngĂ«rç — pĂ«rndryshe, mĂ« pas nĂ« punĂ«n e pĂ«rditshme do t'ju jetĂ« shumĂ« e vĂ«shtirĂ«.
  3. «Drax». Disa kohë më parë merrej me transportin e mallrave, dhe nga programimi ka mësuar vetëm JS në Stackoverflow, prandaj nuk gjithmonë kupton për çfarë po flitet gjatë intervistës. Megjithatë, është një person i mirë, ka qëllime të mira dhe dëshiron të bëhet një frontend i shkëlqyer.
  4. Dhe ndoshta, «Star-Lord». Në përgjithësi, një kandidat i mirë, me të cilin mund të shkëmbehet dhe të ndërtohet një dialog.

Në fund të kërkimeve tona 7 kandidatë arritëm në finale, duke konfirmuar aftësitë tona teknike me një detyrë të shkëlqyer provimi dhe përgjigje të mira në intervista.

Përshtatja kulturore

Për kompaninë: A do të keni mundësi të punoni me të? A është kandidati i gatshëm të punojë shumë për zhvillimin e tij? A do t'i përshtatet ai ekipit?

Për juniorin: A do të keni mundësi të punoni me ta? A është kompania e gatshme të investojë në rritjen e juniorëve, apo do t'i lërë ata të punojnë gjithë punën e madhe për paga të ulta?

Çdo junior, pĂ«rveç ekipit tĂ« produktit, lideri i tĂ« cilit duhet tĂ« pranojĂ« ta marrĂ« atĂ«, kalon tek njĂ« mentor. Detyra e mentorit Ă«shtĂ« ta udhĂ«heqĂ« atĂ« pĂ«rmes njĂ« procesi tre-mujor onboarding dhe zhvillimi tĂ« aftĂ«sive teknike. Prandaj, pĂ«r çdo pĂ«rshtatje kulturore, ne kemi ardhur si mentorĂ« dhe i kemi pĂ«rgjigjur vetes pyetjes: "A do tĂ« marr pĂ«rsipĂ«r pĂ«rgjegjĂ«sinĂ« pĂ«r tĂ« zhvilluar kandidatin pĂ«r 3 muaj sipas planit tonĂ«?"

Ky etap kaloi pa veçori dhe rezultoi në 4 oferta, 3 nga të cilat u pranuan, dhe djemtë u bashkuan me ekipet.

Jeta pas ofrës

Për kompaninë: Kujdesuni për juniorët tuaj ose të tjerë do ta bëjnë këtë!

Për juniorin: AAAAAAA!!!

Kur njĂ« punĂ«tor i ri vjen, duhet ta onboardojmĂ« – ta njohim me proceset, t'i tregojmĂ« si funksionon gjithçka nĂ« kompani dhe nĂ« ekip, si dhe si duhet tĂ« punojĂ«. Kur vjen njĂ« junior, Ă«shtĂ« e rĂ«ndĂ«sishme tĂ« kuptojmĂ« si ta zhvillojmĂ« atĂ«.

Kur menduam për këtë, formuam një listë prej 26 aftësish, të cilat, sipas opinionit tonë, një junior duhet t'i ketë deri në fund të periudhës tre mujor të onboardimit. Aty përfshiheshin aftësitë hard (sipas stack-ut tonë), njohuritë për proceset tona, Scrum-in, infrastrukturën, dhe arkitekturën e projektit. I bashkuam ato në një roadmap, të shpërndarë në kohë për 3 muaj.

Si e të sjellësh një junior në punë?

Për shembull, ja roadmap-i i juniorit tim

Çdo juniori i atribuohen njĂ« mentor, i cili punon me tĂ« nĂ« mĂ«nyrĂ« individuale. VarĂ«sisht nga mentori dhe niveli aktual i kandidatit, takimet mund tĂ« ndodhin nga 1 deri nĂ« 5 herĂ« nĂ« javĂ« pĂ«r 1 orĂ«. MentorĂ«t bĂ«hen nismĂ«tarĂ« tĂ« front-end-it nĂ« mĂ«nyrĂ« vullnetarizmi, tĂ« cilĂ«t duan tĂ« bĂ«jnĂ« diçka mĂ« shumĂ« se thjesht tĂ« shkruajnĂ« kod.

Pjesa e ngarkesĂ«s nga mentorĂ«t reduktohet nga kurset pĂ«r stack-un tonĂ« – Dart, Angular. Kurset organizohen rregullisht pĂ«r grupe tĂ« vogla prej 4-6 personash, ku djemtĂ« punojnĂ« pa ndĂ«rprerje nga puna.

GjatĂ« 3 muajve, ne periodikisht mbledhim feedback nga juniorĂ«t, mentorĂ«t e tyre dhe liderĂ«t, duke e korrigjuar procesin nĂ« mĂ«nyrĂ« individuale. 1-2 herĂ« gjatĂ« gjithĂ« periudhĂ«s bĂ«het njĂ« kontroll i aftĂ«sive tĂ« pĂ«rmirĂ«suara, njĂ« kontroll i tillĂ« bĂ«het dhe nĂ« fund — mbi kĂ«to bazohet formimi i rekomandimeve se çfarĂ« duhet pĂ«rmirĂ«suar.

Përfundimi

Për kompaninë: A duhet të investoni në juniorë? Po!

Për juniorin: Kërkoni kompani që përzgjidhen me kujdes kandidatët dhe dinë si t'i zhvillojnë ata.

Në 3 muaj, kemi shqyrtuar 122 anketat, 54 teste dhe kemi zhvilluar 21 intervista teknike. Kjo na solli 3 juniorë të shkëlqyer, të cilët tani kanë kaluar gjysmën e roadmaps së tyre për onboarding dhe akselerim. Ata tashmë po zgjidhin detyra reale për produktin në projektin tonë, ku vetëm në frontend ka më shumë se 2,000,000 rreshta kod dhe më shumë se 400 repositorë.

Ne zbuluam se pipeline për juniorët mund dhe duhet të jetë mjaft komplekse, por në fund kalojnë vetëm ata djem që janë vërtet të gatshëm të punojnë shumë dhe të investojnë në zhvillimin e tyre.

Aktualisht, qëllimi ynë kryesor është përfundimi i planit tre-mujor për zhvillim për çdo junior në mënyrë individuale me mentorin dhe kurse të përgjithshme, të mbledhim metrika, feedback nga liderët, mentorët dhe vetë të rinjtë. Me këtë, eksperimentin e parë mund ta quajmë të përfunduar, duke bërë përfundime, duke përmirësuar procesin dhe duke e rilançuar për përzgjedhjen e kandidatëve të rinj.

Burimi: habr.com

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster