Ohjelmointi on ongelmanratkaisua

Tuomas Nokkalalle, 29, koodaus oli aluksi harrastus, eikä hän osannut ajatella sitä tulevana uravaihtoehtona. Lukion jälkeen urapohdinnat tulivat kuitenkin ajankohtaisiksi, ja opiskelualaksi valikoitui tietotekniikka.

Julkaistu 9.1.2019 Koulutusliitteessä   TEKSTI: Emma Niemi

Ohjelmointi on ongelmanratkaisua

Tuomas Nokkalalle, 29, koodaus oli aluksi harrastus, eikä hän osannut ajatella sitä tulevana uravaihtoehtona. Lukion jälkeen urapohdinnat tulivat kuitenkin ajankohtaisiksi, ja opiskelualaksi valikoitui tietotekniikka. Nykyään Tuomas tekee serveripuolen ohjelmointia Houston Inc. Consulting Oy:ssä. Vaikka moni mieltää koodarin työn epäsäännölliseksi, todellisuudessa se ei sitä aina ole.

Peruskoulun päätyttyä Tuomas opiskeli Kupittaan lukiossa Turussa, jonka jälkeen hän jatkoi Turun ammattikorkeakouluun opiskelemaan tietotekniikkaa hyvinvointiteknologia-painotuksella. Hän valmistui neljän vuoden opintojen päätteeksi nimikkeellä Insinööri (AMK). Viimeisen opintovuoden keväänä Tuomas oli harjoittelussa samalla kun hän viimeisteli opintojaan ja opinnäytetyötään.

– Koodaaminen oli minulle pitkään vain harrastus, enkä ajatellut tekeväni siitä uraa. Mietin opiskelevani jotain media-alaan liittyvää, mutta vähitellen ohjelmointi alkoi tuntua enemmän omalta jutulta, Tuomas sanoo.

Tuomas on työskennellyt alalla liki kahdeksan vuotta, joista valtaosa vierähti ohjelmistokehittäjänä terveydenhuoltosektorilla. Hän oli mukana erilaisten kehitysprojektien jatkokehityksessä – esimerkkeinä KanTa-arkistoon liittyminen ja eReseptin käyttöönotto.

– Tämän jälkeen otin vetovastuuta itselleni ja toimin pari vuotta Scrum-masterina sekä -arkkitehtinä lääkehoidon seurantaan liittyvässä sovelluksessa.

Koodarin työ jää osittain näkymättömiin

– Tämän vuoden alusta asti olen toiminut konsulttina. Olen osa projektitiimiä, joka on myyty asiakkaalle kehittämään uutta asiakasportaalia heidän loppukäyttäjilleen. Työssäni teen sekaisin arkkitehtuuri- ja ohjelmistokehityshommia sekä palvelumuotoilua. Suurin ero aikaisempaan työnkuvaani on suora yhteys asiakasrajapintaan.

Projektitiimi toimii puoliksi Turussa ja puoliksi Helsingissä. Lisäksi tiimiä tukee Product Owner, joka ohjaa tuotteen kehitystä asiakkaan osalta.

– Tiimi on jatkuvassa video- ja chat-yhteydessä, jotta työtehokkuus ei kärsi, vaikkemme olekaan fyysisesti samassa tilassa, Tuomas kertoo.

Tuomas on vastuussa portaalin serveripuolen arkkitehtuurista ja toteutuksesta. Sovelluskehityksessä ohjelmistokehittäjät erikoistuvat yleensä joko käyttöliittymäpuoleen (frontend) tai serveripuoleen (backend), mutta lisäksi alalta löytyy molemmat puolet hallitsevia Full-stack-kehittäjiä. Tuomas toimii serveripuolella.

– En siis ole juurikaan tekemisissä varsinaisen webbikäyttöliittymän tai mobiilisovelluksen ulkonäön kanssa, vaan hoidan sen mitä pellin alla tapahtuu. Nykyään nämä kaksi osa-aluetta ovat kylläkin alkaneet sulautua toisiinsa, joten työroolit muuttuvat, Tuomas lisää.

