Olemme saapuneet sarjamme viimeiseen osaan.
Olemme jo puhuneet uran ensimmäisistä askelista.
Siitä, mitä todella kannattaa oppia. Code Reviewista, Clean Codesta ja päivittäisestä tiimityöstä.
Yksi kysymys on vielä jäljellä: Milloin oikeastaan lakkaat olemasta Junior?
Tämä kysymys nousee esiin hyvin usein.
Vuoden jälkeen? Kahden vuoden jälkeen? Viiden? Vai ehkä silloin, kun opit uuden frameworkin?
Vastaus saattaa yllättää. – Ei ole yhtä oikeaa lukua.
Olemme nähneet koodareita, joilla on kymmenen vuoden kokemus, mutta jotka silti tarvitsivat ohjausta monimutkaisemmissa projekteissa. Olemme nähneet myös kolmen vuoden kokemuksella olevia, jotka suunnittelivat ratkaisuja itsenäisesti, tukivat nuorempia kollegoita ja ottivat vastuuta koko moduuleista.
Siksi IT-alalla kokemuksen vuodet ovat vain yksi palapelin osa.
Senior ei tiedä kaikkea
Tämä on ehkä suurin myytti alalla.
Monet juniorit kuvittelevat Senior Developerin olevan henkilö, joka tietää vastauksen jokaiseen kysymykseen. Todellisuus on täysin toinen.
Hyvä senior sanoo usein: "En tiedä."
Mutta lisää heti: "Tarkistetaan."
Siinä on valtava ero.
Seniorin ei tarvitse muistaa koko dokumentaatiota. Ei tarvitse tuntea jokaista kirjastoa. Ei tarvitse osata kaikkea ulkoa.
Hän tietää kuitenkin:
- mistä etsiä tietoa,
- miten varmistaa ratkaisu,
- millaista riskiä tietty päätös tuo mukanaan,
- milloin sanoa "en tiedä" sen sijaan että arvailee.
Tämä on yksi kypsän kehittäjän tärkeimmistä piirteistä.
Ohjelmoija vai insinööri?
Uran alussa useimmat keskittyvät koodiin.
Miten kirjoittaa funktio? Miten tehdä API? Miten yhdistää tietokanta?
Ajan myötä alat huomata, että koodi on vain työkalu.
Todellinen tehtävä on ratkaista liiketoiminnan ongelma.
Asiakas ei osta sovellusta siksi, että se on kirjoitettu tietyllä kielellä. Hän ostaa ratkaisun ongelmaansa.
Silloin kehittäjä alkaa ajatella kuin insinööri.
Paras ominaisuus on joskus se, jota et kirjoita
Kuulostaa oudolta? Mutta niin se on.
Kuvittele, että asiakas pyytää uuden moduulin rakentamista. Voit heti alkaa suunnitella ratkaisua. Voit myös esittää muutaman kysymyksen.
Miksi tämä toiminnallisuus tarvitaan?
Kuinka usein sitä käytetään?
Onko vastaavaa jo olemassa?
Voidaanko sama päämäärä saavuttaa yksinkertaisemmalla tavalla?
Usein käy ilmi, että ongelma voidaan ratkaista ilman satoja uusia koodirivejä. Ja juuri tällaisista päätöksistä asiakas maksaa. Ei commitien määrästä.
Vastuu alkaa siellä, missä koodi loppuu
Senior ei vastaa vain omasta osastaan projektia. Hän katsoo laajemmin.
Hän pohtii:
- miten muutos vaikuttaa muihin moduuleihin,
- onko ratkaisu skaalautuva,
- onko uusi toiminnallisuus helppo ylläpitää,
- millaista riskiä käyttöönotto tuo,
- saako käyttäjä oikeasti hyötyä.
Tämä on täysin eri tapa ajatella.
Hyvä senior luo uusia senioreja
Tämä on yksi kauneimmista asioista alallamme.
Parhaat kehittäjät, joita olemme kohdanneet, eivät pelänneet jakaa tietoa. Päinvastoin.
He iloitsivat, kun joku tiimistä kehittyi nopeasti. Sillä vahva tiimi voittaa aina yksittäisen sankarin.
Yli kaksikymmentä vuotta olemme saaneet seurata, kuinka harjoittelijat meillä ovat kehittyneet täysivaltaisiksi tiimin jäseniksi. Yhden tällaisen tarinan kuvasimme sarjan ensimmäisessä osassa.
Tänään tuo henkilö johtaa itsenäisesti vaativia tehtäviä, suunnittelee ratkaisuja ja tukee nuorempia kehittäjiä.
Tapahtuiko tämä yhdessä yössä? Tietenkään ei. Se on satojen tuntien oppimisen tulos. Kymmeniä Code Reviewita. Lukemattomia kysymyksiä. Tehtyjä virheitä. Ja suurta uteliaisuutta maailmaa kohtaan.
AI ei korvaa hyvää kehittäjää
Tähän aiheeseen oli pakko ottaa kantaa. Muuttaako tekoäly alaamme? – Kyllä. Paljon.
Tekevätkö kehittäjät tarpeettomiksi? – Päinvastoin.
Työn luonne muuttuu. Vietämme yhä vähemmän aikaa toistuvan koodin kirjoittamiseen.
Enemmän aikaa menee:
- ongelmien analysointiin,
- arkkitehtuurin suunnitteluun,
- ratkaisujen arviointiin,
- asiakaskohtaisiin keskusteluihin,
- päätösten tekemiseen.
AI on erinomainen apuri. Mutta vastuu projektista on edelleen ihmisellä. Ja niin tulee olemaan vielä pitkään.
Mitä et laita CV:hen
CV näyttää:
- ohjelmointikielet,
- frameworkit,
- sertifikaatit,
- kokemuksen.
Se ei kuitenkaan näytä asioita, jotka usein ratkaisevat menestyksen.
Osaatko myöntää virheen?
Osaatko pyytää apua?
Kunnioitatko muiden aikaa?
Pidätkö kiinni sovituista asioista?
Osaatko ratkaista konflikteja rauhallisesti?
Otatko vastuuta päätöksistäsi?
Juuri nämä ominaisuudet saavat tiimin haluamaan työskennellä kanssasi.
Jos saisimme antaa vain yhden neuvon...
Yli kahden vuosikymmenen ohjelmistokehityksen jälkeen voisimme puhua teknologioista.
Arkkitehtuurista. Frameworkeista. Tekoälystä.
Mutta jos meidän pitäisi jättää sinulle vain yksi neuvo, se kuuluisi: Älä koskaan lakkaa olemasta utelias.
Teknologiat muuttuvat. Ohjelmointikielet kehittyvät. Frameworkit syntyvät ja katoavat.
Mutta uteliaisuus, nöyryys, halu oppia ja kyky esittää kysymyksiä ovat taitoja, joita tarvitset aina.
Termistö
Senior Developer
Kokenut kehittäjä, joka ei ainoastaan kirjoita korkealaatuista koodia, vaan suunnittelee ratkaisuja, tekee teknisiä päätöksiä, tukee tiimiä ja ottaa vastuuta toteutetuista projekteista.
Ohjelmistoarkkitehtuuri
Sovelluksen ja sen osien suunnittelutapa, joka vaikuttaa järjestelmän kehitykseen, suorituskykyyn ja ylläpidettävyyteen.
Skaalautuvuus
Järjestelmän kyky käsitellä kasvavaa käyttäjä-, data- tai prosessimäärää suorituskykyä menettämättä.
Commit
Muutosten tallennus versionhallintaan (Git), joka mahdollistaa projektin kehityshistorian seuraamisen.
Mentorointi
Tiedon ja kokemuksen siirtämisen prosessi vähemmän kokeneille tiimin jäsenille, joka tukee heidän ammatillista kehittymistään.
Sarjan yhteenveto
Jos olet lukenut kaikki neljä osaa, olet ehkä huomannut, että hyvin harvoin puhuimme tietyistä frameworkeista.
Tarkoituksella.
Koska teknologiat muuttuvat nopeammin kuin koskaan ennen.
Se, mikä on tänään suosittua, voi muutaman vuoden päästä olla vain kuriositeetti.
Mutta hyvän kehittäjän ajattelutapa pysyy muuttumattomana; analyysi. Vastuu. Viestintä. Tiimityö. Uteliaisuus.
Nämä juuri saavat sinut siirtymään juniorista mid-kehittäjäksi ja ajan myötä senioriksi.
Web24:ssä olemme yli 20 vuotta kehittäneet ohjelmistoja eri toimialojen asiakkaille. Tänä aikana olemme vakuuttuneet yhdestä asiasta: parhaita kehittäjiä ei tunnisteta sen perusteella, kuinka monta ohjelmointikieltä he osaavat. Heidät tunnistetaan siitä, miten he ratkaisevat ongelmia, tekevät yhteistyötä ihmisten kanssa ja kuinka paljon he välittävät työnsä laadusta.
Jos olet vasta aloittamassa IT-polkuasi, toivomme, ettet koskaan menetä uteliaisuuttasi.
Sillä siitä alkaa jokainen hyvä ura.



