Paano paamuin ang isang junior?

Paano makapasok sa isang malaking kumpanya kung ikaw ay isang junior? Paano kumuha ng isang disenteng junior kung ikaw ay isang malaking kumpanya? Sa ibaba ng cut, sasabihin ko sa iyo ang aming kuwento ng pagkuha ng mga baguhan sa front end: kung paano kami nagtrabaho sa pamamagitan ng mga gawain sa pagsubok, naghandang magsagawa ng mga panayam at bumuo ng isang programa sa pag-mentoring para sa pagbuo at pag-onboard ng mga bagong dating, at kung bakit ang mga karaniwang tanong sa panayam ay hindi hindi gumagana.

Paano paamuin ang isang junior?
Pilit kong pinapaamo si Junior

Kamusta! Ang pangalan ko ay Pavel, gumagawa ako ng front-end na trabaho sa Wrike team. Lumilikha kami ng isang sistema para sa pamamahala ng proyekto at pakikipagtulungan. Nagtatrabaho ako sa web mula noong 2010, nagtrabaho ng 3 taon sa ibang bansa, lumahok sa ilang mga startup at nagturo ng kurso sa mga teknolohiya sa web sa unibersidad. Sa kumpanya, ako ay kasangkot sa pagbuo ng mga teknikal na kurso at ang Wrike mentoring program para sa mga junior, pati na rin ang direktang pagre-recruit sa kanila.

Bakit ba namin naisipang kumuha ng mga juniors?

Hanggang kamakailan lamang, nag-recruit kami ng mga developer sa gitna o senior level para sa frontend - sapat na independyente upang gawin ang mga gawain ng produkto pagkatapos ng onboarding. Sa simula ng taong ito, napagtanto namin na gusto naming baguhin ang patakarang ito: sa paglipas ng taon halos dumoble ang bilang ng aming mga pangkat ng produkto, ang bilang ng mga front-end na developer ay umabot sa isang daan, at sa malapit na hinaharap ang lahat ng ito ay kailangang doblehin muli. Maraming trabaho, kakaunti ang libreng mga kamay, at mas kaunti pa ang mga ito sa merkado, kaya nagpasya kaming bumaling sa mga lalaki na nagsisimula pa lang sa kanilang paglalakbay sa front end at napagtanto na handa kaming mamuhunan sa kanilang pag-unlad.

Sino ang isang junior?

Ito ang pinakaunang tanong namin sa aming sarili. Mayroong iba't ibang pamantayan, ngunit ang pinakasimpleng at pinaka-naiintindihan na prinsipyo ay ito:

Kailangang ipaliwanag ni Junior kung ano ang tampok at kung paano ito gagawin. Ang Gitna ay kailangang ipaliwanag kung anong tampok ang kailangan, at siya mismo ang makakaalam ng pagpapatupad. Ang signor mismo ang magpapaliwanag sa iyo kung bakit hindi kailangang gawin ang feature na ito.

Sa isang paraan o iba pa, ang isang junior ay isang developer na nangangailangan ng payo kung paano ipatupad ito o ang solusyong iyon. Ano ang napagpasyahan naming bumuo sa:

  1. Si Junior ay isang taong gustong umunlad at handang magtrabaho nang husto para dito;
  2. Hindi niya laging alam kung saang direksyon niya gustong umunlad;
  3. Nangangailangan ng payo at humingi ng tulong mula sa labas - mula sa kanyang pinuno, tagapagturo o sa komunidad.

Nagkaroon din kami ng ilang hypotheses:

  1. Magkakaroon ng bagyo ng mga tugon sa posisyon ni June. Kailangan mong i-filter ang mga random na tugon sa yugto ng pagpapadala ng iyong resume;
  2. Ang pangunahing filter ay hindi makakatulong. β€” higit pang mga gawain sa pagsubok ang kailangan;
  3. Ang mga gawain sa pagsubok ay matatakot ang lahat - hindi sila kailangan.

At siyempre, mayroon kaming layunin: 4 na junior sa loob ng 3 linggo.

