Ohjelmistokehittäjän osaamisen kehittämisen checklist

Ohjelmistokehittäjän osaamisen kehittämisen checklist

Jaa myös muille

IT-ala on jatkuvassa muutoksessa ja läpi historian sille ominaisista piirteistä puhuttaessa ei ole voitu sivuuttaa tarvetta jatkuvalle oman osaamisen kehittämiselle.

Trendejä syntyy ja hiipuu jatkuvasti - jos jokin teknologia tai työskentelytapa on tänään in, se voi olla jo huomenna out. Tänä päivänä ohjelmistokehitystä tehdään ketterästi, kun muutama vuosi sitten vannottiin vesiputousmallin nimeen. Vastaavia esimerkkejä on varmasti ainakin sata.

Seuraavassa blogitekstissäni kerron tuotekehittäjille relevantista osaamisesta Arterin näkökulmasta tarkasteltuna.

Ohjelmistokehittäjän osaamisen kehittämisen best practices

Myös meillä Arterilla tuotekehittäjien osaamisen kehittäminen on ollut kuuma peruna jo pitkään, ja omien parhaiden käytäntöjen löytäminen on vaatinut ajattelua myös ”laatikon ulkopuolelta”. Tänä päivänä koodareiden osaamisen kehittämisestä ei meillä vastaa hierarkiapyramidissa ylhäältä tarkkaileva esimies, jolle itse arjen koodaustyön näkeminen voisi jäädä vajaaksi. Sen sijaan koodareiden osaamista kehitetään meillä omassa, osaamisen kehittämisen työryhmässä – koodareilta koodareille.

Osaamisen kehittämisen työryhmässä pohdimme sovellusarkkitehdin johdolla teknologiatarpeita ja niiden painotuksia liittyen tuotteisiimme, mutta myös ei-teknologiakeskeistä osaamista. Se itseasiassa onkin osaamista, joka toisin kuin uusimmat teknologiatrendit, pysyy varmemmin tärkeänä vuodesta toiseen.

Tuotekehittäjälle oleellista osaamista voisimme lähteä pohtimaan tarkastelemalla muutamaa tehtävää hieman lähemmin.

UX Designerin valttikorttina on kyky hypätä käyttäjän saappaisiin

Aloitetaan UX Designerista eli käyttäjäkokemussuunnittelijasta, jonka työ keskittyy käyttäjien kokonaisvaltaisen käyttökokemuksen parantamiseen ja kehittämiseen. Tässä työssä arjen täyttää uusien ja vanhojen sovellusten ominaisuuksien ja käyttöliittymien suunnittelu tuoteomistajan kanssa yhdessä tehtyjen määrittelyjen pohjalta. UX Designer huolehtii myös yhtenäisen tyylin luomisesta ja ylläpitämisestä, sekä tuoteperheen mukaisen käytettävyyden ja ilmeen toteutumisesta. Toisin sanoen, käyttäjän tulisi tuntea käyttävänsä saman yrityksen tuotteita, kuin minkä nettisivuja selailee. Päivittäiseen työhön kuuluu lisäksi jatkuva itsenäinen opiskelu.

UX Designerille avainosaamista on mm. kokonaisuuden hallinta ja kyky ottaa pienetkin yksityiskohdat mukaan laajassa skaalassa. Toimiiko esimerkiksi jokin väri tai tietty symboli kaikissa sovelluksissa? Myös kyky astua käyttäjän saappaisiin on oleellista. Lisäksi tärkeää on esiintymistaito, eli kyky osata selittää ja perustella tarvetta uusille ominaisuuksille niin, että kuulijat ymmärtävät. Myös sosiaaliset taidot ovat tärkeitä sen puolesta, että UX Designer on lähes päivittäin tekemisissä eri sidosryhmien sekä oman tiiminsä kanssa.

Taito, josta UX Designerille on erityisesti kilpailuetua, on perusosaaminen koodaamisesta. Näin pystyy hahmottamaan myös kooditasolla, millainen suunnitelma on toteutettavissa ja millaisella työmäärällä.

Fullstack Developerin avainosaamista on kyky hallita kokonaisuuksia

