> maagero.dev
[email protected] Tønsberg, Norge English

Mathias Maagerø Lekven

Fullstackutvikler, med mål om gode brukeropplevelser

Jeg er fullstackutvikler med en kjærlighet for frontend. De siste årene har jeg bygget løsninger i både Vue og React med .NET eller Supabase bak — fra elektronisk stemmegivning i en folkeavstemning til styreportal og datarom der tilgangsstyring og sporbarhet er selve produktet. Det siste året har jeg jobbet AI-assistert i den typen kode — høy fart på selve skrivingen, men med verifikasjonen forankret hos meg og ikke hos maskinen. Jeg jobber tett med design og forretning, og er mest fornøyd når det jeg leverer faktisk kan brukes av alle som skal bruke det.

Tilgjengelig for oppdrag

Send meg en e-post

Utvalgte prosjekter

Samvar — Hemvar og Fagvar

Fagpersonen skriver tilstandsanalysen i Fagvar; rapporten deles gjennom det felles .NET-API-et inn i styrets Hemvar.FagvarAnalyseRapportDelt API.NETHemvarStyret

Samvar er to produkter på én plattform. Hemvar er driftsappen for boligselskap — borettslag og sameier — der styret følger opp eiendommen sin: avvik med bilder, driftsoppgaver, vedlikeholdsplan og dokumenter, per bygg. Fagvar er verktøyet fagfolkene bruker til tilstandsanalyser. Poenget er koblingen mellom dem: rapporten en fagperson skriver i Fagvar havner rett inn i styrets Hemvar, i stedet for å bli en PDF på e-post.

Jeg bygger begge appene og backend-en de deler. Tre React 19-apper — Hemvar, Fagvar og et internt adminverktøy — i et pnpm- og Turborepo-monorepo med Vite og TanStack Router, mot ett felles .NET-API. Clerk håndterer innlogging, og tenants er typet per app, slik at samme person kan sitte både i et Fagvar-firma og i et Hemvar-styre uten at de blandes. Bygningsdeler er kodet etter NS 3451, eiendommer slås opp mot matrikkelen hos Kartverket, og fakturering går per bygg via Tripletex. Adminappen gir KPI-er, kundeoppfølging og resynk av delte rapporter på tvers av begge produktene.

  • React 19
  • TypeScript
  • Vite
  • TanStack Router
  • .NET
  • Clerk
  • Turborepo
  • Tripletex

Admincontrol — styreportal og virtuelt datarom

Styrer og rådgivere når fortrolige dokumenter gjennom en React-portal og tilgangsstyring i .NET, mot datarommet i SQL Server.StyrerådgiverPortalReactTilgang.NET-APIDataromSQL Server

Admincontrol leverer styreportal og virtuelt datarom til styrer, ledergrupper og rådgivere i Norden. Alt som ligger der er fortrolig — styrepapirer, transaksjonsdokumenter, sensitive personopplysninger — og tilgangsstyring og sporbarhet er ikke en detalj rundt produktet, det er produktet.

Jeg jobbet fullstack på produktet, med React og TypeScript i frontend og .NET mot SQL Server bak. Kravene til presisjon gikk gjennom alle lag: en feil i tilgangsstyring eller datamodell er ikke en kosmetisk bug her, den er et sikkerhetsbrudd. Jeg brukte AI aktivt for å holde høy fart, men med menneskelig verifikasjon som et eget lag i prosessen — jeg leste og forsto hver linje som gikk videre, og lot ingenting passere på tillit alene. Fart fra maskinen, kontroll fra mennesket.

  • React.js
  • TypeScript
  • .NET
  • C#
  • SQL Server

Elektronisk stemmegivning til folkeavstemning

Velger logger inn via ID-porten og en Backend-for-Frontend i .NET, til stemmeportalen i Vue.VelgerID-portenOIDCBFF.NET 7StemmeportalVue

Valgdirektoratet har det operative ansvaret for valggjennomføring i Norge. Til folkeavstemningen i Søgne, Songdalen og Kristiansand skulle det for første gang leveres en løsning der stemmeberettigede kunne avgi stemme elektronisk.

Jeg bygget stemmeportalen i Vue med TypeScript, på et nytt designsystem basert Valgdirektoratets eget. På backend implementerte jeg en Backend-for-Frontend i .NET med Duende Identity Server, slik at velgere kunne logge inn via ID-porten. Jeg kjørte brukertester med blindeforbundet, og det var et stregnt krav om tilgjengelighet og at vi fulgte WCAG 2.1.

Folkeavstemningen ble gjennomført delvis elektronisk — enklere og rimeligere enn en rent fysisk gjennomføring.

  • Vue.js
  • TypeScript
  • .NET 7
  • OIDC / ID-porten
  • WCAG 2.1
  • C#
  • Duende Identity Server
  • Scrum
  • GitLab

SyntPop — syntetiske testpersoner for helsesektoren

Syntetisk folkeregister mates gjennom en modell og et .NET-API til SyntPop-grensesnittet i React.SyntetiskfolkeregisterModellAPI.NETSyntPopReact