Sa pagsasakatuparan na ito nagsimula kaming mag-eksperimento. Simple lang ang plano: magsimula sa pinakamalawak na funnel na posible at subukang unti-unting paliitin ito para maproseso mo ang daloy, ngunit huwag bawasan ito sa 1 kandidato bawat linggo.

Nag-post kami ng bakante

Para sa kumpanya: Magkakaroon ng daan-daang mga tugon! Mag-isip tungkol sa isang filter.

Para sa junior: Huwag matakot sa questionnaire bago ipadala ang iyong resume at takdang-aralin sa pagsusulit - ito ay senyales na inalagaan ka ng kumpanya at nai-set up nang maayos ang proseso.

Sa unang araw, nakatanggap kami ng humigit-kumulang 70 resume mula sa mga kandidatong β€œmay kaalaman sa JavaScript.” At pagkatapos ay muli. At higit pa. Hindi namin pisikal na maimbitahan ang lahat sa opisina para sa isang pakikipanayam at pinili mula sa kanila ang mga taong may pinakaastig na proyekto ng alagang hayop, live na Github, o kahit man lang karanasan.

Ngunit ang pangunahing konklusyon na ginawa namin para sa ating sarili sa pinakaunang araw ay nagsimula na ang bagyo. Ngayon na ang oras upang magdagdag ng form ng questionnaire bago isumite ang iyong resume. Ang kanyang layunin ay alisin ang mga kandidato na hindi gustong maglagay ng pinakamababang pagsisikap na magsumite ng resume, at ang mga walang kaalaman at konteksto sa Google man lang ng mga tamang sagot.

Naglalaman ito ng mga karaniwang tanong tungkol sa JS, layout, web, Computer Science - lahat ng nag-iisip kung ano ang itatanong nila sa isang front-end na panayam ay kilala sila. Ano ang pagkakaiba sa pagitan ng let/var/const? Paano ko mailalapat ang mga istilo sa mga screen na mas maliit sa 600px ang lapad? Hindi namin gustong itanong ang mga tanong na ito sa isang teknikal na panayam - ipinakita ng pagsasanay na masasagot ang mga ito pagkatapos ng 2-3 panayam nang hindi nauunawaan ang pag-unlad. Ngunit una nilang naipakita sa amin kung ang kandidato, sa prinsipyo, ay nauunawaan ang konteksto.

Sa bawat kategorya, naghanda kami ng 3-5 na tanong at araw-araw ay binago namin ang set nila sa form ng pagtugon hanggang sa maalis namin ang pinakamadadaanan at pinakamahirap. Nagpahintulot ito sa amin na bawasan ang daloy - sa loob ng 3 linggo na natanggap namin 122 kandidato, kung saan maaari tayong magtrabaho nang higit pa. Ito ay mga mag-aaral sa IT; guys na gustong lumipat sa harap mula sa backend; mga manggagawa o inhinyero, 25-35 taong gulang, na radikal na gustong baguhin ang kanilang trabaho at maglagay ng iba't ibang dami ng pagsisikap sa self-education, mga kurso at internship.

Mas kilalanin ang isa't isa

Para sa kumpanya: Ang pagsubok na gawain ay hindi humahadlang sa mga kandidato, ngunit nakakatulong upang paikliin ang funnel.

Para sa junior: Huwag kopyahin-paste ang mga pagsubok - ito ay kapansin-pansin. At panatilihing maayos ang iyong github!

Kung tatawagin namin ang lahat para sa isang teknikal na panayam, kailangan naming magsagawa ng humigit-kumulang 40 mga panayam bawat linggo para lamang sa mga junior at sa front end lamang. Samakatuwid, nagpasya kaming subukan ang pangalawang hypothesis - tungkol sa gawain sa pagsubok.

Ano ang mahalaga para sa amin sa pagsusulit:

  1. Bumuo ng isang mahusay na scalable na arkitektura, ngunit walang overengineering;
  2. Mas mainam na magtagal, ngunit gawin ito nang maayos, kaysa sa pagsasama-sama ng isang bapor sa magdamag at ipadala ito na may komentong "Tatapusin ko talaga ito";
  3. Ang kasaysayan ng pag-unlad sa Git ay ang kultura ng engineering, umuulit na pag-unlad at ang katotohanan na ang solusyon ay hindi tahasang kinopya.

