Pirmą darbą gauti sunku. Taip labai, kad didžioji dalis šio blogo kalba kaip tik apie tai (LinkedIn pirmam darbui, GitHub pirma darbui, kaip besimokant pasidaryti portfolio). Šįkart apie mėginimus gauti pirmą darbą, kuris nebūtinai yra skirtas naujokams.

Įprastai naujokai taiko į visokias praktikas arba junior darbo pozijas. Bėda ta, kad tą junior daug kas skirtingai supranta. Savamokslis herojus gali įsivaizduoti esąs junioras kai jau pramoksta sintaksę ir yra kažką girdėjęs apie OOP (kad ir ką tas OOP reikštų). Darbdavys gali tikėtis iš junioro dirbti savarankiškai, tik pastringant ir rašant gan prastą kodą (kad ir ką prastas kodas reikštų).

Pridėkim naujokų kiekio didėjimą (nes programavimo kursai), blogas buvusias patirtis su jais, resursų stoką mažose komandose, kitus apribojimus ir gausim dalį organizacijų nenorinčių samdyti visiškų naujokų. O jei dar kalba eina apie vietas su maža programuotojų paklausa (visa Lietuva išskyrus Vilnių ir Kauną), gali susidaryti įspūdis, kad naujokui gauti pirmą darbą yra neįmanoma.

Tai kur dėtis ir kaip gauti darbą kai visi aplink nori tik mid lygio programuotojų?

Niekas nenori būti aukle

Suvokdami kodėl dalis darbdavių kratosi naujokų, pagalvokim apie jų rūpesčius. Visokie ten "didžiausias įmanomas komandos greitis yra jos lėčiausio mechanizmo sistemoje greitis" yra tiesa. Naujokai yra ne tik rizika, bet ir beveik garantas, kad komandos greitis mažės.

Naujokai "trukdys" labiau patyrusius programuotojus savo klausimais. Rašydami painesnį kodą įterps daugiau klaidų, kurias vėliau reiks taisyti. Pull requestai suvalgys daugiau juos peržiūrinčių (tikėtina vertingiausių) programuotojų dėmesio.

Aišku, jei naujokas per kelias savaites ar mėnesius taps naudingas (dažnai nerealistiška), rizika atsipirks. Iš anksto įvertinti ar naujas žmogus sugebės greit (ar iš vis) įsibegėti yra beveik neįmanoma. Tikriausia todėl daug kas ir neketina prasidėti su naujokais.

Ai, dar pridėkim ir tai, kad ne visos kompanijos turi pakankamai resursų naujokus mokyti. Jei mes turim tik 3 programuotojus, tai vienam jų duoti mokyti juniorą gali būti baisoka. O jei dar tas junioras tikriausia po pusmečio ar metų pabėgs?

Kaip pakanakamai priartėti prie mid lygio

Esu visiškai įsitikinęs, kad didelė dalis "tik mid" samdančių įmonių priimtų ir tinkamus juniorus. Jei tik juniorai sugebėtų kuo labiau sumažinti riziką juos samdyti. Apie darbdavio rizikos sumažinimą rašau šiam poste.

Svarbu suvokti, kad dažnai patirties metų skaičius yra realiatyvus sugebėjimų matavimo būdas. Lyg koks filtras, kurį ieškodami specialistų pasirenka darbdaviai. Matydamas 1-2 metų darbo patirtį aš bent žinosiu, kad tas žmogus kažką veikė ir dirbo toje srityje.

Be oficialios patirties man gali būti sunku įvertinti ką tas žmogus yra nuveikęs. O kas jei šitai įvertinti būtų lengviau? Jeigu tas žmogus turėtų įrodymus, kad gali nuveikti tą patį (arba beveik tą patį) ko tikiuosi iš 1-2 ar 3 metų patirtį turinčio specialisto?

Veikdami teisingus darbus, mes galim ne tik priartėti prie mid lygio, bet ir turėti savo sugebėjimų įrodymus.

Trys klausimai taikant į "tik patyrusiems" skirtas darbo vietas

Galima nusiminti, kad "nėra darbo", galima sugalvoti kaip šitą bėdą spręsti. Jei nėra galimybės keltis arčiau darbų, gal yra galimybė tapti kvalifikuotam vietoj esantiems darbams?

Galima nusitaikyti į kelis potencialius darbdavius ir stengtis patapti jiems patraukliu specialistu. Kad būtų paprasčiau, įsivaizduokim išgalvotą, bet tikrovišką pavyzdį.

Tarkim noriu dirbti startupe, kurie leidžia užsirezervuoti elektromobilių pakrovimo stoteles.

Ką jie turi? Appsai telefonams ir web'inė versija. Kalendorius, žemėlapis, apmokėjimai. Ieško React programuotojo su 2-3 metais patirties. Skelbime parašyta, kad React Native ir NodeJS žinios yra pliusas.

Pabūnu šiek tiek šerloku ir sugalvoju, kad reikia frontenderio vystyti jų Reactus. Pabūnu dar gudresnis, kad suprasčiau galimybes prisidėti ir prie native appsų, ir prie backendo rašymo. Dabar kai jau nutuokiu ką ten reiks veikti, galiu paklausti savęs trijų kvalifikacinių klausimų.

