Pradžia / Kompiuteriai ir programinė įranga / Kelias į programuotojo karjerą be diplomo

Kelias į programuotojo karjerą be diplomo

Kodas nesiklausia, ar turi diplomą

Dar prieš dešimt metų pasakyti, kad tapsi programuotoju be universiteto diplomo, reiškė beveik tą patį, kaip pasakyti, kad ketini tapti gydytoju be medicinos studijų. Žmonės žiūrėdavo skeptiškai, tėvai nerimavodavo, o darbdaviai į CV be aukštojo mokslo žymės net nežiūrėdavo. Bet technologijų pasaulis keičiasi greičiau nei bet kuri kita industrija, ir šiandien situacija yra kardinaliai kitokia.

Didžiausios technologijų kompanijos pasaulyje – „Google”, „Apple”, „IBM”, „Meta” – oficialiai atsisakė reikalavimo turėti bakalauro laipsnį daugeliui programuotojo pozicijų. Lietuvoje irgi matome tą patį poslinkį: startuoliai, IT įmonės ir net didesnės korporacijos vis dažniau žiūri į portfelį ir gebėjimus, o ne į diplomo spalvą. Tai nereiškia, kad kelias lengvas – bet jis tikrai egzistuoja.

Šis straipsnis skirtas tiems, kurie rimtai svarsto apie programuotojo karjerą, bet dėl vienokių ar kitokių priežasčių universitetas nėra jų planas. Gal jau dirbate ir neturite laiko studijoms. Gal studijų kaina tiesiog per didelė. O gal tiesiog žinote, kad mokotės geriau praktiškai. Nesvarbu – čia rasite konkrečius žingsnius, ne motyvacines frazes.

Pirmiausia – sąžiningas pokalbis su savimi

Prieš pradedant kalbėti apie kursus, resursus ir darbo paiešką, reikia sustoti ir atsakyti į keletą nepatogių klausimų. Programavimas nėra magiška sritis, kur visi uždirba šešiaženklį atlyginimą ir dirba pižamomis iš Bali. Tai darbas, reikalaujantis nuolatinio mokymosi, kantrybės ir gebėjimo sėdėti su problema, kuri neveikia, kelias valandas iš eilės.

Klausimai, kuriuos verta užduoti sau:

  • Ar man patinka problemų sprendimas? Ne tik tada, kai sekasi, bet ir tada, kai užstringa.
  • Ar galiu mokytis savarankiškai? Be diplomo kelio nėra struktūros, kuri stumdytų į priekį – tik jūs patys.
  • Kiek laiko per dieną galiu skirti mokymuisi? Realistiškai, ne optimistiškai.
  • Ar turiu finansinį buferį? Kelias iki pirmo darbo gali užtrukti nuo 6 mėnesių iki 2 metų.

Jei atsakymai į šiuos klausimus teigiami arba bent jau nesukelia panikos – puiku. Jei ne – geriau tai žinoti dabar, nei po metų intensyvaus mokymosi suprasti, kad šis kelias ne jums. Ir tai visiškai normalu.

Technologijų pasirinkimas: kodėl tai svarbiausia sprendimas pradžioje

Viena dažniausių klaidų, kurią daro žmonės, pradedantys programuoti savarankiškai, yra šokinėjimas nuo vienos technologijos prie kitos. Šią savaitę Python, kitą – JavaScript, dar po savaitės – „bet gal geriau Rust?”. Rezultatas – po trijų mėnesių žinote po truputį visko ir nieko konkrečiai.

Pradedantiesiems 2024–2025 metais praktinės rekomendacijos atrodo taip:

Jei norite greičiausio kelio į darbą – JavaScript ir web kūrimas (frontend arba fullstack). Rinka didžiausia, resursų daugiausia, portfelį galima sukurti greičiausiai. HTML, CSS, JavaScript, tada React arba Vue – ir jau turite pakankamai, kad galėtumėte pretenduoti į junior poziciją.

