Programuotojo profesija

Programuotojo profesija


Ne paslaptis, jog šiandien programuotojo profesija yra tarp perspektyviausių, geriausiai apmokamų ir paklausiausių rinkoje. Todėl darosi įdomu išgirsti iš pirmų lūpų, kaipgi atrodo įprasta tokia profesija užsiimančio žmogaus diena, su kokiais iššūkiais susiduriama ir, ar visgi verta imtis šio darbo? O galbūt tai gali ne visi? uxas.com komandos programuotojai mielai dalijasi savo patirtimi ir atsako į pateiktus klausimus.

Tad pradėkime nuo pradžių. Įdomu, kas mūsų pašnekovus paskatino pasirinkti būtent programuotojo kelią?

Artjomas dalijasi, kad kompiuterinės technologijos jį visuomet žavėjo. Jis turėjo norą dirbti protinį darbą, o šioje srityje galvą pasukti tenka neretai. Artjomas įvardija ir dar vieną pliusą, paskatinusį rinktis šį kelią – kaip ir daugeliui, jam darbo lankstumas vietos atžvilgiu buvo labai svarbus aspektas, o čia pakanka po ranka turėti kompiuterį. Žinoma, pirmiausia motyvacija kyla iš vidinio noro domėtis šia sritimi savo malonumui. Juk geriausi srities specialistai yra tie, kuriems darbas nėra vien darbas, o ir tam tikra savirealizacija.

