utviklerprofilen

Jens savner ikke tiden da man måtte bruke flere dager på å sette opp miljøet til nye utviklere

Mener DevOps gir fordeler på mange plan.

Utvikleren Jens Kilde Mjelva har nylig flyttet til Trondheim etter 10 år i konsulentbransjen i Oslo. Bildet et fra en ferietur til Kenya.
Utvikleren Jens Kilde Mjelva har nylig flyttet til Trondheim etter 10 år i konsulentbransjen i Oslo. Bildet et fra en ferietur til Kenya.

Ukens utviklerprofil er Jens Kilde Mjelva (35). Han er ansatt ved Unit – Direktoratet for IKT og fellestjenester i høyere utdanning og forskning – ved avdelingen IT-utvikling og seksjon for integrasjoner, som holder til ved Units hovedkontor i Trondheim. Der har han jobbet siden november 2020.

Kan du kort beskrive stillingen og oppgavene dine?

Jeg jobber fulltid som utvikler på Arbeidslivsportalen, en ny tjeneste som har som mål å være en nasjonal samhandlingsplattform mellom utdanning og arbeidsliv. Backend-koden i prosjektet er skrevet i Java, og frontenden i Typescript og React. Applikasjonen kjører i skyen via Amazon Web Services.

Jeg liker godt at alle i teamet får kjennskap til all kode og infrastruktur.

Alle utviklerne i teamet jobber med hele teknologistacken: frontend, backend og DevOps-oppgaver, men det er jo naturlig at man bidrar mer der man har mest erfaring. For min del er dette backend og enkelte DevOps-ting.

Jeg liker godt at alle i teamet får kjennskap til all kode og infrastruktur og dermed også hele produktet vi leverer til sluttbrukerne. At alt er i samme kodebase, gjør det mye mer oversiktlig, og gjør at API-endringer er enkelt å gjennomføre, sammenlignet med prosjekter jeg har vært på tidligere, der frontend og backend har vært splitta i to forskjellige kodebaser, og man som utvikler stort sett kun forholder seg til én av disse.

Jeg har jobba med utvikling hele karrieren, og i tillegg til faktisk skriving av kode, innebærer rollen min også en del arkitekturarbeid: løsningsarkitektur, informasjonsarkitektur og funksjonell arkitektur, samt skriving og gjennomføring av tester: ytelsestester, systemtester og integrasjonstester.

Hvorfor valgte du akkurat denne arbeidsgiveren?

Jeg har vært innom mange større og mindre prosjekter i både privat og offentlig sektor i min tid som konsulent. Gjennom dette har jeg erfart at jeg trives best med å løse samfunnsnyttige problemer. Unit har det å drive kunnskaps-Norge framover som sitt oppdrag, noe jeg ser på som veldig viktig.

Unit har det å drive kunnskaps-Norge framover som sitt oppdrag, noe jeg ser på som veldig viktig.

Da jeg flytta til Trondheim, valgte jeg å gå fra å være konsulent til å jobbe i et in-house-miljø for å få mer varig og tettere tilknytning til både kollegaer og tjenestene jeg er med på å utvikle. Dette var spesielt viktig for meg siden jeg flytta til en by der jeg ikke hadde noe særlig (profesjonelt) nettverk fra tidligere.

Hva kan din arbeidsgiver bli enda bedre på?

Siden jeg bare har jobba i Unit i noen måneder og med en ganske utradisjonell oppstart som følge av pandemien vi er inne i, føler jeg ikke at jeg har nok grunnlag til å svare på dette. Det er ingenting jeg savner foreløpig, men alle har vel noe som kan forbedres.

Hvilket selskap kunne du aldri ha jobbet for?

Et selskap der man som ansatt ikke har noe man skulle sagt. Jeg tror heldigvis det ikke finnes så mange slike arbeidsgivere i Norge. Jeg ville også hatt problemer med å jobbe for selskaper som jobber med ting som jeg ser på som det motsatte av samfunnsnyttig, for eksempel selskaper som pusher dyre forbrukslån til folk som neppe burde hatt det, eller våpenprodusenter.

Hvor jobber du mest, på kontoret, på hjemmekontoret eller ute hos kunder?

