Snø
Snøkam logo Tilbake

Morten Jansrud

Seniorutvikler i Snøkam 💻 🕺🏼

Morten Jansrud
morten.jansrud@snokam.no
+47 995 75 022
Morten er utdannet sivilingeniør i Kybernetikk og Robotikk ved NTNU, med spesialisering innen sanntidssystemer. Morten har deltatt i en rekke utviklingsteam, både som frontend- og backendutvikler. Han har god kjennskap til alle lagene i en moderne applikasjonsplattform, med JS og React/React Native i frontend, Java/Kotlin og Node.js i mellomlaget og SQL-database som lagringsmedium. I tillegg behersker han app-utvikling på Android og iOS og andre datalagringsmodeller, som graf-databaser. Han legger stolthet i at teamet skal levere bra, tar gjerne ansvar for å følge opp arbeidsoppgavene til teamet, og bidrar til godt, positivt arbeidsmiljø. Han tar ofte initiativ sosialt og trives svært godt i team. Som utviklingsmetode har han kjennskap til, og jobbet med, flere varianter av smidig utvikling, som Scrum og Kanban. Med en lidenskap for IT og erfaring fra både profesjonelle og personlige prosjekter, er Morten en verdifull ressurs for ethvert utviklingsteam.
Frontend
Backend
Kunstig Intelligens

Prosjekter

