Kuinka tulla senior developeriksi ja pysyä järjissään?

Kehittäjän roolissa kokee uudenlaisia haasteita kun takana on muutamia työvuosia ja titteliksi on vaihtunut senior web developer. Sen lisäksi, että työpöydälle putoaa aina haastavampia tapauksia, kohdistuu omaan työskentelyyn uudenlaisia odotuksia. Kaikessa myllerryksessä pitäisi osata vielä muuttaa omaa suhdettaan työhönsä.

Kokosin tähän kirjoitukseen itse kokemiani muutoksia työssäni ja selviytymiskeinoja uusiin haasteisiin. En ole näissä asioissa täydellinen, mutta jotain kai minäkin olen oppinut.

Taistele työn kasaantumista vastaan

Kun työvuosia samassa yrityksessä on reilusti takana, valuu yhä laajempi joukko projekteja, sähköposteja ja avunpyyntöjä omalle pöydälle. Näin käy helposti kun yhä useampi asiakas tuntee kehittäjän jo ennestään, jolloin he yleensä haluavat asioida suoraan saman ihmisen kanssa myöhemminkin. Toisaalta tehtyjen projektien joukko kasvaa jatkuvasti ja tuntuu luontevalta hoitaa niihin liittyvät lisäkehitystyöt ja tukipyynnöt itsekseen.

Jos tätä kiihtyvää vauhtia kasvavaa työvirtaa ei hallita, hukkuvat pitkään yrityksessä olevat ihmiset työkuormaansa kun uudemmat tekijät odottelevat tekemistä. Työkuorman kasautumista vastaan pitää siis alkaa taistelemaan niin itse kuin koko yrityksen toimintatapojen kautta. Työkuormaa on kevennetty meillä esimerkiksi seuraavilla toimenpiteillä:

  • Service Desk: Vähensimme koko yrityksessä suoraan kehittäjille tulevia yhteydenottoja perustamalla keskitetyn asiakaspalvelun.
  • Rauhaa sähköpostilta: Kun yhteydenotoille on keskitetty kanava, ei maailma kaadu jos sähköpostin tarkistaa vaikka vain kerran päivässä.
  • Työn tekeminen näkyväksi: Otimme käyttöön tikettijärjestelmäksi Jiran, jolloin keskeneräinen työ on näkyvillä, mikä helpottaa kasautumisen huomaamista ja auttaa työtehtävien jakoa.
  • Dokumentaatiotalkoot: Vanhojen projektien sisäisiä ohjeistuksia täydennettiin, jolloin uudet kehittäjät pääsivät auttamaan paremmin jo julkaistujen projektien jatkokehityksessä.
  • FIFO (first in, first out): Pieniä jatkokehitystöitä hoidetaan yhdellä työjonolla, jota kaikki kehittäjät pystyvät purkamaan.

Älä tee yksin – jaa tehtävää tiimille

Vaikka työn saapumista pöydälle voidaan hillitä, pitää oppia myös käsittelemään paremmin sinne joka tapauksessa ilmestyvää työtä. Kun tavallisena kehittäjänä saa eteensä jonkin tehtävän, on luontevinta ryhtyä heti töihin. Senior-roolin myötä pitää kuitenkin oppia pysähtyä hetkeksi, jotta ei kahmi itselleen järjetöntä työtaakkaa.

Ennen työhön tarttumista kannattaa miettiä, pystyykö joku muu tekemään työn. Aluksi omat tehtävät voivat tuntua siltä, ettei kukaan muu varmasti osaa tehdä niitä. Pienen pohdiskelun jälkeen työ ei usein kuitenkaan ole niin hankala, etteikö sitä voisi antaa eteenpäin. Työn välittäminen vaatii toki kertomaan mitä täytyy tehdä, mitä pitää huomioida ja milloin tehtävä on valmis.

Kun helppojen töiden ohjaaminen muille alkaa sujua, kannattaa miettiä myös voisiko joku tiimistä oppia jotain tärkeää tekemällä haastavampia tehtäviä. Hankalien hommien delegointi muille auttaa kuromaan kiinni tiimin osaamiskuilua, joka syntyy jos jotkut kehittäjät tekevät pelkästään helppoja töitä. Seniorina tiimin kehittymisestä tulee eräs tasapainoteltava asia projektien läpiviemisen kanssa.

Auta muita kasvamaan paremmiksi

Kun yritykseen tulee uusia kehittäjiä, ottavat he kaikessa mallia vanhemmilta kehittäjiltä. Senioreita kopioidaan niin hyvässä kuin pahassa unohtuneista tuntimerkinnöistä puutteelliseen dokumentaatioon. Siksi varsinkin senior-kehittäjän pitää itse toimia kuten hän haluaa muiden kehittäjien toimivan.