Norsk Helsenett trengte realistiske, men syntetiske testpersoner for å kvalitetssikre digitale helsetjenester uten å røre ekte persondata. SyntPop er selvbetjeningsløsningen for å finne, opprette og redigere slike testpersoner.

Jeg bygget frontend i React mot et .NET-API dokumentert med OpenAPI. SyntPop var pilot for Norsk Helsenetts nye designsystem, så jeg jobbet tett med designteamet for å få WCAG 2.1 inn fra starten. Jeg skrev også Python-script for å vaske helsedata.

  • React.js
  • TypeScript
  • .NET
  • WCAG 2.1
  • Python
  • OpenAPI / Swagger
  • Scrum

Drift og modernisering av kassesystemer

Kassene sender hendelser over RabbitMQ til .NET-tjenester og videre til butikkdatasystemet.KasseRabbitMQTjenester.NETButikkdata

Extenda Retail leverer kasse- og butikkdatasystemer til ledende dagligvarekjeder i Norge og Norden. Systemene er forretningskritiske: står de, stanser butikkdriften.

Jeg vedlikeholdt og moderniserte store .NET-systemer i daglig produksjon, fra .NET Framework 4.5 mot .NET 5. Deler var hendelsesdrevet over RabbitMQ. Teamet jobbet testdrevet, så jobben var ofte å skrive tester rundt eksisterende kode før den kunne endres trygt.

  • C#
  • .NET Framework
  • RabbitMQ
  • TDD
  • MySQL
  • .NET Core
  • GitHub

Tastaturbo og modernisering av læringsspill

Gamle Flash-spill portet til JavaScript, testet med skjermleser og leselist.Flash-spillPort tilJavaScriptSkjermleserleselist

Statped lager digitale læremidler for barn og unge med særskilte behov. Tastaturbo er et skriveverktøy som brukes i skolen, ved siden av en portefølje eldre læringsspill bygget i Flash.

Jeg videreutviklet Tastaturbo og portet gamle Flash-spill til JavaScript. Arbeidet foregikk tett på pedagoger og testbrukere, og jeg brukertestet jevnlig med blinde og døve elever. Det var her jeg lærte hvordan leselister og skjermlesere faktisk brukes.

Læremidlene kunne fortsatt brukes i skolen etter at Flash ble faset ut.

  • JavaScript
  • Universell utforming
  • Brukertesting
  • HTML5
  • CSS
  • Scrum

Erfaring

  1. Sopra Steria Systemutvikler

    Senior fullstackutvikler ved kontoret i Drammen, hele perioden ute hos Admincontrol — sikkerhetskritisk programvare for styrer og transaksjoner.

  2. ContentCloud Fullstackutvikler Selvstendig oppdrag

    Selvstendig oppdrag på en UGC-plattform og markedsplass, fra planlegging til lansering — arkitektur og teknologivalg, design og siste finpuss.

  3. Valgdirektoratet Rådgiver og fullstackutvikler

    Del av et mindre team som forvaltet deler av valgsystemet EVA, i tillegg til folkeavstemningsløsningen.

  4. Capgemini Konsulent, frontendutvikler

    Utleid som frontendkonsulent, hovedsakelig til Norsk Helsenett.

  5. Extenda Retail System engineer

    Feilsøking og feilretting i forretningskritiske legacy-systemer, ut fra kundenes egne beskrivelser.

  6. Statped Rådgiver og utvikler

    Modernisering av læringsspill for blinde og døve elever, blant annet porting fra Flash til JavaScript.

Kompetanse

Til daglig

  • TypeScript
  • React
  • Next.js
  • Tailwind CSS
  • HTML
  • CSS
  • .NET (C#)
  • PostgreSQL
  • Git

Komfortabel med

  • REST-API
  • Vue.js
  • Nuxt
  • OIDC og autentisering
  • WCAG 2.1
  • Semantisk HTML og ARIA
  • Supabase
  • Brukertesting
  • GitHub Actions
  • Scrum
  • OpenAPI / Swagger
  • TDD

Kjent med

  • Python
  • Kotlin
  • RabbitMQ
  • Azure
  • i18n
  • Docker

Universell utforming er ikke en avkrysningsboks for meg. Jeg har jobbet med WCAG 2.1 på tvers av offentlig sektor, helse og utdanning, brukertestet med blinde og døve brukere, og vært med på å bygge designsystemer der kravene er lagt inn fra starten i stedet for etterpå.

Utdannelse

  • 2015–2018
    Bachelor i informatikk, NTNU
    Valgfag innen frontendutvikling og design. Bacheloroppgave om personvern og sikkerhet på nett.
  • 2018–2019
    Årsenhet, lektor, NTNU
    Pedagogikk, matematikk og kjemi.

Sertifiseringer

  • Microsoft Certified: Azure Developer Associate
    11.2021
  • Kotlin for Java Developers
    11.2025

Språk

  • Norsk
    Morsmål
  • Engelsk
    Meget god muntlig og skriftlig
  • Norsk tegnspråk
    Grunnleggende

Kontakt

[email protected] Tønsberg, Norge