utviklerprofilen
– Det er noe som er litt zen ved å kunne sitte og være litt «deg mot maskinen»
Les ukens utviklerintervju.
Ukens utviklerprofil er David Kristensen (31), som jobber i Forse, et konsulentselskap med .NET-utviklere.
Kan du kort beskrive stillingen og oppgavene dine?Som alle andre i Forse har jeg den generiske stillingstittelen seniorkonsulent, men i praksis har jeg vært alt fra utvikler til team lead til arkitekt. Litt ettersom hva oppdraget og situasjonen krever.
Hvorfor valgte du akkurat denne arbeidsgiveren?Fagmiljø og frihet var de avgjørende faktorene for å velge Forse. Etter å ha vært i et miljø hvor majoriteten av utviklerne jobbet med Java til daglig, ønsket jeg meg til et sted hvor hovedtyngden lå på .NET, og det har jeg definitivt funnet.
Men om du hadde spurt meg om hva jeg setter mest pris på med Forse, så er det friheten.
Vi har full frihet til å velge oppdrag, og hvor mye jeg jobber, er i utgangspunktet en sak mellom meg og kunden.
Vi har full frihet til å velge oppdrag, og hvor mye jeg jobber, er i utgangspunktet en sak mellom meg og kunden. Så lenge kunden er fornøyd med jobben du gjør, så er det for eksempel uproblematisk å ta en ekstra uke ferie, eller fakturere litt mindre enn 37,5 timer i uka.
Hvor jobber du mest, på kontoret, på hjemmekontoret eller ute hos kunder?
Min gamle sjef sa alltid at de beste løsningene lager man ute hos kunden sammen med kunden, og det tror jeg han har helt rett i. Det hender jo at jeg har hjemmekontor, og nå i disse koronatider så prøver jo mange av oss ut hvordan lengre perioder med hjemmekontor fungerer. Men min erfaring med utvikling er at vi først og fremst løser menneskeproblemer. Og menneskeproblemer løser vi stort sett ved å kommunisere, og de aller fleste av oss kommuniserer best når vi ser hverandre ansikt til ansikt.
Kan du fortelle litt om prosjektet/prosjektene du har jobbet med i det siste?
De siste tre årene har jeg vært på Waypoint-prosjektet til If. Her er vi cirka 120 utviklere som sammen lager og videreutvikler et av de mest sentrale kjernesystemene til If.
Vi er en god blanding av fast ansatte og konsulenter fra en bråte konsulentselskaper fordelt på Norge, Finland, Sverige, Danmark og Latvia, hvorav omtrent halvparten sitter på Vækerø i Oslo. Det er med god margin det største prosjektet jeg har vært en del av, og er vel ett av de største .NET-prosjektene i Norge.
Vi har alle de mellommenneskelige og tekniske utfordringene du forventer av et prosjekt med slik størrelse, men det er utrolig mange dyktige folk her, og det er utrolig gøy å se at man innimellom får til ting man trodde var helt umulig da man startet. Rent konkret har jeg den siste tiden jobbet med å løfte deler av løsningen opp i skyen (Azure) og sett på skalering av enkelte moduler hvor ytelsen må opp for å møte framtidige volumer.
Hvor lenge har du jobbet som utvikler?Jeg har vært utvikler i litt over 6 år nå, stort sett på .NET-stacken hele tiden.
Har du vært ansatt ved samme sted hele tiden?Jeg startet min karriere i Mesan (senere Netcompany), før jeg for tre år siden flyttet på meg til Forse.
Hvor gammel var du da du først begynte å lære deg programmering?Jeg lekte litt med HTML, CSS og PHP allerede på ungdomskolen, men jeg vil vel egentlig si at jeg først lærte/begynte med programmering for alvor da jeg startet på universitetet.
Hva slags utdannelse har du?Jeg har en mastergrad i Programmering og nettverk (distribuerte systemer) fra Universitetet i Oslo.
Javascript/frontend bryr seg jo ikke nevneverdig om det henter data fra en Windows-boks eller en Linux-boks.
Hvilke plattformer utvikler du vanligvis for?For det meste programmerer jeg backend i C#/.NET, og da er vi jo stort sett i et Windows-driftsmiljø, men jeg vil vel ikke påstå at jeg utvikler for Windows av den grunn. Nå til dags kjøres jo det meste av applikasjoner i nettleseren, og Javascript/frontend bryr seg jo ikke nevneverdig om det henter data fra en windowsboks eller en linuxboks.
Hvilken pc-plattform/OS foretrekker du selv å bruke?Selv sitter jeg i Windows, da jeg bruker Visual Studio (IDE) og dette er en «Windows only»-applikasjon (ja da, den finnes for Mac også, men det er ikke ordentlig VS). I universitetstida brukte jeg mye Linux, og den første tiden tilbake igjen på Windows savnet jeg kommandolinja mye. Men de siste årene har heldigvis Windows gjort kvantesprang framover på den fronten. Powershell har blitt ordentlig bra, og nå nylig har vi jo til og med fått «Linux-støtte».
Hvilke programmeringsspråk benytter du?For det meste C#, med litt Javascript/Typescript spedd inn innimellom.
Hva er favorittspråket og hvorfor?Jeg må si jeg er veldig glad i C#, og Linq samt async/await er vel to av de tingene jeg liker best ved det/savner mest når jeg programmerer i andre språk.
Hvilke to verktøy greier du deg ikke uten, og hvorfor?Visual Studio med Resharper er et must. Jeg føler meg direkte uproduktiv om jeg programmerer i noe annet. Jeg har også blitt ganske glad i Visual Studio Code i det siste, men det er fortsatt ikke i nærheten av å erstatte vanlig Visual Studio for C# for min del.
Ellers så er vel PostMan et verktøy jeg nok heller ikke hadde klart meg uten. Så mye API-er vi lager nå om dagen, er det et must å kunne teste/prøve disse på en effektiv måte.
Det er noe som er litt zen ved å kunne sitte og være litt «deg mot maskinen».
Hva slags oppgaver liker du best å jobbe med?Om jeg får dykke ned i ytelsesforbedringer eller skalering, er jeg som oftest en meget glad og fornøyd (om dog til tider noe frustrert) mann. Det er noe som er litt zen ved å kunne sitte og være litt «deg mot maskinen» og ikke måtte forholde seg til mennesker, features og backlogger til tider. Alt med måtehold selvfølgelig. Sitter man for lenge med sånt, tror jeg man blir gal, men innimellom er det skikkelig deilig å kunne gyve løs på en oppgave som er rent teknisk av natur.
Hvordan sørger du for å holde deg faglig oppdatert?Vi har månedlige fagkvelder og fagdager i Forse, i tillegg drar jeg på minst to konferanser i året (vi har ganske rause fagbudsjetter), og så leser jeg en god del bøker. Det hender jeg drar på en og annen meetup også, men det er heller unntaket enn regelen. Mest lærer man selvfølgelig på prosjektet man er på, så innimellom gjelder det å velge oppgaver som innebærer at man må ut av komfortsonen å prøve noe nytt.
I hvilken grad har metoder og teknologier som DevOps, maskinlæring, nettsky og konteinere endret måten du jobber på?Jeg kom inn i arbeidslivet rett etter at Azure var blitt lansert for alvor, så for min del har jeg jo egentlig brukt skytjenester fra dag én, og det tok faktisk nesten et år ut i arbeidslivet før jeg for første gang logget meg inn på en Windows-server og tok i IIS (web server på Windows-plattformen).
Jeg er en sterk tilhenger av DevOps, og mener at du som utvikler må ta ansvaret for hele livsløpet til applikasjonen du lager. Ellers så er vel kanskje den største endringen jeg opplever med nettsky, DevOps og konteinere at alle disse teknologiene fordrer langt større grad av automatisering enn tidligere. Og det tror jeg er en god ting.
Du som utvikler må ta ansvaret for hele livsløpet til applikasjonen du lager.
Du kan gjerne sette opp ting manuelt for å teste, men i det øyeblikket ting skal ut mot produksjon, burde det eneste manuelle steget som er tillatt være ett klikk på «play»-knappen.
Ser du noen trender framover som virkelig vil forandre hverdagen til utviklere?Vi har nok ikke sett resultatet av «maskinlæringsrevolusjonen» ennå, men hvordan det kommer til å påvirke oss utviklere, er jeg mer usikker på.
Ellers så har jeg et lite håp om at flere og flere firmaer begynner å innse at digitalisering betyr mer enn å bare sette strøm på papir, og at det begynner å faktisk røske opp eksisterende prosesser ved rota.
Men det eneste jeg er sikker på er at kommunikasjon og «people skills» fortsatt kommer til å være en av de viktigste egenskapene til en utvikler, og om du ikke har «softskills» på læreblokka di, allerede er det på høy tid at du putter det på programmet!
Hvilke teknologier eller fagområder skulle du gjerne kunnet mer om?
De siste månedene har jeg begynt å snuse på Domain Driven Design, og jeg kjenner på at det er et område både jeg og andre kunne hatt godt av å vite mye mer om/anvende mye oftere.
Deltar du jevnlig på konferanser? I så fall, hvilken er den viktigste for deg?NDC er utvilsomt den viktigste konferansen på .NET-området i Norge (kanskje til og med i Europa), men når det er sagt så bruker jeg som oftest bare å dra annet hvert år.
For meg er konferanser vel så mye om å få inspirasjon til å prøve nye ting, og da føler jeg at å dra på noe nytt/til steder man ikke har vært før, er noe man burde prioritere. Selv var jeg på Domain Driven Design Europe i Amsterdam i starten av februar, og det var nok den mest interessante konferansen jeg har vært på de siste par årene. Mest fordi det var et tema jeg ikke kunne så mye om fra før, og jeg sitter igjen med masse nysgjerrighet og et par nye perspektiver.
Hvilket forhold har du til innebygd personvern?Jeg mener GDPR er den beste biten av lovgiving som har kommet ut av EU på årevis. På mange områder mener jeg at den ikke går i nærheten av langt nok, og jeg venter fortsatt på de første sakene hvor noen faktisk får 4 prosent av global omsetning i bot (for det må til før firmaer virkelig begynner å ta det på alvor).
På generelt grunnlag ser jeg ikke hvorfor vi som samfunn skal tillate tilpasset markeds-føring.
Og på generelt grunnlag ser jeg ikke hvorfor vi som samfunn skal tillate tilpasset markedsføring eller datainnsamling med det øyemed å selge deg mest mulig drit du ikke trenger. Der skulle jeg ønske at personvernlovgiving hadde gått mye lenger enn i dag.
Bidrar du, enten i jobben eller på fritiden, til noe åpen kildekode-prosjekt – i så fall, hvilke(t)?Nei, det har jeg stort sett ikke tid til.
Hvor mye programmerer du på fritiden?
Det går veldig i perioder, men i snitt kanskje et par timer per uke. For tiden jobber jeg med en implementasjon av favorittbrettspillet mitt Agricola.
Har du noen (andre) hobbyer?Jeg spiller mye brettspill, og ble flasket opp på Catan hjemme. Nå til dags spiller jeg aller helst Agricola, men Terraforming Mars har også gitt meg mye glede. Ellers så går det med en god del tid til reising og innimellom også dykking.
Hva gleder du deg mest over ved å jobbe som utvikler?Det å kunne løse nye problemer på daglig basis, er noe av de jeg setter mest pris på. Jeg er en av disse folka som får energi av å skape ting. Jeg er helt sikker på at jeg kunne stortrivdes som snekker også, men nå ble jeg en gang programmerer og har i grunnen aldri angret på det siden. Vi er også utrolig privilegerte ved å være i en bransje hvor faglig utvikling er prioritert og ansett som en viktig del av hverdagen.
Jeg er helt sikker på at jeg kunne stortrives som snekker også.
Opplever du at jobben som utvikler har noen negative sider?Det hender jeg kjenner litt på presset at det jeg lager påvirker arbeidshverdagen til flere tusen mennesker, og hvis systemet går ned, så er det masse folk som ikke får gjort jobben sin. Og jeg skulle gjerne sett en jevnere kjønnsbalanse på jobb. Men i det store bildet har vi det ganske bra som utviklere.
Hva er det beste frynsegodet du får?
Vafler på prosjektet hver fredag <3