Senior-tittelin turvin voi päästä esimerkiski mentoroimaan, kouluttamaan omaa tiimiä tai perehdyttämään uusia kehittäjiä. Pelkkä hyvä koodaustaito ei tee hyväksi perehdyttäjäksi, vaan tämä on kokonaan oma taitonsa, joka kehittyy harjoittelemalla. Perehdyttäminen opettaa siis tekijäänsä samalla mitalla takaisin.

Kaikki eivät tietysti halua olla mentoreita. Senior-roolin ei ole pakko sisältää mitään ihmisten edessä patsastelua jos sitä ei halua. Osaamisen jakaminen on kuitenkin äärettömän tärkeä asia tiimin kehittymiselle ja senioreilla on varmasti paljon annettavaa muille.

Ota vastuuta itsestäsi ja työstäsi

Senior-roolin myötä työ muuttuu entistä itsenäisemmäksi. Kun junior-tason kehittäjänä työ on suurelta osin muiden antamien tehtävien tekemistä, löytää senior useammin tehtävänään suunnitella raamit koko projektille ja jakaa se hallittaviksi tehtäviksi useammalle kehittäjälle. Seniorista kasvaa kokonaisuuksien hallitsija.

Itsenäisempi työ vaatii vastuunottoa omasta työstä. Vastuullisuus voi tarkoittaa esimerkiksi muilta piilossa olevien asioiden tekemistä hyvin. Vastuullisuus on kysymistä asiakkaalta kun jokin asia on epäselvää. Vastuullisuutta on tarkistaa muilta tiimin jäseniltä miten heidän työnsä etenee. Vastuullisuus on mitä minä voin tehdä asian eteen eikä kenen syytä jokin asia on.

Lopulta projektin pääkehittäjänä senior ei voi pestä käsiään mistään asiasta. Jos junior-kehittäjältä jäi koodiin bugi, voi kysyä ohjeistiko tehtävää riittävästi tai onko perehdyttänyt tätä kehittäjää tarpeeksi. Jos asiakkaalta ei saa riittäästi tietoa, voi miettiä onko osannut kysyä ja kuunnella häntä. Jos aika ei riitä, voi pohtia onko ominut liikaa tehtäviä tai pyytänyt muilta apua.

Vastuunotto omasta työstä tuo valtavasti voimaa. Jos mikään asia ei kuulu täysin tonttisi ulkopuolelle, voi silloin myös teoillaan vaikuttaa kaikkeen.

Ole johtaja, asiantuntija tai jotain siltä väliltä

Senior-roolissa voi olla tarpeen suuntautua joko enemmän asiantuntijuuteen tai johtajuuteen. Asiantuntijaksi tähtäävä työskentelee yhä haastavampien ongelmien kanssa ja syventää jatkuvasti omia taitojaan. Johtajuuteen suuntaava senior pyrkii taas kehittämään tiiminsä osaamista ja yrityksen toimintatapoja pelkän koodaamisen sijaan.

Jos tunnistaa itsessään selkeästi toisen polun, ei tarvitse yrittää kurottaa joka suuntaan. En usko, että mitään ehdotonta päätöstä täytyy osata tehdä. Kannattaa kuitenkin muistaa, että ollakseen hyvä asiantuntija tai johtaja tarvitsee erilaisia taitoja, jolloin yhden alueen hallinta ei tee mestariksi toisessa.

Ei ole yhtä tapaa tai polkua olla senior-kehittäjä. On yhtä arvokasta keskittyä osaamistason kasvattamiseen kuin toisten auttamiseen.

Milloin on valmis senior web developeriksi?

Senior-kehittäjälle ei ole yleispätevää kriteeriä, koulutusta tai työkokemusta. Yleensä tittelin saa joko siksi, että kasvanut osaamistaso halutaan tunnustaa uudella tittelillä tai yritys kaipaa jonkun täyttämään tämän roolin. Tämän vuoksi samalla tittelillä on ihmisiä erilaisista taustoista ja osaamistasoista.

Suosittelen seniorille pohjaksi ainakin 4-5 vuotta kokemusta web-kehittäjänä, jotta saa rakennettua taitopohjaa niin, että itsenäinen työskentely ja itsetuntemus on kehittynyt. Seniorilta kaivataan halua oppia jatkuvasti lisää, kehittää tiimin osaamista sekä ottaa vastuuta laajemmin projektien ja työkäytäntöjen kehityksestä. Siihen rooliin kukaan ei synny, vaan siihen kasvetaan.

Onnea matkaan!

Tämä kirjoitus tiivistää samalla otsikolla Helsingin, Tampereen ja Turun WordPress meetupissa kiertäneen esitykseni. Löydät alkuperäiset esitysdiat SlideSharesta.