Nuolatos programuokite (kaip gauti programuotojo darbą)

Būkite atviri – ar jūs esate geras kandidatas į programuotojo poziciją? Pagal ką jūs save vertinate? Kiek skirtingų įmonių pokalbiuose teko dalyvauti? Koks jūsų interviu ir darbo pasiūlymo santykis? Pamėginkite šią formulę (ji, žinoma, išgalvota, tad nežiūrėkite labai rimtai):

# x = įmonių skaičius, kurių atrankose dalyvavote
# y = skaičius gautų darbo pasiūlymų
vertė = 100 * ln(x) * y / x

Jeigu vertė < 90, jums derėtų paskaityti šį straipsnį. Jei vertė > 120, skaityti nereikia, na bet vis tiek rekomenduojame.

Techniniai patarimai, kaip gauti programuotojo darbą

  1. Nuolatos programuokite. Kuo daugiau kodo rašote, tuo geresnis tampate – tai savaime suprantama. Rašydami kodą jūs praktikuojatės, o geriausia praktika yra sufokusuota praktika. Turėkite aiškius tikslus, tirkite naujas idėjas ir kelkite sau iššūkius. Su laiku jus susikursite savo portfolio su baigtais ir nebaigtais projektais. GitHub yra puiki vieta eksponuoti savo darbus. Nepamirškite – kuo daugiau skirtingų projektų turėsite, tuo kokybiškesnis bus jūsų portfolio.
  2. Įvaldykite bent vieną daugiaparadigminę kalbą. Kalbos įvaldymas jums duoda gerą perspektyvinį suvokimą. Kad tai padarytumėte, reikia rašyti daug kodo, daug skaityti, išmokti bendrąsias praktikas. Idealiai programavimo kalba turėtų tūrėti plačią bendruomenę, daug pavyzdinio kodo ir būti pakankamai populiari. Geri kandidatai būtų C#, C++, Java, PHP, Python ir Ruby.
  3. Žinokite algoritmų niuansus. Perskaitykite šia paruoštukę(anglų kalba). Tada įsitikinkite, jog suprantate, kaip viskas veikia. Tada pasimokinkite implementuoti populiariausius algorimtus, tokius kaip Dijkstra, Floyd-Warshall, Keliaujančio pirklio uždavinį, dvejetainės paieškos, bubble/selection/insertion sort algoritmus. Jeigu mokate anglų kalbą, perskaitykite šį straipsnį.
  4. Išradinėkite dviratį. Implementuokite dažniausiai vartojamas struktūras savo pasirinktoje programavimo kalboje. Nesiremkite standartinėmis bibliotekomis. Patys implementuokite ir testuokite elementarius ADT (dėklą, eilutę, sąrašą), dvejetainius medžius, paieškos medžius ir t.t.
  5. Spręskite žodines problemas. Svarbiausia yra suprasti esmines programavimo sąvokas. Praleiskite bent 40 valandų rašydami sprendimus skirtingų tipų problemoms. Vienas geriausiu resursų tam yra TopCoder. Paskaitykite čia (anglų kalba). Tada mėginkite spręsti problemas. Rinkitės tas problemas, kurios išbandytų jūsų gabumus implementuojant rekursines funkcijas, dinaminį bei objektinį programavimą. Esmė yra nuolatos mokytis ir kartoti sprendimus, kad juos žinotumėte ir galėtumėte pritaikyti bet kurioje situacijoje.
  6. Padarykite programavimą lengva užduotimi. Arba bent jau pasistenkite, kad taip atrodytų. Su laiku suprasite, kad programavimas yra pati paprasčiausia ir labiausiai suprantama darbo dalis būnant programuotoju. Sudėtingos dalys būnant programuotoju dažniausiai yra prieš ir po kodo rašymo. Pavyzdžiui, sumaketuoti būsimos programos, kurią rašysite, dizainą. Arba įsitikinti, jog tai, ką jūs jau suprogramavote yra pilnai veikiantis kodas, kurį galima perkelti į produkcinę aplinką.

Supraskite, jog programuoti priešais kitus gali būti nelengva ir baugu. Suraskite būdą praktikuotis kodo rašymą ant lentos ir programavimą poroje. Pasitelkite draugą ar kolegą, bandykite programuoti kartu, mėginkite jam ant lentos ar popieriaus paaiškinti kokį nors algoritmą ar problemos sprendimą.

Bendri, ne techniniai patarimai

  1. Žinokite, kodėl jūs ten. Jeigu jūs pakviestas į atranką įmonės, apie kurią jūs mažai žinote ir nepilnai nutuokiate, kuo jie užsiima ir kodėl – pradėkite nuo to. Programuotojai, kurie atlikinėja atrankos procesą, iš karto gali suprasti, jog jūs nežinote, kur patekote. Gerai tam pasiruoškite.
  2. Būkite užsidegęs. Jeigu jums nerūpi tai, ką darote, tai jūs nerūpėsite įmonėms. Galite jausti aistrą ne tik programavimui, bet ir kitiems dalykams. Kas jus veža? Gal tai skraidymas dronais? Gal žaidimų kūrimas? Nelabai svarbu, koks tai dalykas, bet svarbu, kad tai jus nuoširdžiai domintų.
  3. Nedarykite prielaidų. Klauskite, jeigu jums kažkas neaišku. Jeigu jūs nevisiškai įsitikinęs, ko jūsų konkrečiai paklausė, nebijokite pasitikslinti. Dažnai pasitaikinti praktika yra kai kandidatas į darbo poziciją neišsigrynina klausimo ir išsprendžia neteisingą problemą.
  4. Šypsokitės. Būkite užsivedę, laimingi ir pozityvūs. Bet nepersistenkite. Kaip minėjome ankščiau, žmonės dažnai priima staigius sprendimus. Palikite teigiamą pirmą įspūdį. Šypsenos yra užkrečiamos, pasinaudokite tuo.

Žinoma, nėra vieno auksinio būdo gauti programuotojo darbą. Bet pagrindinis žingsnis, kurį privalote daryti nuolatos, tai iš tiesų praktikuotis programuoti.