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.
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
02
AdmincontrolFullstack developervia Sopra Steria
Admincontrol — board portal and virtual data room
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
03
ValgdirektoratetFrontend and fullstack developer
Electronic voting for a public referendum
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
04
Norsk HelsenettFrontend developervia Capgemini
SyntPop — synthetic test data for healthcare
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
05
Extenda RetailSoftware engineer
Point-of-sale systems: operations and modernisation
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
06
StatpedFullstack developer
Tastaturbo and modernising educational games
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
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.
Independent contract on a UGC platform and marketplace, from planning through launch — architecture and stack, design and final polish.
Valgdirektoratet/Adviser and fullstack developer
Part of a small team maintaining parts of the EVA election system, alongside the referendum platform.
Capgemini/Consultant, frontend developer
Placed as a frontend consultant, primarily with Norsk Helsenett.
Extenda Retail/System engineer
Debugging and fixing business-critical legacy systems, working from customers' own reports.
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.