Jeg har vært på hjemmekontor i over ett år nå, bortsett fra de fire første dagene etter jeg flytta til Trondheim og begynte i Unit i november. Etter disse fire dagene ble det anbefaling om hjemmekontor også i Trondheim. Før koronaen gjorde sitt inntog i mars 2020, var jeg hver dag på kontoret, hos kunde.

Hvor lenge har du jobbet som utvikler?

Siden jeg var ferdigutdanna i 2011.

Har du vært ansatt ved samme sted hele tiden?

Nei, jeg har bytta jobb to ganger. Jeg starta som konsulent i Computas etter studiene og var der fram til 2015. Deretter jobba jeg i Systek fram til jeg flytta til Trondheim i høst. Jeg har trivdes veldig godt alle stedene jeg har jobba.

Hvor gammel var du da du først begynte å lære deg programmering?

Jeg har en far som alltid har vært teknologiinteressert, og som har hatt PC siden 1990 cirka, så jeg begynte tidlig å leke med PC-er. Bortsett fra litt enkel HTML-koding og tukling med noen grafikk-, lyd- og konfigurasjonsfiler til diverse spill opp gjennom årene, ble det vel aldri «ordentlig» programmering før på videregående, og da først og fremst gjennom realfagene på skolen.

Hva slags utdannelse har du?

Jeg har en mastergrad i informatikk fra Universitetet i Oslo.

Utdannelsen fra UiO er jo temmelig teoretisk i forhold til arbeidshverdagen til en gjennomsnittlig utvikler.

Syns du at du har hatt god nytte av denne utdannelsen?

Ja, det synes jeg absolutt! Utdannelsen fra UiO er jo temmelig teoretisk i forhold til arbeidshverdagen til en gjennomsnittlig utvikler, og det er jo selvsagt enkelte fag som ikke er like relevante for det jeg har endt opp med å jobbe med, men alt i alt er jeg godt fornøyd med utdanninga.

Hvilke plattformer utvikler du vanligvis for?

Jeg var innom litt mobilutvikling til Android og iOS de to første årene etter utdannelsen, men etter det har det kun blitt utvikling av webapplikasjoner.

Hvilken pc-plattform/OS foretrekker du selv å bruke?

Jeg har utvikla både fra Windows-, Unix- og MacOS-baserte maskiner.

De siste 5 årene har jeg brukt Mac, og det er det jeg foretrekker, rett og slett fordi jeg har opplevd minst tull med det, både hardware- og OS-messig. Dermed gjør Mac meg mest produktiv. Jeg trives godt i Unix-verden også, men har kasta bort litt for mye tid på å få ting som burde fungere ut-av-boksen til å virke: trådløst nettverk, flerskjermoppsett og printerkonfigurasjon er ting jeg kommer på.

Hvilke programmeringsspråk benytter du, hva er favoritten og hvorfor?

Alle prosjektene jeg har jobba på har hatt Java som viktigste (backend) programmeringsspråk, fram til mitt nåværende prosjekt som har gått over til Kotlin. Kotlin har en del hyggelige features, men jeg synes det har kommet/kommer mye bra i Java med de nyeste versjonene også.

Det er egentlig tilfeldig at jeg har endt opp som Java-/Kotlin-utvikler.

Det er egentlig tilfeldig at jeg har endt opp som Java-/Kotlin-utvikler. Jeg liker å tenke på meg selv som teknologinøytral, og kan ikke si at jeg har noe favorittspråk, jeg har bare «tilfeldigvis» endt opp med Java (og Kotlin) og liker det dermed best siden det er det jeg kan best. Jeg er glad i åpne standarder og ikke-proprietære løsninger både når det gjelder programmeringsspråk og alt mulig annet her i livet, så at språkene ikke er låst til bestemte plattformer, gjør meg glad.

Hvilke to verktøy greier du deg ikke uten, og hvorfor?

IntelliJ og terminalen. Eller terminalen kan jeg for så vidt kjøre via Intellij, så da må jeg endre svar til IntelliJ og Firefox.

IntelliJ er et veldig bra og kraftig utviklingsmiljø, som har alt jeg trenger og mer til. At det er lagd av JetBrains som også står bak Kotlin, taler jo også for at det er naturlig å bruke når man skriver Kotlin-kode. Det mange år siden jeg har prøvd noen alternativer til Intellij, og jeg kan nesten ikke huske sist jeg jobba i prosjekt med noen som brukte noe annet enn IntelliJ til Java-/Kotlin-utvikling.