Sumang-ayon kami na gusto naming tingnan ang isang algorithmic na problema at isang maliit na web application. Ang mga algorithm ay inihanda sa antas ng elementarya na mga laboratoryo - binary na paghahanap, pag-uuri, pagsuri para sa mga anagram, nagtatrabaho sa mga listahan at puno. Sa huli, kami ay nanirahan sa binary search bilang isang unang pagsubok na opsyon. Ang web application ay kailangang tic-tac-toe gamit ang anumang framework (o wala ito).

Halos kalahati ng natitirang mga lalaki ang nakumpleto ang gawain sa pagsubok - ipinadala nila sa amin ang mga solusyon 54 kandidato. Hindi kapani-paniwalang pananaw - gaano karaming mga pagpapatupad ng tic-tac-toe, handa na para sa copy-paste, sa palagay mo ay mayroon sa Internet?

Бколько?Sa katunayan, tila mayroon lamang 3. At sa karamihan ng mga desisyon ay mayroong tiyak na 3 mga pagpipiliang ito.
Ang hindi ko nagustuhan:

  • copy-paste, o pag-develop batay sa parehong tutorial nang wala ang iyong sariling arkitektura;
  • ang parehong mga gawain ay nasa parehong imbakan sa iba't ibang mga folder, siyempre walang commit history;
  • dirty code, DRY violation, kawalan ng formatting;
  • isang pinaghalong modelo, view at controller sa isang klase na daan-daang linya ng code ang haba;
  • kakulangan ng pag-unawa sa pagsubok ng yunit;
  • ang "head-on" na solusyon ay isang hardcode ng isang 3x3 matrix ng mga panalong kumbinasyon, na medyo mahirap palawakin sa 10x10, halimbawa.

Binigyan din namin ng pansin ang mga kalapit na repository - ang mga cool na proyekto ng alagang hayop ay isang plus, at isang grupo ng mga pagsubok na gawain mula sa ibang mga kumpanya ay higit na isang wake-up call: bakit hindi makarating doon ang kandidato?

Bilang resulta, nakakita kami ng mga cool na opsyon sa React, Angular, Vanilla JS - mayroong 29 sa mga ito. At nagpasya kaming mag-imbita ng isa pang kandidato nang walang pagsubok para sa kanyang napaka-cool na pet projects. Ang aming hypothesis tungkol sa mga benepisyo ng mga gawain sa pagsubok ay nakumpirma.

Teknikal na Panayam

Para sa kumpanya: Hindi middle/seniors ang pumunta sa iyo! Kailangan natin ng mas indibidwal na diskarte.

Para sa junior: Tandaan na hindi ito pagsusulit - huwag subukang manatiling tahimik para sa isang C o bombahin ang propesor ng isang stream ng lahat ng iyong posibleng kaalaman upang siya ay malito at magbigay ng isang "mahusay".

Ano ang gusto nating maunawaan sa isang teknikal na panayam? Isang simpleng bagay - kung paano mag-isip ang kandidato. Siya ay malamang na may ilang mga mahirap na kasanayan kung siya ay nakapasa sa mga unang yugto ng pagpili - ito ay nananatiling upang makita kung alam niya kung paano gamitin ang mga ito. Napagkasunduan namin ang 3 gawain.

Ang una ay tungkol sa mga algorithm at istruktura ng data. Sa isang panulat, sa isang piraso ng papel, sa pseudo-language at sa tulong ng mga guhit, nalaman namin kung paano kopyahin ang isang puno o kung paano alisin ang isang elemento mula sa isang solong naka-link na listahan. Ang hindi kasiya-siyang pagtuklas ay hindi lahat ay nauunawaan ang recursion at kung paano gumagana ang mga sanggunian.