Jei traukia duomenys ir analitika – Python. Šiandien Python yra de facto standartas duomenų mokslui, dirbtiniam intelektui ir automatizavimui. Plius – tai viena draugiškiausių kalbų pradedantiesiems.

Jei domina mobiliosios aplikacijos – Flutter (Dart) arba React Native. Viena technologija, dvi platformos (iOS ir Android) – labai praktiška.

Jei traukia serverio pusė ir sisteminė logika – Java arba C# yra stabilūs pasirinkimai su didele darbo rinka, ypač Lietuvoje ir Baltijos šalyse.

Pasirinkite vieną kryptį ir laikykitės jos bent 6–12 mėnesių. Tai nereiškia, kad niekada nepersiorientuosite – bet pirmiausia reikia pasiekti tam tikrą gylio lygį, o ne plačiai brūžuoti paviršių.

Mokymosi keliai: nuo YouTube iki bootcamp

Čia prasideda tikrasis pasirinkimų labirintas. Resursų yra tiek daug, kad pats jų pasirinkimas gali tapti atidėliojimo priežastimi. Pabandykime tai susisteminti be bereikalingo romantizavimo.

Nemokamas savarankiškas mokymasis yra visiškai realus variantas, bet reikalauja daugiau disciplinos. Geriausi resursai:

  • freeCodeCamp – struktūruotas, nemokamas, su sertifikatais. Ypač tinka web kūrimui.
  • The Odin Project – vienas geriausių nemokamų fullstack web kūrimo kursų. Labai praktiškas.
  • CS50 (Harvard, nemokamas per edX) – jei norite suprasti kompiuterių mokslą iš pagrindų, ne tik sintaksę.
  • Codecademy – interaktyvus, tinka absoliučiai pradžiai, bet nemokama versija ribota.

Mokami kursai platformose kaip Udemy, Coursera ar Pluralsight dažnai kainuoja 10–20 eurų akcijų metu (Udemy akcijos vyksta beveik visada). Tai puikus santykis kainos ir kokybės. Konkretūs rekomenduojami kursai: Andrei Neagoie kursai Udemy platformoje, Angela Yu „100 Days of Code” Python kursas.

Coding bootcamp – intensyvūs 3–6 mėnesių kursai, dažnai su darbo paieškos pagalba. Lietuvoje veikia Turing College, Code Academy (ne ta pati kaip Codecademy), taip pat galima rinktis tarptautinius nuotolinius bootcamp. Kaina – nuo 1000 iki 10 000 eurų. Čia svarbu atidžiai patikrinti, koks procentas absolventų gauna darbą ir per kiek laiko – ne visi bootcamp yra vienodai veiksmingi.

Svarbus pastebėjimas: mokymosi platforma nėra svarbiausias veiksnys. Svarbiausias veiksnys – kiek laiko ir dėmesio jūs į tai dedate. Žmogus, kuris kiekvieną dieną po 2 valandas mokosi iš nemokamų YouTube video, pasieks daugiau nei tas, kuris nusipirko brangiausią bootcamp ir lanko jį pusiau širdimi.

Portfelis – jūsų diplomas be diplomo

Jei neturite formalaus išsilavinimo, portfelis tampa jūsų pagrindiniu įrankiu įrodant kompetenciją. Ir čia daugelis daro kritinę klaidą: baigia kursus, bet neturi ką parodyti, nes visi projektai buvo „tutorial” tipo – sekei instrukcijas žingsnis po žingsnio, bet nieko nesukūrei pats.

Geras portfelis turi keletą savybių:

Projektai turi spręsti realias problemas. „Todo app” yra gerai kaip pirmas projektas, bet jei tai vienintelis dalykas jūsų GitHub profilyje po metų mokymosi – tai problema. Geriau sukurti kažką, kas sprendžia jūsų paties gyvenimo problemą: automatizuoti kažką, sukurti įrankį, kurio jums trūksta, ar net paprastą žaidimą.

