> maagero.dev
[email protected] Tønsberg, Norway Norsk

Mathias Maagerø Lekven

Fullstack developer · frontend and accessibility

I'm a fullstack developer with my centre of gravity in frontend and accessibility. For the past few years I've built things in Vue/Nuxt and React/Next with .NET or Supabase behind them — from electronic voting in a public referendum to a board portal and data room where access control and auditability are the product itself. This past year I've worked AI-assisted on exactly that kind of code — fast on the writing, with verification staying mine rather than the machine's. I work closely with design and business stakeholders, and I'm happiest when what I ship is genuinely usable by everyone who has to use it.

Available for freelance and consultant work

Send me an email

Selected work

Samvar — Hemvar and Fagvar

A professional writes the condition analysis in Fagvar; the report is shared through the common .NET API into the board’s Hemvar.FagvarAnalysisReportShared API.NETHemvarBoard

Samvar is two products on one platform. Hemvar is the operations app for Norwegian housing companies — borettslag and sameier — where the board looks after its property: deviations with photos, recurring maintenance tasks, long-term plans and documents, all per building. Fagvar is the tool professionals use to carry out condition analyses. The point is the link between them: the report a professional writes in Fagvar lands straight in the board's Hemvar, instead of becoming a PDF attached to an email.

I build both apps and the backend they share. Three React 19 apps — Hemvar, Fagvar and an internal admin tool — in a pnpm and Turborepo monorepo with Vite and TanStack Router, against a single shared .NET API. Clerk handles sign-in, and tenants are typed per app, so one person can sit in a Fagvar firm and on a Hemvar board without the two mixing. Building parts are keyed on NS 3451 codes, properties are looked up against Kartverket's cadastre, and billing runs per building through Tripletex. The admin app carries KPIs, customer follow-up and re-syncing of shared reports across both products.

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

Admincontrol — board portal and virtual data room

Boards and advisers reach confidential documents through a React portal and .NET access control, into the SQL Server data room.BoardadviserPortalReactAccess.NET APIData roomSQL Server

Admincontrol provides a board portal and virtual data room for boards, management teams and advisers across the Nordics. Everything inside it is confidential — board papers, transaction documents, sensitive personal data — and access control and auditability aren’t a detail around the product, they are the product.

I worked fullstack on the product, with React and TypeScript on the front end and .NET against SQL Server behind it. The demand for precision ran through every layer: a mistake in access control or the data model isn’t a cosmetic bug here, it’s a security breach. I used AI heavily to keep the pace high, but with human verification as a deliberate layer of its own — I read and understood every line that went further, and let nothing through on trust alone. Speed from the machine, control from the human.

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

Electronic voting for a public referendum

Voter authenticates through ID-porten and a .NET Backend-for-Frontend, into the Vue voting portal.VoterID-portenOIDCBFF.NET 7Voting portalVue

The Norwegian Directorate of Elections runs national election operations. For the referendum in Søgne, Songdalen and Kristiansand, it needed — for the first time — a platform where eligible voters could cast their vote electronically.

I built the voting portal in Vue and TypeScript, on a new design system derived from the directorate's own. On the backend I implemented a Backend-for-Frontend in .NET 7 with Duende Identity Server, so voters could authenticate through ID-porten. I ran the user testing myself, against WCAG 2.1.

The referendum ran partly electronically — simpler and cheaper to administer than a purely paper-based vote.

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

SyntPop — synthetic test data for healthcare

A synthetic population register feeds a model and a .NET API behind the React SyntPop interface.SyntheticpopulationModelAPI.NETSyntPopReact

Norsk Helsenett needed realistic but synthetic test people, so digital health services could be quality-assured without touching real personal data. SyntPop is the self-service tool for finding, creating and editing them.

I built the frontend in React against a .NET API documented with OpenAPI. SyntPop piloted Norsk Helsenett's new design system, so I worked closely with the design team to build WCAG 2.1 in from the start. I also wrote Python scripts to clean health data.

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

Point-of-sale systems: operations and modernisation

Tills emit events over RabbitMQ into .NET services and on into the store data system.TillRabbitMQServices.NETStore data

Extenda Retail supplies point-of-sale and store systems to leading grocery chains across Norway and the Nordics. These systems are business-critical: if they stop, the shops stop.

I maintained and modernised large .NET systems running in daily production, from .NET Framework 4.5 towards .NET 5. Parts were event-driven over RabbitMQ. The team worked test-first, so the job was often writing tests around existing code before it could safely change.

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

Tastaturbo and modernising educational games

Old Flash games ported to JavaScript, tested with screen readers and braille displays.Flash gamesPort toJavaScriptScreen readerbraille

Statped builds digital learning tools for children and young people with special needs. Tastaturbo is a writing tool used in schools, alongside a portfolio of older learning games built in Flash.

I developed Tastaturbo further and ported old Flash games to JavaScript. The work happened close to teachers and test users, and I user-tested regularly with blind and deaf pupils. This is where I learned how braille displays and screen readers are really used.

The learning tools stayed usable in schools after Flash was discontinued.

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

Experience

  1. Sopra Steria Systems developer

    Senior fullstack developer out of the Drammen office, the whole period on assignment with Admincontrol — security-critical software for boards and transactions.

  2. ContentCloud Fullstack developer Independent contract

    Independent contract on a UGC platform and marketplace, from planning through launch — architecture and stack, design and final polish.

  3. Valgdirektoratet Adviser and fullstack developer

    Part of a small team maintaining parts of the EVA election system, alongside the referendum platform.

  4. Capgemini Consultant, frontend developer

    Placed as a frontend consultant, primarily with Norsk Helsenett.

  5. Extenda Retail System engineer

    Debugging and fixing business-critical legacy systems, working from customers' own reports.

  6. Statped Adviser and developer

    Modernising learning games for blind and deaf pupils, including porting from Flash to JavaScript.

Skills

Day to day

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

Comfortable with

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

Familiar with

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

Accessibility isn't a checkbox for me. I've worked to WCAG 2.1 across public sector, healthcare and education, user-tested with blind and deaf users, and helped build design systems where the requirements are baked in from the start rather than retrofitted.

Education

  • 2015–2018
    BSc in Informatics, NTNU
    Electives in frontend development and design. Thesis on privacy and security online.
  • 2018–2019
    One-year teacher training programme, NTNU
    Pedagogy, mathematics and chemistry.

Certifications

  • Microsoft Certified: Azure Developer Associate
    Nov 2021
  • Kotlin for Java Developers
    Nov 2025

Languages

  • Norwegian
    Native
  • English
    Fluent, written and spoken
  • Norwegian Sign Language
    Basic

Contact

[email protected] Tønsberg, Norway