Høsten 2008 var jeg nyutdannet fra UiO, og startet i min aller første profesjonelle utviklerjobb.
Over ti år senere er jeg fortsatt i bransjen, men klarer ikke la vær å tenke tilbake på et knippe dumme tabber og holdninger, som har sakket meg ned profesjonelt.
Tenker du på å bli utvikler, eller er du fersk i bransjen? Her er noen velmenende råd fra en gammel traver.
6 ting som overrasker meg med norske utviklere
Hvorfor er pultene deres så kjedelige? Og vet dere egentlig hvor godt dere har det?
#1. Ikke alle utviklere er supergeeks
Som mange andre datafrelste nordmenn, er jeg nok å regne som en nerd. Noe jeg også omfavner, men det har ikke alltid vært like lett.
På ungdomskolen og videregående på sent 90- og tidlig 2000-tall var man ikke akkurat kulest i klassen om man digga science-fiction, tegneserier fra 80-tallet, retrospill og Monty Python. Og spesielt ikke om man hadde data som hobby og reiste på datapartyer hver helg. I dag er det blitt kult å være nerd, før var det enveisbillett til å bli utstøtt.
Men, i arbeidslivet, som utvikler, trodde jeg alt skulle bli snudd på hodet. "Alle utviklere er nerder akkurat som meg", tenkte jeg.
Første dag i jobben fikk jeg en viss bekreftelse på teorien min, trodde jeg. I bokhyllene ved inngangspartiet stod science-fiction og fantasy-bøker fra forfattere som Terry Pratchett og Ray Bradbury på rekke og rad. "Fantastisk", tenkte jeg, og gledet meg til lunsjpraten med mine nye kollegaer.
Til min forbauselse gikk lunsjpraten i helt andre ting. Terrengsykler, politikk, sjakk og hverdagsprat. Det var da jeg innså at utviklere er vanlige mennesker som alle andre arbeidstakere.
6 grunner til at koding er verdens mest undervurderte hobby
Jeg koder på fritida. Og håper flere blir med, snart.
Utviklingsbransjen er nemlig ikke bare for selvlærte unge supernerdete menn, som jobber døgnet rundt i et mørkt rom med Ostepop, Redbull og Seinfeld-maraton i bakgrunnen.
Det var kanskje en periode på 80- og 90-tallet hvor denne stereotypen var overrepresentert, men ettersom bransjen har blitt større har variasjonen, og mulighetene til å komme seg inn i bransjen, økt. Bare se på alle de kule folka vi snakker med hver uke i Ukas Koder-spalten!
I ettertid er jeg glad for at norsk utviklermiljø viste seg å ikke være min personlige nerde-nirvana.
#2. Du er ikke idiot selv om du stiller grunnleggende spørsmål
De første årene som utvikler var jeg redd for å stille spørsmål til andre utviklere. Impostor-syndromet, som vi har skrevet om på kode24, var absolutt tilstede, og jeg var livredd for å bli avslørt som kontorets kunnskaps-sinke.
Istedenfor kunne jeg sitte dagevis å pludre med å få satt opp jobbens utviklermiljø på maskinen min. Jeg googlet alt i stedet for å spørre sidemann om enkle ting, og fulgte med som en hauk på jobbens IRC-kanaler etter hint.
Helt til en dag, da jeg plutselig fikk et nytt perspektiv.
En av de aller flinkeste utviklerne i firmaet, Geir Emblemsvåg, som stort sett jobbet med backend PHP-utvikling og avanserte databasemodeller, stakk hodet innom. Han hadde sett at jeg holdt på med - i mine øyne - enkel CSS-stiling, og lurte på hvordan jeg hadde fått det til. "Jaha, er det ikke flaut å spørre om noe så enkelt?", tenkte jeg, men forklarte likevel teknikken bak stilingen. Samtidig kjente jeg på en stolthet over å bli spurt om noe jeg faktisk kunne svare på.
2 av 5 føler at kolleger kan mer
- Utviklerbransjen er rigga for dette, mener psykolog.
Den dagen innså jeg to ting:
- Utviklere har lyst til å bli spurt om ting de kan.
- Flinke utviklere er ikke redde for å spørre om ting de ikke forstår, selv om det kan virke enkelt for andre. Det er sånn de blir flinke!
Dagen etter spurte jeg en annen utvikler om hjelp med utviklermiljøet mitt. Og på en snau halvtime var jeg i gang, etter dagevis med meningsløs fikling på egenhånd.
Siden den gang har jeg prøvd å omfavne idiot-følelsen, og ta det som en indikator på når jeg bør spørre etter hjelp. Da vet jeg nemlig at jeg kommer til å lære noe nytt, og jeg kommer til å bli flinkere.
Hvis Geir Emblemsvåg kan, så kan jeg og!
#3. Ikke bry deg så mye om hva andre gjør
I starten av karrièren min sleit jeg som nevnt med impostor-syndrom. Jeg var redd for å bli avslørt som fyren som ikke brukte proffe verktøy, derfor prøvde jeg mest mulig å kopiere arbeidsflyten til andre på kontoret.
React Native for Windows i C++
Pluss ny vri på hot reloading, React på web.dev, Styled Components v5 og hooks-talk.
Jeg skaffet meg en Mac, selv om jeg aldri hadde brukt det før. Jeg svettet perler mens jeg prøvde å lære meg Git fra kommandolinjen, for ikke å snakke om Vim-editoren, og all slags vanvittige Linux-kommandoer folk brukte.
Etter noen år fant jeg ut at jeg var minst like effektiv utvikler i Windows, med Git direkte fra VS Code, og gode gamle Windows Explorer.
#4. Det er ikke nødvendigvis utviklerne med høyest stilling som er best
Hva gjør en utvikler til en god utvikler? For noen er det mengden kunnskap som er viktigst, men jeg vil slå et slag for evnen til å forvalte kunnskapen man har mest effektivt.
Altså; få jobben gjort.
Maximilian (18) brente skolebøkene, ble utvikler
Nå er han selvstendig konsulent, helt uten utdanning. - Ingen bryr seg, mener 18-åringen.
Det tok meg en stund å innse at det ikke alltid var dem med "tech-lead" i tittelen som var mest effektive.
Jeg har vært vitne til erfarne utviklere som har brukt evigheter på å bytte mellom Redis, Postgres og alt mulig slags andre databaseløsninger, som har refaktorert bittesmå kodeprosjekter inn i ti tusen filer og mapper med én linje i hver fil, og samtidig avslått kode fra team-medlemmer for de minste feil på tvetydige retningslinjer. Alt i løpet av et MVP-prosjekt hvor hele målet var å få noe kjapt ut til brukere.
Samtidig har jeg sett juniorutviklere snurre opp flotte MVP-prosjekter på en uke med MongoDB og litt rufsete kode, som har gitt mye mer verdi tilbake.
#5. Les andres kode, og samarbeid mest mulig
Alle utviklere går fast i mønster. Som alle andre liker vi å være komfortable, og foretrekker å ikke ta på oss utfordringer med å lære nye ting med mindre vi må. Kjenner du deg ikke igjen? Bravo, det bør du sette pris på!
Mob-koding – hvorfor samarbeider vi ikke mer?
Og hva skjer når vi tvinger tre studenter til å samarbeide HELE tida?
For dere andre, og meg, er det en enkel løsning: Les koden til kollegaer, og samarbeid så mye dere klarer med andre utviklere.
Det er nemlig stor sannsynlighet for at utvikleren ved siden av deg ikke sitter fast i de samme mønstrene som deg, og sammen kan dere ha innflytelse på hverandre.
Selv om min kjære redaktør Ole Petter anser seg som en "hobbyutvikler", leser jeg gladelig koden hans. Hvorfor? Jo, fordi han har tatt kurs fra Treehouse, og lært andre teknikker enn jeg har.
Av samme grunn bør du samarbeide mer med andre. Gjerne parprogrammering. Da maksimerer du nemlig sannsynligheten for å få luket ut dårlige vaner, lære nye vaner, og finne ut om kollegaen din faktisk liker Teenage Mutant Hero Turtles, men ikke tør å nevne det i lunsjen.
- Eg vil slå eit slag for kvardagsskryten!
Ukas Koder fornyer Pasientreiser med .Net og C#.