Jeg kunne for så vidt ha skrevet «en nettleser» istedenfor Firefox, da det ikke er så viktig for meg hvilken nettleser jeg bruker. Jeg har valgt Firefox over for eksempel Chrome først og fremst fordi jeg liker det Mozilla står for.

Jeg har nylig vært plaga av at antivirusprogrammet både stjeler masse systemressurser.

Du får makt til å slette en applikasjon eller helt kategori programvare fra historiebøkene, hva ryker og hvorfor?

Kanskje litt opplagt svar, men det hadde vært interessant å fjerne alle sosiale medier. Tror verden hadde vært et minst like bra sted uten! Ellers hadde jo vært fint om det ikke fantes virus eller annen skadevare, og at vi dermed hadde vi blitt kvitt antivirusprogrammene i samme slengen. Jeg har nylig vært plaga av at antivirusprogrammet både stjeler masse systemressurser, og at det feilaktig markerte et Kotlin-bibliotek som trojaner og putta det i karantene.

Hva slags oppgaver liker du best å jobbe med?

Jeg trives godt med å prøve på noe jeg ikke har gjort før. Da lærer jeg noe nytt og får forhåpentligvis mestringsfølelse av å løse noe jeg ikke vært borti tidligere. Hvis oppgaven attpåtil gir noe kunden virkelig setter pris på, er det ekstra stas!

Kan du dele opplevelsen fra en gang du gjorde en katastrofal feil eller tabbet deg skikkelig ut på jobb?

Jeg rulla ut en endring i NRK en gang på et enkelt støttesystem som ikke var kompatibel med et annet system, noe som igjen førte til at det ikke gikk an å publisere nye videoklipp til NRK.no. Det tok vel 20–30 minutter før «feilen» ble oppdaget, og det var lett å rulle tilbake igjen, så det var ingen katastrofe. Men det hadde vært veldig kjedelig om tidspunktet det skjedde på hadde sammenfalt med en viktig nyhetshendelse, som dermed ikke hadde blitt «illustrert» med videoklipp på nett.

Hvordan sørger du for å holde deg faglig oppdatert?

Det meste av fagoppdatering skjer i jobbsammenheng. Det er bra fokus på dette i Unit, både gjennom kunnskapsdeling i teamet og på tvers av organisasjonen i diverse fagforum og lignende.

Det er også stadig noe man må sette seg inn i selv for å løse en konkret oppgave, der man må (eller bør) lese seg litt opp før man setter i gang med noe man ikke har gjort før. Jeg deltok litt på meet-ups og lignende før jeg fikk barn, men det tar jeg meg sjelden tid til nå.

I hvilken grad har metoder og teknologier som DevOps, maskinlæring, nettsky og konteinere endret måten du jobber på?

Konteinere, DevOps og skyen har vært viktig i alt jeg har gjort som utvikler siden 2015. Tidlig i arbeidskarrieren husker jeg at vi brukte flere dager på å få satt opp miljøet til nye utviklere, siden vi måtte installere all nødvendig infrastruktur på utviklingsmaskinene: databaser, databaseservere, køløsninger, etc. Nå kan man starte et sett med konteinere på null-komma-niks og føle seg temmelig trygg på at ting oppfører seg noenlunde likt på tvers av operativsystemer og utviklernes personlige oppsett.

At konteinere med applikasjonskode kan deployes kontinuerlig til skyen og kjøre på infrastruktur man surrer i gang ved hjelp av få tastetrykk, er også veldig hyggelig. Jeg savner ikke å måtte bestille databaser, VM-er og alt mulig rart fra IT-drift, for så å gjerne ha en drifter i teamet som er den eneste som kan release kode dit en gang i måneden.

Jeg tror at det kan bli flere IT-jobber å velge mellom også for dem som er bosatt andre steder enn i de største byene.

Ser du noen trender framover som virkelig vil forandre hverdagen til utviklere?