Ang pangalawa ay live coding. Nagpunta kami sa codewars.com, pumili ng mga simpleng bagay tulad ng pag-uuri ng hanay ng mga salita ayon sa huling titik at sa loob ng 30-40 minuto kasama ng kandidato na sinubukang ipasa ang lahat ng pagsusulit. Tila hindi dapat magkaroon ng mga sorpresa mula sa mga lalaki na pinagkadalubhasaan ang tic-tac-toe - ngunit sa pagsasagawa, hindi lahat ay napagtanto na ang halaga ay dapat na naka-imbak sa isang variable, at ang function ay dapat magbalik ng isang bagay sa pamamagitan ng pagbabalik. Bagaman taos-puso akong umaasa na ito ay isang pagkabalisa, at ang mga lalaki ay nagawang harapin ang mga gawaing ito sa mas magaan na mga kondisyon.

Sa wakas, ang pangatlo ay tungkol sa arkitektura. Tinalakay namin kung paano gumawa ng search bar, kung paano gumagana ang debounce, kung paano mag-render ng iba't ibang widget sa mga tip sa paghahanap, kung paano maaaring makipag-ugnayan ang front end sa back end. Mayroong maraming mga kawili-wiling solusyon, kabilang ang pag-render sa gilid ng server at mga web socket.

Nagsagawa kami ng 21 panayam gamit ang disenyong ito. Ang madla ay ganap na magkakaibang - tingnan natin ang mga komiks:

  1. "Rocket". Siya ay hindi kailanman huminahon, nakikibahagi sa lahat ng bagay, at sa panahon ng isang pakikipanayam ay sasabunutan ka niya ng isang daloy ng mga pag-iisip na hindi man direktang nauugnay sa itinanong. Kung ito ay sa isang unibersidad, ito ay isang pamilyar na pagtatangka upang ipakita, mabuti, ang lahat ng iyong kaalaman, kapag ang lahat ng natatandaan mo tungkol sa tiket na iyong nakita ay na kagabi ay nagpasya kang huwag pag-aralan ito - hindi mo pa rin makuha lumabas ito.
  2. "Groot". Medyo mahirap makipag-ugnayan sa kanya dahil Groot siya. Sa panahon ng isang pakikipanayam, kailangan mong gumugol ng mahabang panahon sa pagsubok na makakuha ng mga sagot bawat salita. Mabuti kung ito ay isang pagkahilo lamang - kung hindi, ito ay magiging napakahirap para sa iyo sa iyong pang-araw-araw na trabaho.
  3. "Drax". Nagtatrabaho ako noon sa cargo transport, at sa mga tuntunin ng programming natutunan ko lang ang JS sa Stackoverflow, kaya hindi ko palaging naiintindihan kung ano ang tinatalakay sa isang panayam. Kasabay nito, siya ay isang mabuting tao, may pinakamahusay na intensyon at gustong maging isang mahusay na front-end developer.
  4. Well, malamang "Panginoon ng Bituin". Sa pangkalahatan, isang mahusay na kandidato kung kanino ka maaaring makipag-ayos at bumuo ng isang dialogue.

Sa pagtatapos ng aming pananaliksik 7 kandidato umabot sa finals, na kinumpirma ang kanilang mga hard skills sa isang mahusay na gawain sa pagsubok at magagandang sagot sa interbyu.

Angkop sa kultura

Para sa kumpanya: Magtrabaho ka sa kanya! Ang kandidato ba ay handang magtrabaho nang labis para sa kanyang pag-unlad? Babagay ba talaga siya sa team?

Para sa junior: Magtrabaho ka sa kanila! Talagang handa ba ang kumpanya na mamuhunan sa paglaki ng mga juniors, o itatapon na lang nito sa iyo ang lahat ng maruming trabaho para sa mababang suweldo?

Ang bawat junior, bilang karagdagan sa pangkat ng produkto, na ang pinuno ay dapat sumang-ayon na kunin siya, ay makakakuha ng isang tagapayo. Ang gawain ng mentor ay gabayan siya sa isang tatlong buwang proseso ng onboarding at pag-upgrade ng mga hard skills. Samakatuwid, napunta kami sa bawat cultural fit bilang mentor at sinagot ang tanong na: "Aako ba ako ng responsibilidad para sa pagbuo ng isang kandidato sa loob ng 3 buwan ayon sa aming plano?"

Lumipas ang yugtong ito nang walang anumang mga espesyal na tampok at sa huli ay nagdala sa amin 4 alok, 3 sa mga ito ay tinanggap, at ang mga lalaki ay pumasok sa mga koponan.