Toinen rooli joka otetaan tarkasteluun, on Fullstack Developerin tehtävä jossa hallitaan tuotekehityksen ”koko palettia”. Toisin sanoen tässä roolissa ohjelmoidaan niin serverillä pyörivät, käyttöliittymän suunnittelun ja toteutuksen ratkaisut, kuten verkkosivu- sekä tietokantaratkaisut. Työpäivät täyttyvät tässä tehtävässä mm. ominaisuuksien suunnittelusta vanhoihin ja uusiin sovelluksiin, määrittelystä sekä prototyyppien laatimisesta. Lisäksi arki kuluu tuotteen kehittämisen ja korjaamisen parissa niin front- kuin backend puolella. Bugien korjaaminen ja toisten tuotekehittäjien koodien katselmointi sekä erinäisiin tuotekehityksen palavereihin osallistuminen, kuten esimerkiksi scrumin suunnittelupalaverit tai retrospektiivit, ovat myös kaikki tuttuja tässä tehtävässä.

Fullstack Developerin roolissa tärkeää on kyky ja halu ymmärtää tuotekehityksen eri osa-alueet, sekä se miten nämä kommunikoivat keskenään, ja hallita tämä kokonaisuus. Kyky oppia jatkuvasti lisää on myös tässä roolissa oleellista.

Fullstack-kehittäjälle hyviä taitoja ovat myös kommunikointi ja ryhmätyöskentelyosaaminen: yhteisten pelisääntöjen noudattaminen sekä kyky antaa ja vastaanottaa palautetta esimerkiksi koodia katselmoitaessa ovat kultaisia taitoja, joita on hyvä harjoitella!

Viisi vahvaa - osaaminen josta on koodarille kuin koodarille hyötyä!

Kuten jo aikaisemmin totesin, väitän että osaaminen joka varmimmin pysyy tuotekehittäjälle tärkeänä vuodesta toiseen on luonteeltaan ei-teknologiakeskeistä. Tähän loppuun kokoan vielä viisi oleellista osaamisaluetta, joiden preppaaminen ei tule menemään hukkaan:

1. Opi oppimaan - itseohjautuva opiskelu ei tule loppumaan koodarin työssä. On tärkeää olla kiinnostunut teknologiasta, haluta oppia ja tietää miten asiat toimivat ja mistä ne koostuvat.

2. Oldies but Goldies - vakaat ja kypsät perustekniikat on hyvä hallita ja antaa niille arvoa. Kriittinen ajattelu on siis paikallaan uusimpien teknologiatrendien kohdalla. Oleellista on seurata teknologian kehittymistä ja uusia tekniikoita, kieliä, sovelluskehyksiä ja kirjastoja, mutta on hyvä osata antaa myös arvoa vanhemmille, kypsemmille ja vakaamille tekniikoille.

3. Tiimityöskentelytaidot - koodarin työssä on tärkeää pystyä noudattamaan yhdessä sovittuja pelisääntöjä ja tukea työkaveria tarpeen vaatiessa. Toimit tiimisi yhteisten tavoitteiden eteen ja suoritat oman osuutesi tunnollisesti ja ahkerasti.

4. Ongelmanratkaisutaidot - on tärkeää pystyä purkamaan ongelma osiin, etsiä juurisyyt ja löytää ratkaisuvaihtoehtoja. Esimerkiksi bugien kohdalla on tärkeää kyky jäljittää ongelman juurisyy ja siihen johtaneet tekijät. Uusien ominaisuuksien kohdalla taas kyky hahmottaa erilaisia toteutustapoja tai käyttöliittymäratkaisuja ja tunnistaa näiden eroavaisuudet sekä teknisen toteutuksen, että käyttökokemuksen osalta ovat oleellisia.

5. Sosiaaliset taidot - tulet väistämättä työskentelemään muiden osapuolien kanssa (mm. kollegat, tuoteomistaja). Kyky viestiä selkeästi on siis arvokasta, samoin kuin kyky ottaa vastaan ja antaa palautetta. On hyvä pystyä perustelemaan näkökulmasi loogisesti ja muita kunnioittaen.

Katso myös webinaaritallenne, josta löydät mm. timanttiset vinkit oman osaamisen esiin tuomisessa työhakemuksissa:

Tagged , .