Storebrand
10.2021 - 02.2023
Storebrand har primært en portefølje av produkter som er utviklet med React m/Typescript i frontend, Java m/Spring Boot i mellomlaget og PostgreSQL som database. Systemene kjører på et kubernetes cluster i Google Cloud og snakker sammen med REST, Pub/Sub og GraphQL. Sentry og Datadog blir benyttet til metrikker og feilsøking. Team Happy Customers hadde ansvar for felles signeringsløsning for elektroniske dokumenter, sikker kommunikasjon mellom kunde og rådgiver (Salesforce), oversiktsside med visning av kundens produkter, felleskomponenter for navigasjon (header/footer), dokumentarkiv, løsning for samtykker, og profil for endring av personlig data og innstillinger. Det var høyt fokus på smidig metodikk med små og raske leveranser til produksjon. Teamet besto av en produkteier, en ux/grafisk designer og fem utviklere og jobbet kontinuerlig med å utvikle ny funksjonalitet basert på selvdefinerte mål (OKR). I løpet av perioden fullførte teamet modernisering av hele porteføljen ved å flytte servere og databaser fra on-prem til GCP.
React
Java
Google Cloud
Docker
Kanban
Github Actions
ES6+
Jest
GraphQL
Webpack Module Federation
Mikrotjenester
Jira
Apex
JPA
Swagger
Datadog
Entur
04.2021 - 09.2021
Samtlige av løsningene benyttes av store deler av Norges befolkning og har høye krav til universell utforming. For billettkjøp og reiseplanlegger benyttet teamet React (web) og React Native (app) i frontend, og Node.js med Express.js i BFF (backend-for-frontend). Applikasjonene ble driftet serverless på Firebase Functions. Eksterne tjenester ble integrert med GraphQL, og Firestore ble brukt som database ved behov. Applikasjonene ble distribuert til interne testere med Firebase App Distribution, og lastet opp til Google Play, Huawei App Gallery og App Store via automatiserte prqosesser på CircleCI. Grafana, Sentry og StackDriver ble benyttet til metrikker og feilsøking. Teamet var et tverrfaglig produktteam, og utviklingsmetodikken var i likhet med resten av selskapet sentrert rundt smidig produktutvikling med svært høy leveransetakt til produksjon. Teamet konsumerte og integrerte mot en rekke interne og eksterne systemer, og løsningene hadde naturligvis høye krav til oppetid, brukervennlighet og universell utforming. Teamet benyttet seg av OKR for målstyring og synergier på tvers, samt utstrakt bruk av testing.
React
REST API
React Native
Google Cloud
Node.js
Javascript
Smidig metodikk
Kanban
Universell utforming
CircleCI
CI/CD
ES6+
Jest
GraphQL
Mikrotjenester
Jira
Bitbucket
GeoJson
Firebase
Auth0
MapBox
Figma
Amplitude
Express.js
NAV
04.2019 - 04.2021
Etatens systemer benyttes av millioner av nordmenn, og med dette følger høye forventninger til ytelse, pålitelighet og universell utforming. Teamet valgte å benytte React i frontend, Java / Kotlin i BFF (backend-for-frontend) og PostgreSQL som database i innsiktsløsningen for GDPR og andre applikasjoner i porteføljen. Rammeverket Next.js ble brukt som hodeløs frontend for Enonic XP, som er et publiseringssystem basert på Java and Elasticsearch. Applikasjonene ble driftet i docker-containere på Kubernetes, og teamet påbegynte migrering til kubernetes-cluster i offentlig sky. Grafana og Kibana ble brukt for metrikker og logger, og Github Actions for CI/CD. Det tverrfaglige teamet besto av både internt ansatte og konsulenter, og hadde ansvar for blant annet publiseringssystemet, GDPR (General Data Protection Regulation), innsiktsløsninger og søknadsskjemaer. Teamet hadde fokus på å få kontinuerlige tilbakemeldinger, og deretter gjøre små og kjappe iterasjoner for å skape bedre produkter. Teamet leverte kontinuerlig og forvaltet sin egen portefølje.
React
Enzyme
Kotlin
Azure
REST API
Typescript
Redux
Feature toggling
Kubernetes
PostgreSQL
Github Actions
CI/CD
Spring Boot
WCAG
GDPR
GitHub
NextJS
Grafana
LESS
Docker
Jenkins
Enonic
Sanity
Java
Enhetstesting
Deloitte Digital
06.2017 - 08.2017
Prosjektet gikk ut på å utvikle en bildedelingstjeneste til bruk i forbindelse med rekruttering, konkurranser og interne arrangementer. Plattformen er et sosialt media hvor bilder lastes opp og knyttes til spesifikke arrangementer som kan kommenteres, få likes og deles videre. Applikasjonen ble laget i React Native med backend i Node.js og Neo4j som lagringsmedium, med administratorpanel og landingsside utviklet i React. Serverne ble hostet på Heroku med inkludert CI/CD. Teamet besto av en produkteier, en designer og tre utviklere som forvaltet og videreutviklet produktet. Ansatte i organisasjonen ble oppfordret til å ta applikasjonen i bruk for å undersøke interessen for produktet, analyser bruksmønster, og kartlegge behovet for ny funksjonalitet. Feil ble oppdaget raskt med tilbakemeldingsskjema i applikasjonen og metrikker på utvalgte skjermer på kontoret. Med kort vei til produksjon og A/B tester, kunne teamet eksperimentere med forskjellige løsninger på samme problem, implementere endringer og lansere oppdateringer kontinuerlig, for å oppnå smidig utvikling med gode og raske beslutninger.
Android
iOS
React Native
Neo4j
Git
StyleComponents
Webpack
Heroku
Google Analytics
HMTL
CSS
Kongsberg Defence & Aerospace
06.2015 - 08.2015
Prosjektets mål var å bygge om en vannscooter til et ubemannet overflatefartøy / Unmanned Surface Vehicle (USV), slik at den kan fjernstyres og utføre oppdrag på egenhånd. Det manuelle styringssystemet ble erstattet med egenutviklet elektronikk styrt av en Arduino og skrevet i C med integrasjon mot ROS (Robotic Operating System), et rammeverk som forenkler utvikling og drift av avanserte roboter og droner. Ytterligere moduler i C++ ble implementert for kommunikasjon med basestasjon på land, sammen med en PID-regulator (Proporsjonal Integrasjon Derivasjon) for selvkjørende funksjonalitet. Et grafisk grensesnitt ble utviklet i Qt for å kunne observere aktiv rute på kartet, sammen med nåværende posisjon, fart og retning. Teamet besto av 16 ingeniørstudenter fra NTNU som ble delt opp i undergruppene Software, Mekanikk, Regulering og Elektronikk basert på kunnskap, interesse og studieretning. Teamet jobbet smidig og lagde prototyper av de distribuerte systemene slik at potensielle utfordringer med spesifikasjoner og grensesnitt ble oppdaget på et tidlig stadium, og for å raskt utvikle et fungerende produkt. Deretter forbedret teamene systemene iterativt for økt stabilitet og ytelse. Innen sommeren var over hadde teamet en drone som kunne fjernstyres, og første versjon av moduler for selvkjørende funksjonalitet var utviklet.
Robotic Operating System (ROS)
C++
Qt
Go
System testing
Systemarkitektur
Systemintegrasjon

Arbeidsgivere

Fullstack utvikler i Snøkam ASSnøkam logo
2023 -
Fullstack utvikler i Dfind Consulting
2021 - 2023
Fullstack utvikler i Bekk Consulting
2019 - 2021
iOS og Android utvikler i Deloitte Digital
2017 - 2017
Tech lead i Kongsberg Defence & Aerospace
2015 - 2015

Utdanning 🎓📚👨🏻‍🎓

Mastergrad i Kybernetikk og robotikk (Norges teknisk-naturvitenskapelige universitet (NTNU))
2013 - 2018

Kontakt meg

Morten Jansrud
morten.jansrud@snokam.no
+47 995 75 022