Buhay pagkatapos ng alok

Para sa kumpanya: Alagaan ang iyong mga junior o iba pa!

Para sa junior: AAAAAAAAAAAA!!!

Kapag lumabas ang isang bagong empleyado, kailangan siyang ma-onboard - na-update sa mga proseso, sinabi kung paano gumagana ang lahat sa kumpanya at sa koponan, at kung paano siya dapat magtrabaho sa pangkalahatan. Kapag lumabas ang isang junior, kailangan mong maunawaan kung paano siya paunlarin.

Nang pag-isipan namin ito, nakabuo kami ng isang listahan ng 26 na kasanayan na, sa aming opinyon, dapat magkaroon ng isang junior sa pagtatapos ng tatlong buwang panahon ng onboarding. Kasama rito ang matapang na kasanayan (ayon sa aming stack), kaalaman sa aming mga proseso, Scrum, imprastraktura, at arkitektura ng proyekto. Pinagsama namin ang mga ito sa isang roadmap, na ipinamahagi sa loob ng 3 buwan.

Paano paamuin ang isang junior?

Halimbawa, narito ang roadmap ng aking junior

Nagtatalaga kami ng mentor sa bawat junior na nagtatrabaho sa kanya nang paisa-isa. Depende sa mentor at sa kasalukuyang antas ng kandidato, ang mga pagpupulong ay maaaring maganap mula 1 hanggang 5 beses sa isang linggo sa loob ng 1 oras. Ang mga mentor ay mga boluntaryong front-end na developer na gustong gumawa ng higit pa sa pagsulat ng code.

Ang ilan sa mga pasanin sa mga tagapagturo ay inaalis ng mga kurso sa aming stack - Dart, Angular. Regular na gaganapin ang mga kurso para sa maliliit na grupo ng 4-6 na tao, kung saan nag-aaral ang mga estudyante nang walang pagkaantala mula sa trabaho.

Sa loob ng 3 buwan, pana-panahon kaming nangongolekta ng feedback mula sa mga junior, kanilang mga mentor at nangunguna at isa-isang inaayos ang proseso. Ang mga pumped up na kasanayan ay sinuri ng 1-2 beses sa buong panahon, ang parehong pagsusuri ay isinasagawa sa dulo - batay sa mga ito, ang mga rekomendasyon ay nabuo sa kung ano ang eksaktong kailangang mapabuti.

Konklusyon

Para sa kumpanya: Sulit bang mag-invest sa juniors? Oo!

Para sa junior: Maghanap ng mga kumpanyang maingat na pumipili ng mga kandidato at alam kung paano bumuo ng mga ito

Sa loob ng 3 buwan, nirepaso namin ang 122 questionnaire, 54 na gawain sa pagsubok at nagsagawa ng 21 teknikal na panayam. Nagdala ito sa amin ng 3 mahuhusay na junior na nakumpleto na ngayon ang kalahati ng kanilang onboarding at acceleration roadmaps. Kinukumpleto na nila ang mga tunay na gawain ng produkto sa aming proyekto, kung saan mayroong higit sa 2 linya ng code at higit sa 000 na mga repository sa front end lamang.

Nalaman namin na ang funnel para sa mga junior ay maaari at dapat ay medyo kumplikado, ngunit sa huli ang mga taong talagang handang magtrabaho nang husto at mamuhunan sa kanilang pag-unlad ang dumaan dito.

Ngayon ang aming pangunahing gawain ay kumpletuhin ang tatlong buwang mga roadmap sa pag-unlad para sa bawat junior sa mode ng indibidwal na trabaho na may isang mentor at pangkalahatang mga kurso, mangolekta ng mga sukatan, feedback mula sa mga lead, mentor at ang mga lalaki mismo. Sa puntong ito, ang unang eksperimento ay maaaring ituring na natapos, ang mga konklusyon ay maaaring ilabas, ang proseso ay maaaring mapabuti at maaari itong simulan muli upang pumili ng mga bagong kandidato.

Pinagmulan: www.habr.com

Magdagdag ng komento