”IT-alan kulttuuri on parhaimmillaan sitä, että on täysin ok sanoa, jos ei tiedä tai osaa jotakin. Kieliä ja tekniikoita on niin paljon, ettei kukaan voi osata niitä kaikkia.”

Tuomas Nokkala

Säännöllinen päivärytmi pitää paletin kasassa

Tuomas haluaa pitää oman työaikansa säännöllisenä, vaikka työ sallisikin poikkeamat. Houstonilla tärkeintä ei ole säännöllinen työaika vaan se, että työskentelyrytmi toimii oman tiimin ja asiakkaan kesken saumattomasti.

– Aloitan normaalisti työpäivän viimeistään kahdeksalta ja lopettelen joskus kolmen ja viiden välillä. Moni työkaveri aloittaa työpäivän myöhemmin, mutta itse pidän tästä rytmistä. Joskus päivät venähtävät pidemmiksi, ja toisinaan jokin homma kuten vaikkapa päivitys tulee hoitaa normaalin työajan ulkopuolella.

Tuomaksen työnkuva mahdollistaa myös etätyöskentelyn.

– Töitä tulee tehtyä niin kotona kuin mökilläkin, mutta pääasiassa tykkään työskennellä toimistolla. Toiset projektit vaativat enemmän läsnäoloa kuin toiset, ja jotkut projektit vaativat työskentelyä asiakkaan tiloissa, Tuomas kertoo.

Koodarin työ ei ole yksinäistä

Työtehtävät voivat vaihdella paljonkin eri päivien välillä. Työpäivä sisältää koodaamista, ongelmanselvitystä, määrittelyä, suunnittelua ja infra-asioita. Rytmiltään Tuomas pyrkii silti pitämään päivät samanlaisina.

– Aamulla aamukahvia juodessa selaan sähköpostit, chatit ja sovelluksen lokit ja hälytykset. Jos päällä on ongelmatilanne, lähden ensimmäisenä ratkaisemaan sitä. Jos erityisiä hälytyksiä ei ole ja sovellus näyttää terveeltä, tarkistan järjestelmästämme, mitä ennalta suunniteltua ominaisuutta lähden seuraavaksi työstämään, Tuomas valottaa.

Aamupäivän aikana Tuomas hoitaa työtehtäviä – joskus yhtä kerrallaan, pahimmillaan pallotellen useamman eri homman välillä.

– Ideaalitilanteessa voin keskittyä yhteen asiaan parin tunnin ajan. Ennen lounasta pidämme aina jokapäiväisen pikacheckkauksen, jossa kertaamme kaikkien tiimiläisten työtehtävät, niiden vaiheet ja mahdolliset ongelmat.

– Se ei ole perinteinen kokous, sillä haluamme välttää juuri sitä. Itse nimitämme sitä ”daily-meetingiksi” tai ”stand-up meetingiksi”, sillä yleensä seisomme ringissä istumisen ja tietokoneen näpräyksen sijaan, Tuomas selventää.

Lounaan jälkeen iltapäivä menee erilaisten jokapäiväisten työtehtävien parissa. Osa hommista tehdään yksin, joitain juttuja katsotaan yhdessä työkaverien tai asiakkaan kanssa.

– Suurimpia poikkeuksia tavallisiin työpäiviin ovat reissut Helsinkiin, jolloin junamatka lohkaisee päivästä useamman tunnin, Tuomas sanoo.

Ohjelmointi on ongelmanratkaisua

Tuomaksen pääasiallinen ohjelmointikieli on Java, mutta työ vaatii muidenkin kielten, tekniikoiden ja työkalujen hallintaa.

– Serverimaailmassa Java hallitsee, mutta myös kevyemmät kielet kuten Node.js alkavat saavuttaa kypsyysasteen, jotta niitä voidaan käyttää serveripuolen toteutuksissa myös vaativammissa tarkoituksissa. Itselleni tuttuja kieliä ovat Node.js, XSLT, CSS, HTML, JSF, Ajax, C#, React, Vaadin, Spring, SQL, MySQl, Redis ja MongoDB. Tekniikoista ja työkaluista tuttuja ovat mm. SOAP, REST, Kubernetes ja AWS, Tuomas kertoo.