Kodas turi būti skaitomas. Darbdaviai žiūri į kodą, ne tik į galutinį rezultatą. Komentarai, aiški struktūra, prasmingai pavadinti kintamieji – visa tai svarbu.

README failai turi paaiškinti, kas tai yra. Kiekvienas projektas GitHub turi turėti aiškų aprašymą: kas tai, kodėl sukurta, kaip paleisti, kokios technologijos naudotos.

Kiek projektų reikia? Kokybė prieš kiekybę. Trys gerai padaryti projektai yra geriau nei dešimt pusiau baigtų. Minimalus rekomenduojamas skaičius junior pozicijai – 3–5 projektai, iš kurių bent vienas yra šiek tiek sudėtingesnis (pvz., su autentifikacija, duomenų baze, API integracija).

Taip pat verta apsvarstyti:

  • Prisidėti prie open source projektų – net maži pataisymai dokumentacijoje rodo iniciatyvą.
  • Sukurti asmeninę svetainę kaip portfelį – tai ir projektas, ir vizitinė kortelė vienu metu.
  • Rašyti techninius blog įrašus – tai parodo, kad suprantate, ką darote, pakankamai gerai, kad galėtumėte tai paaiškinti.

Darbo paieška be diplomo: kaip žaisti šį žaidimą

Gerai, turite portfelį, mokate programuoti – ir dabar reikia gauti darbą. Čia prasideda kita žaidimo dalis, kuri daugeliui atrodo pati sunkiausia. Ypač kai matai darbo skelbimus su „reikalaujamas bakalauro laipsnis informatikos srityje”.

Pirmas dalykas, kurį reikia suprasti: tie reikalavimai dažnai yra copy-paste iš senų skelbimų arba HR šablonų. Daug įmonių juos rašo automatiškai, bet realiai samdant žiūri į kitus dalykus. Tai nereiškia, kad reikia ignoruoti visus tokius skelbimus – bet nereikia jų bijoti.

Strategija, kuri veikia geriau nei masinis CV siuntimas:

Vietoj to, kad siųstumėte CV į šimtą darbo skelbimų ir lauktumėte, geriau investuoti laiką į tinklo kūrimą. LinkedIn profilis su aiškiai aprašytais projektais, aktyvumas programuotojų bendruomenėse (Discordas, Reddit, vietiniai meetup’ai), dalyvavimas hackathonuose – visa tai sukuria situacijas, kur žmonės patys kreipiasi į jus arba rekomenduoja.

Konkrečios rekomendacijos darbo paieškai:

  • Ieškokite startuolių ir mažesnių įmonių – jos dažniau vertina gebėjimus, o ne diplomus.
  • Apsvarstykite freelance kaip pradinį tašką – net maži projektai suteikia realios patirties ir kažką, ką galima parašyti CV.
  • Internship ir junior pozicijos – net jei atlyginimas mažas, tai investicija į patirtį.
  • Paruoškite atsakymą į klausimą apie išsilavinimą – nebūkite gynybiškas, bet aiškiai parodykite, ką pasiekėte savarankiškai.
  • Techniniai interviu reikalauja pasiruošimo – LeetCode, HackerRank, ar Codewars platformos padeda treniruotis algoritminiams uždaviniams.

Ir dar vienas dalykas, apie kurį retai kalbama: pirmą darbą gauti sunkiausia. Antras darbas – žymiai lengviau. Trečias – jau jūs renkate, o ne jus. Todėl pirmoji pozicija gali būti ir ne ideali – bet ji atidarys duris į viską, kas toliau.

Kliūtys, apie kurias niekas neįspėja

Būtų nesąžininga kalbėti tik apie galimybes ir neužsiminti apie realias kliūtis. Ne tam, kad atbaidytų, bet tam, kad žmonės eitų į šį kelią su atviromis akimis.

