Ilmselt kõige olulisem hea programmeerija omadus on väga hea loogilise mõtlemise võime.

Programmeerija

Programmeerija peas sünnivad seosed

Ametinimetusena kasutusel ka tarkvaraarendaja, tarkvarainsener, tarkvaraarhitekt, kasutajaliidese spetsialist.

Programmeerija töö on tarkvara loomine ehk kõik see, mida on vaja riistvara tööle panemiseks – programmid, mille abil arvuti suudab täita erinevaid ülesandeid, otsida teavet ning töödelda andmeid jm. Programmeerimiskeele väga hea omandamine on üks esimestest oskustest, mis on programmeerijana töötava Raimo Luurmanni sõnul vältimatu.

Erinevaid programmeerimiskeeli on tema sõnul olemas mitmed kümned (näiteks Python, PHP, C, Java). „Üldiselt liigutakse tänasel päeval selles suunas, et toimub spetsialiseerumine ning üks programmeerija teeb vaid ühte kindlat programmi osa. Arvuti ei pea olema üldse kogu nende elu,“ ütleb Raimo.

Ilmselt kõige olulisem hea programmeerija omadus on väga hea loogilise mõtlemise võime. Programmeerija peab oskama luua seoseid. „Ega programmeerija ei loo programmi arvutis, ta loob selle peas ja lihtsalt jäädvustab arvutisse,“ selgitab Raimo tavakeeles programmeerija mõttekulgu. “Hea loogik on suure tõenäosusega ka hea matemaatik, ent samas matemaatika valdamine ei ole heaks programmeerijaks saamise tingimusteta eeldus,“ annab ta oma jutuga kindlasti paljudele julgust. Kindlasti peab programmeerija olema ka punktuaalne, et vältida vigade teket.

Raimo sõnul on tavaprogrammeerimise kõrval levimas ka paarisprogrammeerimine, kus ühe arvuti taga istuvad kaks programmeerijat. „Ühe tunni jooksul üks programmeerib, teine jälgib ja kontrollib ning seejärel rollid vahetuvad.“ See aitab efektiivsust oluliselt tõsta. Kuigi taolise meetodi puhul muutub tähtsaks ka tiimitöö, on siiski tõsi ka see, et hea programmeerija võib töötada ka üksi ning infot saab läbi interneti vahetada kas või maailma teisest otsast.

Programmeerija peab suutma konkureerida kolleegidega, kes asuvad näiteks kusagil Aasias. „Ja sealne konkurents ei ole mitte hõre,“ toob ta lõpetuseks konkreetse võrdluse.

Raimo alustas arvutitega tööd peaaegu 30 aastat tagasi ning on loonud oma tarkvaraettevõtte ning programmeerinud uue, lihtsasti kasutatava ning soodsa majandustarkvara Umüük. Kooli ajal osales ta arvutiringis. Esialgu huvitas teda eelkõige riistvaraline pool, see tähendab arvutid kui elektroonilised seadmed. Hiljem Tallinna Polütehnikumis automaatikat õppides ehitas noormees ajakirjast saadud jooniste põhjal omale esimese arvuti ning kirjutas sinna peale ka esimese tarkvara.

Töökeskkond, väljavaated, palk

  • Programmeerija töötab kontoris. Ametlik tööaeg on enamasti viis päeva nädalas. Tööpäeva pikkus oleneb projektide hulgast, tähtaegadest ja tegevuse kavandamisest. Tööde tähtaja lähenemisel võib töökoormus suureneda ning aeg-ajalt võib tekkida vajadus teha tööd ka nädalavahetustel ja õhtuti, mis võidakse hüvitada vabade päevade või rahalise lisatasuga. Töö on vaimselt pingeline ja möödub põhiliselt istudes. Ohud on sundasend arvutiga töötamisel, koormus silmadele ja kätele.
  • Programmeerija amet avab palju uksi – mitmed tuntud ettevõtete juhid on alustanud oma karjääri just programmeerijana. IKT tööstusharu on tihedalt seotud teiste valdkondadega, mis tähendab, et spetsialistil on võimalik saada hea töökoht ükskõik millises tööstusharus alates IKT-ettevõtetest kuni muusika-, toiduaine- või näiteks puidutööstuseni. Paljud spetsialistid pakuvad oma teenuseid vabakutselisena oma ettevõtte alt.
  • Programmeerija töötasu oleneb tema oskustest, loodava süsteemi keerukusest ja kindlasti tehtud töö kvaliteedist. Töötasuks on üldjuhul põhipalk ja heade tulemuste eest ka tulemustasud. Üldiselt on programmeerijad hästi tasustatud.

Teadmised, oskused ja eeldused:

Erialased pädevused: tarkvara loomise süsteemide ja programmeerimiskeelte tundmine, teadmised testimisest, tarkvaralahenduste juurutamise oskus, laiahaardelised teadmised infotehnoloogiast.
Mõtlemisoskused:
loogiline, algoritmiline ja analüütiline mõtlemine, tehniline loovus, süvenemisvõime, õppimis- ja enesetäiendamistahe.
Emotsionaalsed soodumused ja suhtlemisoskused:
koostöö- ja kohanemisvõime, korrektsus ja täpsus, suhtlemisvalmidus, enesedistsipliin ja stressitaluvus, vastutustunne, orienteeritus tulemustele.

Kuidas saada programmeerijaks?

Üldhariduskooli õppeainetest tuleks suuremat tähelepanu pöörata matemaatikale, inglise keelele ja tööõpetusele. Töö eeldab kindlasti pidevat juurde õppimist ning enda harimist uutes tarkvaratehnika ja arenduse metoodikates. Programmeerija baasharidust saab omandada nii kutse- kui ka kõrgkoolis.

Koodikirjutamisoskust saab omandada:

  • Tallinna Tehnikaülikoolis, vt Arvutisüsteemide ja Informaatika õppekavad (bakalaureuseõpe) 
  • TTÜ, vt IT süsteemide arenduse eriala (rakenduskõrgharidus)
  • Tartu Ülikoolis, vt Informaatika ja Arvutitehnika erialad (bakalaureuseõpe)
  • Tallinna Ülikoolis, vt Informaatika eriala (bakalaureuseõpe)

Ennast täiendades ja töökogemust omandades on programmeerijatel võimalik karjääriredelil edasi liikuda tiimijuhiks, IT-juhiks või mõnele muule vastutusrikkale ametikohale.

Loe lisaks Haridusportaalist.

Uuri ka: Süsteemianalüütik, Tarkvaraarendaja

Kirjeldus on koostatud 2016. a Majandus- ja Kommunikatsiooniministeeriumi, SA Innove, Psience OÜ ja PR Strategies OÜ koostöös. Ametikirjeldused on koostatud Euroopa Sotsiaalfondi toel.