Maallikon korvaan määrä kuulostaa paljolta. Todellisuudessa ohjelmointikieliä ja tekniikoita on satoja. Tuomaksen mukaan parhaan ratkaisun löytäminen sopivimmalla tekniikalla antaa parhaan onnistumisen tunteen.

– Ohjelmointi vaatii jatkuvaa itsensä kehittämistä, koska uusia kieliä ja tekniikoita tulee jatkuvalla syötöllä lisää. Jos juuttuu yhteen tapaan tehdä asioita, jää auttamatta jälkeen kehityksestä, Tuomas sanoo.

Työpaikkoja vähitellen myös pääkaupunkiseudun ulkopuolelle

Tuomas työskentelee Turusta käsin. Pitkään alalla kuitenkin vallitsi tilanne, jossa työpaikkoja oli lähinnä pääkaupunkiseudulla. Vaakakuppi ei enää kallistu yhtä vahvasti Uudellemaalle, sillä reilun parin vuoden sisällä moni IT-talo on avannut uusia toimistoja Helsingin ulkopuolelle.

– Esimerkiksi Houston, Reaktor ja Vincit ovat avanneet Turkuun toimistoja, joten muutto Helsinkiin ei enää ole välttämättömyys. Toki tämä tarkoittaa myös sitä, että kilpailu kovenee. Työhaastatteluprosessit ovat monivaiheisia ja sisältävät useita pätevyystestejä, Tuomas kertoo.

Työtehtävät Suomessa painottuvat enemmän frontend-puolelle, mutta kaikenlaiselle osaamiselle on tarvetta.

– Myös DevOps-osaaminen on haluttua, sillä sellaiset pilvipalvelut kuin AWS, Azure ja Google Cloud kasvattavat suosiotaan. Moniosaajille on kysyntää.

– Alan palkkataso on hyvä, vaikka vaihtelee toki työpaikasta riippuen. Palkkataso kannustaa monia alalle. Vaikka aloitustaso onkin kova, kannattaa muistaa, etteivät pelkät työvuodet kasvata palkkapussia automaattisesti. On haluttava oppia ja kehityttävä, jos haluaa palkankorotuksia, Tuomas tietää.

Kukaan ei osaa kaikkea

Kuten missä tahansa työssä, myös ohjelmoinnissa on hyvät ja huonot puolensa.

– Itse pidän ohjelmistokehitystä erityisesti konsultin roolissa erittäin palkitsevana. Vaikka harteille tulisi paljon vastuuta, ovat haastavat projektit hyvin palkitsevia. Työssäni pääsen usein itse suoraan asiakasrajapintaan, jolloin onnistumiset näkyvät myös asiakkaan palautteessa. Pidän siitä, että työ haastaa jatkuvasti olemaan parempi ja oppimaan uusia asioita. Työkavereiden kanssa usein vitsaillaan, että jos oma vanha koodi näyttää kamalalta, tietää kehittyneensä paremmaksi koodariksi, Tuomas nauraa.

Huonona puolena Tuomas pitää sitä, ettei kaikesta voi osata kaikkea.

– Oma osaaminen on yleensä joillain osa-alueilla pirstaleista, koska tekniikat ja toteutustyylit vaihtuvat eri projektien välillä ja jopa yksittäisen projektin sisällä. Helposti käy niin, että oppii vain vähimmäismäärän monesta tekniikasta. Lopputuloksena tietää kaikesta vähän jotakin, mutta ei tunne tekniikoita syvällisemmin.

– Toisaalta, koska kaikkea ei voi osata, on osattava jakaa tietoa ja toimittava tiimissä. IT-alan kulttuuri on parhaimmillaan sitä, että on täysin ok sanoa, jos ei tiedä tai osaa jotakin. Kieliä ja tekniikoita on niin paljon, ettei kukaan voi osata niitä kaikkia, Tuomas muistuttaa.


Mainokset