Impostor syndrome yra tikras ir stiprus. Kai neturi diplomo, jis dar stipresnis. Darbovietėje jausitės, kad visi kiti žino daugiau, kad esate „apsimetėlis”, kad jus tuoj „demaskuos”. Tai patiria beveik visi programuotojai, net tie su magistro laipsniais. Svarbu žinoti, kad tai normalu, ir mokytis su tuo gyventi.

Mokymosi krizės. Bus momentų – ir ne vienas – kai viskas atrodo per sudėtinga, kai kodas neveikia ir nežinote kodėl, kai pradeda atrodyti, kad galbūt šis kelias ne jums. Tai yra normali mokymosi proceso dalis, ne ženklas, kad reikia mesti. Programuotojai tai vadina „the dip” – ir beveik visi, kurie praėjo per tą tašką, sako, kad tai buvo prieš didelį progresą.

Socialinis spaudimas. Šeima, draugai, pažįstami – ne visi supras, kodėl metate stabilų darbą ar studijas dėl „kažkokio programavimo be diplomo”. Tai gali būti psichologiškai sunku, ypač ilgesnio mokymosi periodo metu, kai dar nėra apčiuopiamų rezultatų.

Finansinis spaudimas. Mokymosi laikotarpis gali trukti ilgiau nei planuota. Turėti finansinį buferį – bent 6 mėnesių išlaidų – yra ne prabanga, o būtinybė, jei norite mokytis be nuolatinio streso.

Kai kodas tampa karjera: gyvenimas kitoje pusėje

Žmonės, kurie praėjo šį kelią, dažnai sako tą patį: sunkiausia buvo ne išmokti programuoti, o patikėti, kad tai įmanoma. Ir kai gaunamas pirmas darbo pasiūlymas – tai ne tik profesinis pasiekimas, bet ir kažkas gilesnio. Įrodymas sau, kad savarankiškas mokymasis veikia, kad gebėjimai svarbiau nei popierius.

Bet karjera be diplomo turi ir savo specifiką tolimesnėje perspektyvoje. Kai kuriose įmonėse ar pozicijose (ypač korporatyviniame sektoriuje, valdžios institucijose ar akademinėje aplinkoje) diplomo nebuvimas vis dar gali būti kliūtis augimui. Todėl verta žinoti keletą dalykų:

Sertifikatai gali kompensuoti diplomą. AWS, Google Cloud, Microsoft Azure sertifikatai, taip pat specializuoti sertifikatai kaip „Certified Kubernetes Administrator” ar „Oracle Java Certification” yra plačiai pripažįstami ir parodo konkrečias kompetencijas. Jie nėra tas pats kas diplomas, bet daugelyje kontekstų yra vertingesni.

Specializacija padeda. Kuo toliau, tuo labiau verta tapti tikru ekspertu siauresnėje srityje – cloud infrastruktūra, kibernetinis saugumas, duomenų inžinerija, dirbtinis intelektas. Ekspertizė kompensuoja formalaus išsilavinimo trūkumą geriau nei bet kas kitas.

Nuolatinis mokymasis nėra pasirinkimas – tai sąlyga. Technologijų pasaulyje tai galioja visiems, bet tiems be diplomo – ypač. Kiekvienais metais skirti laiko naujiems įrankiams, kalboms, konceptams yra ne hobis, o karjeros higiena.

Galiausiai – ir tai galbūt svarbiausia – kelias į programuotojo karjerą be diplomo yra ne lengvesnis nei su juo. Jis yra kitoks. Reikalauja daugiau savidisciplinos, daugiau iniciatyvos, daugiau gebėjimo toleruoti neapibrėžtumą. Bet jis yra tikras, jis veikia, ir šiandien juo eina tūkstančiai žmonių visame pasaulyje – įskaitant Lietuvą. Klausimas tik vienas: ar esate pasiruošę dirbti, kai niekas jūsų nestumia?