Bjørn koder en ny mobil­operatør

Ukas Koder Bjørn Remseth i Telenor jobber med eSIM i Kotlin og Go, men har mye på hjertet om helt andre språk.

Ukas Koder Bjørn Remseth i Telenor har vært utvikler i 35 år, og jobber nå med å lansere en ny teleoperatør. 📸: Privat
Ukas Koder Bjørn Remseth i Telenor har vært utvikler i 35 år, og jobber nå med å lansere en ny teleoperatør. 📸: Privat Vis mer

Hvordan begynte du med koding? 👶

Jeg begynte å skrive kode på ungdomsskolen, uten datamaskiner, på papir. Deretter Assembly, så BASIC og så videre.

Studerte informatikk ved universitetet i Oslo, jobbet noen år på universitetet, og deretter i et par startups.

Ett av dem med det beste domenavnet noen sinne: “yes.no”, med kolleger som perhaps@yes.no og maybe@yes.no, som kanskje er de beste postadressene noen sinne. 😀

Var også innom Fast Search & Transfer, og drev som selvstendig konsulent en periode.

Så har det vært diverse i Telenor i noen år, blant annet Nextra, Norge, Norden, research, Comoyo og digital.

Hva jobber du med akkurat nå? 🛠️

Jeg lager en teleoperatør som snart skal lanseres i et annet land.

Teamet mitt skriver det aller meste av programvaren som inngår i den; håndsettklient, BSS, telekommunikasjons-protokoller og så videre.

Jeg har skrevet (og skriver) kode som håndterer eSIM, som er "SIM-kort” som kan lastes ned via nettet til håndsettet. Fine saker, som gjør at man kan fjerne alt som har med fysisk SIM-distribusjon å gjøre.

Jeg skriver stort sett kode i Kotlin og Go, med noe Python og noe Shell. Språk endrer seg, og jeg gjør regning med at jeg vil bruke andre språk også til samme tid neste år.

Pulten til utvikleren Bjørn Remseth hos Telenor. 📸: Privat
Pulten til utvikleren Bjørn Remseth hos Telenor. 📸: Privat Vis mer

Hvordan ser en typisk arbeidsdag ut for deg? ☕

Stå opp, komme meg på toget. Lese litt mail og se hva som har skjedd på Slack, eventuelt høre på noen forelesninger (tar online kurs så mye jeg klarer), mens jeg er på toget

På kontoret: Drikke kaffe, prøve å få gjort noe frem til lunch (skrive kode, typisk, men ikke alltid).

Et par dager i uken går med til møter. Vi prøver å konsentrere dem til mandager og fredager - men det er ikke bare lett, så det sklir ut.

Hva synes du er de mest spennende språkene, rammeverkene eller teknologiene akkurat nå? ✨

Jeg er nå i en veldig pragmatisk periode - skal lage ting som virker. 😃 Med det sagt; jeg liker å utforske språk.

Kotlin er et spennende språk, i den forstand at det er en bra kombinasjon av etablerte ideer fra mange paradigmer som fungerer på en stabil platform (JVM). En slags vel gjennomført maksimalisme.

Go liker jeg også veldig godt. Det føles godt å skrive Go-kode, og selv om det ikke er noe enkelt språk, er det et lite språk med noen få veldig sterke abstraksjonsmekanismer. Vel gjennomført minimalisme. Jeg har nesten sluttet å skrive shell script, og bruker heller Go for å lime sammen komponenter skrevet i alt mulig.

«Python er interessant fordi det... suger på så mange måter, men fortsatt er så brukbart.»

Lisp er et språk jeg alltid har vært veldig glad i, spesielt Common Lisp. Det er ofte det språket jeg går til når jeg skal skissere noe for meg selv. Dessverre er det ikke så lett å skrive produksjonskode i Lisp, og det er ikke så mange som liker språket så godt som meg, så det er vanskelig å finne et community å jobbe i.

For tiden lærer jeg meg hvordan å jobbe med dype nevrale nettverk, og da jobber jeg i Python. Python er interessant fordi det... suger på så mange måter, men fortsatt er så brukbart. 😉

Spøk til side: Jeg misliker fravær av statisk typing (Common Lisp har for eksempel statisk typing om man ber om det, og OK, mypy kan gjøre noe for Python, men det er ikke vanlig).

Mangfoldet av biblioteker i Python-universet er veldig bra. Notebooks av ymse slag fascinerer meg og: De er åpenbart nyttige, men himmel og hav så mye man ofrer av software engineering-praksiser. Mye arbeid gjenstår der.

Jeg er fascinert av Julia, det har såvidt jeg kan forstå (nesten) alle fordelene til Python, og Matlab, men er fullt open source, har ekstremt god runtime-effektivitet, har et skikkelig typesystem og typeinferens, så man slipper å skrive så mye. Har ikke brukt det til produksjonskode, men bruker det endel til koseprogrammer.

Tilbake til nevrale nett og datasett av ymse slag: Her er det åpenbart typing, men typingen er ofte av en slik art at den oppdages etterhvert, slik at en god del av utviklingsjobben er å oppdage og beskrive typingen i dataene man jobber med. Denne prosessen er det per i dag lite støtte for i de verktøyene jeg har sett, så det er noe det nok er mulig å arbeide med - språkmekanismer for å støtte dette.

Hva er du mest stolt av å ha laget? 🏆

Antagelig det jeg holder på med nå: Et miljø der det er mulig å utvikle moderne teletjenester med moderne programvaremetoder.

Før det; muligens SMS til epost-gatewayen til Netcom/Telia. Den ble bygget for rundt tyve år siden, og har gått som ei klokke siden.

Hva er det vanskeligste ved å være utvikler? 🤷

Frustrasjoner. 😄 Både med at ting ikke virker, at man ikke selv forstår det man skal gjøre, at andre ikke forstår det man gjør, men mest at ting ikke virker. Hele tiden. Nesten.

Hva synes du norske utviklere bør bli flinkere på? 🙋

Norske utviklere er ganske gode, men å bli bedre til å forstå hvordan man skrur ting sammen til forretning er viktig.

Hva liker du å gjøre når du ikke jobber? 🕹️

Har fire barn. 😁 Har også noen hobbyprosjekter i koding rundt foto og robotikk. Spiller endel musikk, er veldig glad i fotografi, og elsker å ferdes i naturen på ymse vis.