Akivaizdu, užsidegimas mokytis visuomet didesnis, kai domiesi tuo, kas natūraliai traukia. Dauguma pašnekovų ilgą laiką tikslingai siekė susieti savo ateities darbą su mėgstama ir jiems įdomia veikla, o kiti pasuko šia linkme norėdami pokyčių. Pavyzdžiui, uxas.com vadovas, Žilvinas, pasakoja, kad programuoti norėjo jau nuo 13 metų. Mokytis jis pradėjo 2000-aisiais, kai gavo pirmą savo kompiuterį, „Pentium I“. „Žaidimų nedaug pasileisdavo, bet jo užteko, kad galima būtų laužyti (crack'inti) programas. Turėjome trijų aktyvistų būrelį savo laidoje, tai su jais ir keisdavomės patirtimi. Paskui pradėjom mokytis programuoti ir hack'inti sistemas,“ – prisimena Žilvinas. 

Vieni pašnekovai, kaip Žilvinas, šioje srityje sukasi jau ne pirmus metus, tad turi sukaupę nemažą bagažą patirties, o kiti – vis dar yra intensyviame mokymosi procese. Tačiau iš tikrųjų mokymosi procesas čia nesibaigia niekada. 

Kokį mokymosi būdą pasirinkti?

Kalbant apie mokslus, visuomet išryškėja du keliai. Vieni mano, jog universitetas, kolegija, ar kiti kursai yra labai svarbus pagrindas prieš imantis savarankiško problemų gvildenimo ir šių bazinių žinių įgauti būtina. Tačiau yra ir tokių, kurie ryžtasi mokytis praktikuodamiesi. Pasisekė, kad savo komandoje turime ir tokių, ir tokių atvejų.

Gytis programavimo mokytis pradėjo prieš 3 metus. Nors prieš tai ir dirbo srityje, nesusijusia su kompiuterinėmis technologijomis, jautė, kad čia save realizuotų daug labiau. Tad susiklosčius mažiau ar daugiau palankioms aplinkybėms jis nusprendė surizikuoti ir imtis šios, tada dar menkai pažįstamos, veiklos. Pasirinkęs „BIT“ siūlomus programavimo kursus, Gytis gavo rimtą įvadą į programavimą. Nors už kursus reikėjo susimokėti pačiam, jam tai tapo paskata dar labiau stengtis. Žinoma, taip pat reikėjo rūpintis šeima ir kuo greičiau pradėti dirbti, atsistoti ant kojų. Pirmieji mokymosi metai nebuvo lengvi – kaip prisimena pašnekovas, per parą jis tam skirdavo apie 16 val. Laimei, pastangos atsipirko ir mokslus jis baigė su pagyrimu. Tačiau to dar nebuvo gana, todėl jis ir toliau lankė privačias pamokas pas vieną iš kursus dėsčiusių lektorių. Ir, po kiek mažiau nei vienerių metų nuo mokslų pradžios, Gytis susirado pirmąjį oficialų programuotojo darbą.

Vladimiras, Artjomas ir Karolis ėjo kiek kitokiu mokymosi keliu. Iš tikrųjų, Vladimirui ir Artjomui labai pasisekė, nes šalia turėjo didelę patirtį sukaupusių žmonių, kurie pasiryžo pasidalinti savo žiniomis ir juos mokyti, o papildomos informacijos jie ieškojo ne kur kitur, kaip interneto platybėse – juk ten galima rasti tiek daug!

Na, o Karolis buvo savarankiškas mokinys. Jis pasakoja, kad nusipirko „PHP“ programavimo kalbos knygą ir ją perskaitęs pradėjo savo pirmuosius projektus, o daugiau mokymuisi reikalingos informacijos jis rado internete (pvz., „Youtube“). Žinoma, daugiausia jis išmoko savo žinias pritaikydamas praktinėse situacijose.

Svarbu suprasti, kad nėra vieno teisingo ar idealaus mokymosi metodo. Jis turi būti derinamas pagal žmogaus sugebėjimus ir savybes, o gal net ir galimybes. Kiekvienas informaciją pasisaviname skirtingu greičiu ir skirtingais būdais, todėl pirmiausia reikėtų pažinti save ir surasti sau tinkamiausią būdą mokytis.

Kokie iššūkiai tyko pirmajame darbe?

Ėmusis naujos srities, net ir po daug laiko praleidus prie mokslų, pirmasis darbas būna kupinas iššūkių ir neišvengiamų klaidų. Kaip savo pirmuosius darbus prisimena mūsų programuotojai?

Igoris: „Pirmą darbą rasti nebuvo sudėtinga, tačiau pirmi projektai ir užduotys užėmė labai daug laiko, buvo sunku. Bėgant laikui viskas ėjosi vis lengviau ir lengviau“.

Artjomas: „Pirmas mano darbas buvo gana lengvas – turėjau sukurti svetainę, naudodamasis „PrestaShop“ platforma, tačiau tai teko padaryti 5 kartus, nes įvyko diegimo klaida. Galiausiai rankiniu būdu turėjau ištaisyti klaidas, o tai užtruko daug laiko. Pradžioje Prestashop programavimas nebuvo lengvas dalykas“.

Karolis: „Pirmą darbą susiradau gana lengvai, nes tai buvo prieš 7-8 metus, tada dar nebuvo tiek daug „junior“ programuotojų, dabar visi pabaigę akademijas ieško darbo, o tą padaryti nelengva be jokios patirties“.

Vladimiras: „Pirmą darbą vertinu kaip pačią geriausią darbo patirtį, nes per trumpą laiko tarpą teko išmokti labai daug.“

Gytis: „Pirmasis projektas buvo didelis, dideli duomenų srautai, tuo metu mokėjau tik elementarius dalykus, o teko optimizuoti dideles duomenų struktūras, todėl su tokia užduotimi, neturint patirties, susitvarkyti buvo sunku“.

Žilvinas: „Įsidarbinau pirmame kurse, tuo metu man buvo 18 metų. Mane pasamdė nedidelė įmonė, kurios vienintelis programuotojas turėjo išeiti iš darbo ir jie neturėjo kitų pasirinkimų, bet net ir tada suveikė rekomendacija. Mane parekomendavo mano bendrakursis, pažinojęs įmonės direktorių. Iššūkių buvo daug, nes patirties turėjau mažai. Buvau daręs tik porą savo sugalvotų projektų, vieną savanorišką projektą, kuris vadinosi Gildija.lt, ten buvo kaip socialinis programuotojų tinklas, ir vieną komercinį projektą (kaip laisvai samdomas darbuotojas) vienai kabelinės televizijos kompanijai, savo klientams valdyti“.

programuotojas


Kada užtenka mokytis?

Jei manote, kad pasiekus tam tikrą lygį toliau mokytis nebereikia – klystate. Net ir patyrusiam programuotojui bene kasdien tenka ieškoti problemų sprendimo būdų internete ar konsultuotis su kitais programuotojais ir čia nėra nieko neįprasto. Prakalbus apie kasdienes problemas, Igoris teigia, kad jos dažniausiai ir iškyla todėl, kad nepakanka žinių, kaip dirbti su tam tikra sistema, todėl tenka daug laiko skirti informacijos paieškoms ir gilinimuisi. Karolis pasakoja, kad dažniausiai sudėtingiausia perimti senus arba nekokybiškai suprogramuotus projektus. UXAS.COM programuotojai tikina, kad kiekvienas projektas yra savaip unikalus, taigi, reikalauja skirtingų metodų pritaikymo, o kliūtis, iš pradžių pasirodžiusi esanti lengvai išsprendžiama, gali pasiglemžti ne vieną valandą, praleistą naršant ir aiškinantis, kurgi tas šuo pakastas. Žilvinas dalijasi savo patirtimi: „Įprastai problemos paprastos. Dažniausiai tai yra kokia nors kvaila loginė ar „mistype“ klaida, kurios tenka ieškoti valandomis“. Tačiau taip pat jis priduria, kad būna ir tokių atvejų, kai problemos kyla bandant keisti sau nepažįstamą kodą, kuris būna suprogramuotas labai įmantriai, norint pasipuikuoti, ir duoda patarimą: „Kaip mano vienas geras pažįstamas sako, jeigu kažkokios dalies nesigauna padaryti per 20 minučių, tai geriau ją palikti ir grįžti po kelių valandų. Šis metodas tikrai labai efektyvus“.

Kokių savybių reikia šiam darbui?

Turbūt jau gana aišku, kad programavimu užsiimantis žmogus turi būti smalsus ir netingėti nuolatos mokytis, kapstytis giliau, ieškoti problemos šaknų. Tačiau kokias dar asmenines savybes imdamasis šios profesijos žmogus turi turėti, o gal išsiugdyti? Visi paklausti šio klausimo kaip vienas atsakė, kad reikia daug kantrybės, susikaupimo, motyvacijos, loginio mąstymo ir disciplinos. Programavimas skamba kaip labai atsakingas, kruopštus ir gana sunkus darbas. Taip ir yra. Tačiau nepaisant to, visi pašnekovai tvirtina, kad džiaugiasi pasirinkę šį kelią, nes dirba vienoje perspektyviausių sričių, kur darbas nespėja nusibosti, nes nuolat atsiranda naujovių! Čia jie kasdien lavina savo mąstymą, atranda ir realizuoja save.

Kodėl darbas nėra vien tik darbas?

Reikia nepamiršti, kad programuotojai padeda daugybei žmonių įgyvendinti savo verslo idėjas ar net svajones, bei sukuria pridėtinę vertę visuomenei. Seniau Artjomui kildavo klausimas, kuo gi jis pasitarnauja kitiems užsiimdamas šia veikla? Kokia iš to nauda? Tačiau vėliau jis suprato, kad kad jo darbas yra naudingas kaip ir daugelis kitų –  jis padeda žmonėms sukurdamas interneto svetainę, kur kiti galėtų rasti naudingos informacijos, ar netgi kažko išmokti. Tai dar vienas dalykas, kuris jį motyvuoja šiame darbe. O štai Žilvinas ragina nepamiršti, kad nors ir programuotojo profesija yra labai įdomi, dienos pabaigoje vis tiek būtina turėti asmeninio tobulėjimo planą ir siekti jį įgyvendinti. Darbas yra tik priemonė, bet ne galutinis tikslas žmogaus gyvenime.

Kokią programavimo kalbą pasirinkti?

Planuojant tapti programuotoju, vienas iš dalykų, kuriuos reikia išsiaiškinti, tai programavimo kalba, kurią ketinate mokytis. Mūsų programuotojai pasakoja, su kokiomis programavimo kalbomis jie dirba, arba yra tekę susidurti:

Žilvinas: „Daugiausia dirbau su svetainių technologijomis, bet per gyvenimą teko daug ko pabandyti: „PHP“, „Java“, „JavaScript“, „C++“ ir „C“ programavimo kalbas. Dabar atrodo, kad esu jau kitam, kažkokiam „meta“ lygmeny, kur nesvarbu, kokios programavimo kalbos, sprendimo būdai priklauso nuo problemos“.

Karolis: „Pagrindinė kalba „PHP“, bet bėgant metams teko išbandyti įvairias: „Java“, „JavaScript“, „Python“, „Go“. Iš tikrųjų, jei bent vieną programavimo kalbą išmanai gerai, pakankamai lengva adaptuotis prie kitų. Kitas kalbas pasirinkau dėl smalsumo, norėjau jas išbandyti, kad turėčiau bendrą suvokimą, kaip jos veikia“.

Vladimiras: „Naudoju „CSS“ ir „HTML“ kalbas, būtinas svetainių kūrimui“.

Artjomas: „Naudoju „CSS“ ir „HTML“ kalbas, tačiau daugiau dirbu su paprastesniais įrankiais, reikalingais SEO optimizacijai“.

Gytis: „Dirbu su „PHP“, „JavaScript“, „CSS“ ir „HTML“. Taip pat dirbu su atitinkamais „framework‘ais“. „PHP“ pasirinkau kaip pagrindinę kalbą dėl jos populiarumo ir galimybių susirasti darbą“.

Igoris: „Dirbu daugiausia su „PHP“, „JavaScript“ ir „SQL“, o „C++“ ir „Python“ programavimo kalbas mokiausi mokykloje ir laisvu laiku“.

Ar dirbtinis intelektas susijęs su darbo perspektyvomis?

Dar pakankamai neseniai pažinome ir pirmą kartą netgi turėjome galimybę kiekvienas savarankiškai paragauti dirbtinio intelekto generuojamų vaisių. Šie savo pajėgumu nustebino visą pasaulį ir, aišku, privertė susimąstyti, o gal net ir sunerimti, kokias žmogaus atliekamas veiklas ateityje jis galėtų pakeisti? Jau dabar dirbtinis intelektas padeda atsakyti į sudėtingus klausimus, išspręsti užduotis ar net sukurti teminius vaizdo klipus. O kokia nuotaika vyrauja šioje srityje? Nors yra pasvarstymų, kad dirbtinis intelektas iš tikrųjų galėtų pakeisti programuotojus, uxas.com programuotojai kol kas neskuba baimintis, kad jų darbo vietų neliks ir sako, kad perspektyvos šioje srityje gal būt net ir didės, nepaisant diegiamų naujovių. Ypač vertingi yra daug patirties sukaupę programuotojai, kurių paklausa rinkoje nuolatos auga. Gali būti, kad dirbtinis intelektas ateityje taps puikiu darbo įrankiu programuotojams ir palengvins jų kasdienybę. Per kelis artimiausius metus gali žymiai supaprastėti visas programavimo procesas (tai vyksta jau dabar), galbūt nebereikės tiek daug išmanyti, nes dirbtinis intelektas kodą rašo greitai ir kokybiškai. Gyvename skaitmeniniame pasaulyje, o bėgant laikui darbo jėgos, gebančios kurti įvairias sistemas ar svetaines reikės vis daugiau.

Turbūt mūsų programuotojams dirbtinis intelektas ir naujovės nebaisios dar ir todėl, kad jie dirba srityje, kuri ne tik skatina, bet ir kuria naujoves. O uxas.com komanda yra intovatyvi ir linkusi technologijas pažaboti bei pritaikyti savo reikmėms, kad galėtų sukurti kuo didesnę naudą visiems, esantiems aplinkui.

dalintis
vector
vector