Hvordan ble du utvikler? 📚
Da jeg var barn jobbet min far som lærer, og når de byttet ut maskiner på skolen tok han med gamle maskiner hjem som vi fikset og fornyet. Så jeg har vært så heldig at jeg alltid har hatt datamaskiner tilgjengelig og en far med interesse for data.
En filminteresse i tillegg til datainteressen førte til at jeg fikk øynene opp for Adobe After Effects og Flash når jeg var 11 år gammel. Å skrive expressions (ExtendScript som var Adobe’s forlengelse av ECMAScript 3 på den tiden) i After Effects er det jeg husker som min første skikkelige kode-opplevelse.
Interessen for å skape ting med After Effects og Flash avtok, og når jeg var 15 år gammel hadde interessen utviklet seg til webutvikling. På den tiden gikk det mest i jQuery, PHP og WordPress. Etterhvert startet jeg med medier og kommunikasjon på videregående, og endte opp med å få en del små kundeprosjekter gjennom skolen.
Dette førte til at jeg som 18 åring ble fast ansatt med tittelen webutvikler i et lokalt IT-selskap.
Hva jobber du med for tida? 💪
Hva jeg jobber med varierer veldig.
I det siste året har jeg jobbet med å utvikle alt fra nettsider, verktøy for designere, video encoders i WebAssembly, AR-opplevelser, trening og implementering av AI-modeller, og drift.
Et av de mest spennende prosjektene jeg arbeider med akkurat nå er sammen med NRKs design- og utviklingsmiljø. Vi utvikler verktøy som skal sørge for at identiteten til NRK blir riktig implementert på tvers av organisasjonen, både for designere og utviklere. Verktøyet bygges hovedsakelig med vanilla javascript, og har mottatt støtte fra European Broadcasting Union.
Et annet spennende prosjekt er et jeg ikke kan si så mye om enda, men det er et lite webbasert “univers” bygget opp av partikler fra 3D scanninger gjort et sted i Norge. Miljøet i dette “universet” påvirkes av forskjellig sanntidsdata. ✨
I grunnen av nettsiden ligger et bibliotek jeg har arbeidet med det siste året. Biblioteket inneholder mange funksjoner og programmer jeg bruker på tvers av prosjekter. Dette er alt fra enkle utility-funksjoner for vanlige datatyper, håndtering av animasjon og interaktivitet, klasser for vektorer og matriser, et workerpool api (Web Workers API), event system, og mye mer. Three.js er også brukt, men bare som en WebGL-renderer i dette tilfellet. Alt av loaders, shaders, post-processing, GPGPU, har jeg bygget selv for å ha mer fleksibilitet og kontroll. I backend kjører et hodeløst Craft CMS med noen moduler som er utviklet (PHP) for caching og viderelevering av data fra eksterne APIer.
Jeg skal prøve å få skrevet en teknisk case study når nettsiden er lansert.
Hvordan ser en typisk arbeidsdag ut for deg? ☕
En typisk arbeidsdag for meg starter alltid på hjemmekontoret med en god kopp kaffe og en kodeøkt. Jeg prøver alltid å utsette mail, møter, og annet administrativt til rundt lunsj, da jeg koder best om morningen og kvelden.
Jeg har ikke møter hver dag, men ofte spontane møter der jeg sparrer med kollegaer på ideer og tekniske løsninger. Kontoret ligger bare ett kvartal unna, så jeg drar ofte der i 10-11 tiden og fortsetter dagen der. Hvis jeg forblir på hjemmekontoret arbeider jeg frem til klokken 13 før jeg tar en "fransk lunsjpause” der jeg spiser lunch og unnagjør daglige gjøremål som å handle dagligvarer og forberede middager.
Jeg anbefaler en lengre pause midt i dagen, spesielt om vinteren da sollys er godt for kroppen og psyken. 😊
«Jeg får mer og mer behov for lineær algebra i arbeidet mitt.»
Hva er ditt beste tips til et verktøy andre burde begynne å bruke? 🔨
Hvis du utvikler en webapp, så er det en sjanse for at du kan dra nytte av Web Workers API-et og la hovedtråden heller fokusere på UI og animasjoner.
Selv har jeg brukt web workers til oppgaver som krever tunge kalkuleringer, fetching og prosessering av data, og encoding. Das Surma hadde en ganske bra presentasjon om dette på Chrome Dev Summit 2019.
Hva har du lyst til å lære mer om framover? 🦉
Jeg får mer og mer behov for lineær algebra i arbeidet mitt, og det er noe jeg ikke har hatt så veldig mye om på skolen da jeg ikke gikk realfag. Det og kalkulus er noe jeg har lyst å lære mer om på en praktisk måte.
Ellers så er elektronikk og tingenes internett (IoT) fortsatt et felt jeg har lyst å utforske mer. Drømmen er jo å eie en robotarm som kan kompensere for alle high-fives jeg går glipp av på hjemmekontoret.
Av nye teknologier så er WebGPU og WebXR APIet noe jeg følger med på.
Vil friskmelde W3Schools:- Digger fortsatt de enkle forklaringene
Hva er det verste du kan bli spurt om på jobben? 🔥
Det er to ting jeg ikke kan fordra.
Det ene er å bli bedt om å implementere funksjonalitet der det ikke er gjort research på behovet for funksjonaliteten og verdien den vil skape for brukeren.
Det andre er å bli spurt om status på ting det er booket statusmøte for samme dag. Heldigvis er ikke dette noe som skjer ofte 😅
Når ble du sist flau, nervøs eller stressa for noe på jobb? 😅
Det skal en del til for at jeg blir flau, nervøs, eller stressa. Så lenge jeg gjør det beste jeg kan, så skal jeg ikke være flau eller nervøs for å feile. Det henger kanskje sammen med at det meste av det jeg utvikler ikke er livsviktig. Det hadde vært kjedelig hvis noen døde fordi koden jeg pusha til prod ikke kjører 60 fps. 😄
Kevin (23) ble utvikler som lærling: - Snille kollegaer har hjulpet meg dit jeg er nå
Hva synes du norske utviklere bør bli flinkere på? 🙏
Det er skummelt å dra flere under en kam, men jeg syns vi kan bli bedre på design og estetikk. Som nordmenn har vi mye å hente fra prinsipper i skandinavisk design og dens historie i det vi utvikler.
Om en ikke jobber så mye med design selv, så er det fint å kunne litt om psykologi og verdien i design for å forstå, men også utfordre designerne. Nå arbeider jeg med noen av Skandinavias, om ikke verdens beste designere, og legger merke til at de prosjektene som gir best resultater er der vi jobber tett sammen og løser ting sammen.