Jeg som mange andre tror vel at det vil bli mye mer vanlig å jobbe deler av tiden fra andre steder enn kontoret. Mitt inntrykk er at de fleste rapporterer om minst like god produktivitet nå når «alle» sitter på hjemmekontor, som før koronaen. Jeg tror derfor at det kan bli flere IT-jobber å velge mellom også for dem som er bosatt andre steder enn i de største byene.

Hvilke teknologier eller fagområder skulle du gjerne kunnet mer om?

Det hadde vært gøy å kunne mer frontend. Jeg blir stadig imponert av frontend-utviklere som smeller opp ting som ser utrolig bra ut på 1-2-3. Jeg skulle også gjerne kunnet mer om både sikkerhet og maskinlæring.

Deltar du jevnlig på konferanser? I så fall, hvilken er den viktigste for deg?

Nei, ikke jevnlig. Jeg blir gjerne litt rastløs av å være på konferanse og får lyst til å jobbe selv etter noen timer, istedenfor å høre på foredrag nummer fem for dagen. Jeg har vært på JavaZone noen ganger, så må vel si at den er det viktigste, først og fremst fordi det nok er der jeg møter flest tidligere kolleger. Men det holder med én dag for meg.

Bidrar du, enten i jobben eller på fritiden, til noe åpen kildekode-prosjekt – i så fall, hvilke(t)?

Jeg prøver å være flink til å melde inn feil dersom jeg kommer over noe i et åpen kildekode-prosjekt som ikke oppfører seg som det burde, selv om det koster litt tid å melde inn dette på en ordentlig måte med god beskrivelse og lignende, og man ikke nødvendigvis får noe respons tilbake. Utover dette har jeg dessverre ingen aktive bidrag i åpen kildekode.

Det virker som at stadig mer kildekode gjøres åpen, også i norsk offentlig sektor, noe jeg synes er utrolig bra.

Det virker som at stadig mer kildekode gjøres åpen, også i norsk offentlig sektor, noe jeg synes er utrolig bra. Jeg har selv nylig hatt nytte av åpen kildekode fra blant annet finn.no og NAV. Det er fint å spare tid på å kunne ta i bruk noe man trenger som andre har laget gode løsninger for, og så er det flott at mye av det som lages i det offentlige er transparent og tilgjengelig for allmennheten.

Hvor mye programmerer du på fritiden?

Ingenting. Jeg programmerte litt på fritiden tidlig i arbeidskarrieren, men med to små barn må den lille fritiden jeg har prioriteres hardt. Og da foretrekker jeg å bruke den på helt andre ting enn det jeg gjør på jobb.

Har du noen (andre) hobbyer?

Klatring er hovedinteressen. Jeg har satt opp en liten klatrevegg (buldrevegg) i kjelleren hjemme. Denne følger et standardisert oppsett med klatretak der man kan lyse opp ulike klatreruter med LED-lys via en app og dele ruter med andre som har tilsvarende klatrevegg. Jeg bygde den først og fremst for å kunne lure inn en treningsøkt her og der i en travel hverdag, men med korona-smittetrykk og til tider stengte klatresentre har den blitt ekstra relevant.

Hva gleder du deg mest over ved å jobbe som utvikler?

Det er veldig gøy når kundene blir glade for å få løst et problem de har. Man har stor mulighet til å påvirke andres hverdag i positiv forstand med løsningene man lager. Og så liker jeg at det alltid er noe kult og nytt å lære.

Opplever du at jobben som utvikler har noen negative sider?

Som så mange andre jobber er den jo veldig stillesittende, noe som plager mang en utviklers rygg og/eller nakke. Bortsett fra det, ser jeg ikke så mange negative sider. Vi utviklere er veldig heldige som har et godt jobbmarked, gode arbeidsvilkår og spennende arbeidsoppgaver.

Hva er det beste frynsegodet du får på jobben?

Trening i arbeidstiden! Det er veldig deilig med et avbrudd i arbeidsuka der jeg kan ta en times tur ut i skogen på enten ski, sykkel eller beina. Og spesielt på vinteren, når muligheten for å oppleve dagslys stort sett sammenfaller med arbeidstida.

Nevn et frynsegode du savner!

Kanskje litt vanskelig å få til, men hadde vært fint med noen flere timer i døgnet.

Du finner mange flere utviklerintervjuer på vår samleside »

Powered by Labrador CMS