1. Ar aš galėčiau visiškai savarankiškai įgyvendinti jų vykdomus projektus?

Ar galėčiau pats parašyti su React'u tokį web application'ą kurį turi mūsų įsivaizduojamas startupas? Klausimas gan platus, bet mes kiekvienas jaučiam savo sugebėjimus. Ar baisiai man atrodo ta žemėlapio dalis? O kalendorius, apmokėjimai?

Šiuo klausimu aš tiesiog įvertinu savo galimybes. Jei net neįsivaizduoju nuo ko pradėčiau, tai gal man ten dar per anksti. Jei žinau ką reiktų daryti, kokias bibliotekas naudoti, gal esu ką nors panašaus veikęs, galiu eiti prie kito klausimo.

2. Ar esu ką nors panašaus veikęs?

Tai čia tas suktas klausimas. Iš esmės, aš klausiu "ar turi 2-3 metus patirties". Jau aptarėm, kad patirties metai nėra geriausias būdas įvertinti sugebėjimus, bet duoda bent šiokį tokį situacijos suvokimą.

Mano tikslas yra kaip galima labiau suminkštinti metų skaičiaus svarbą. Neturėdamas reikiamo kiekio patirties, gal bent galiu turėti reikiamą patirties kokybę ir tinkamumą? Gal esu padaręs puslapį šunų vedžiotojams, kuriuos klientai gali užsirezervuoti kai tie laisivi, o jų darbo vietos pažymėtos custom žemėlapyje?

Bandau užsiminti, kad ne taip svarbu kiek oficialiai patirties turi, jei turi jos tinkamos ir kokybiškos. Einam prie trečio klausimo.

3. Ar esu apie tai kam nors pasakojęs?

Ar šunų vedžiotojų puslapis veikia ir yra viešai prieinamas? Gal juo net kas nors naudojasi?

Mums reikia patirties įrodymų. Tokių kuriuos pamatę, pradėtų svarstyti ar verta imti į komandą lipdyti elektromobilių appso. Galima rodyti kodą, veikiantį projektą, o geriausia abu. Čia kalba apie portfolio, GitHub'ą, gal klientų ar vartotojų atsiliepimus.

Įvertinęs savo sugebėjimus galiu rasti ir atsiminti konkrečią norimam darbui tinkamą patirtį. Taip galiu sugalvoti kaip pademonstruosiu savo sugebėjimus.

Kas jei negaliu į visus tris klausimus atsakyti teigiamai?

Jei nemanai sugebėsiąs, tai gali pradėti galvoti ką mokytis, kad sugebėtum. Pripažinkim, kad negalėdamas atsakyti į pirmą klausimą, esi gan toli nuo darbų kur prašo 2-3m patirties. Metų tam ir reikalaujama, kad atkristų laimės ieškantys, bet neturintis reikiamos kvalifikacijos žmonės.

Šiuo atveju teisiog reikia mokytis toliau. Net jei atrodo, kad jau mokaisi amžinybę, vis tiek reikia mokytis daugiau. Arba taikyti į darbus, kurie reikalauja to ką jau esi išmokęs.

Jei nesi nieko panašaus daręs, didelė tikimybė, kad neturi reikiamos patirties. Niekur nepabėgsi, reikia jos kaip nors įgauti.

Neturėjimas kaip pademonstruoti turimą patirtį atrodo lengviausiai ištaisoma problema. Reikia prisiminti ką veikei, atsiminti ką išmokai, kas buvo sudėtinga, kas lengva. Jei įmanoma, reikia įmesti kodą viešai. Kad jau neturi oficialios darbo patirties, tai kodas tikriausia nėra pakištas po visokiais NDA.

Nesvarbu į kurį klausimą negali atsakyti teigiamai, gerai, kad visi jie reikalauja tų pačių veiksmų. Dar geriau, kad tie veiksmai duos pasitikėjimo savo veiksmais, realios patirties ir tos patirties įrodymų. Tai jau anksčiau minėti asmeniniai projektai.

Dar nesukūrei to šunų vedžiotojų puslapio? Dabar gal jau pats metas pradėti 😃

Nėra stebuklingo recepto

Ši strategija tikriausia neveiks darbams, kur tikrai reikia 3 metų patirties. Tiesa ta, kad daugumoj tų pozicijų reikiamos patirties kiekis yra gan lankstus reikalas. Vietos atsiras ir mažiau patirties turinčiam kandidatui su tinkamais duomenimis, motyvacija ir geru potencialu. Mes kaip tik ir lošiam šią kortą.

Tai, ką čia aprašiau yra akivaizdus būdas gauti darbą skirtą labiau patyrusiems. Tiesiog reikia įgauti daugiau patirties, tą patirtį parodyti, o tada viltis, kad kažkas tavim patikės.

Pats tiesiausias būdas įgauti patirties yra laisvalaikio projektai. Darai kažką panašaus, ko reiks būsimam darbe. Tikram mid'ui patapti gal užtruktų per ilgai, tie 2-3 metai niekur nepabėgtų, bet patapti darbdaviams įdomiu ir samdytinu junioriu tikrai padės.

Turiu keletą rekomendacijų postams apie laisvalaikio projektus: