Frontend Chapter Lead · Senior Full Stack · Since 1998
I build products end to end, and lead the people who build them.
More than two decades in: I co-founded a software company and shipped a CMS used on 1,500+ sites over its life, then led the rewrite of DFDS’s B2B freight platform onto a modern microservice stack. Today I run the Frontend Chapter for the Ferry tribe at DFDS, setting direction across teams while staying in the code.
What is different now is how I build. Most of my work runs through an AI-assisted, agentic workflow that takes an idea to a shipped result in a fraction of the usual time. I build the harness the agents run in, not just the code, and I still own the architecture and everything that ships.

The Lab
Most developers use AI to write code. I build the systems that do it: agents, pipelines and harnesses, mostly solo and fast.
A game for coders, made for events. React + Convex on Vercel, promo built in Remotion. blind-code.vlx.dk
A multi-agent PR-drafting pipeline: a Tauri app over the Copilot CLI SDK, with architect, reviewer and test-writer agents behind quality gates. The clip is a 15x speed-run.
The story
As the hiring manager, I made every campaign in this deck myself with AI. I was building out a frontend team (a few mid-levels, a senior, two leads), and the ads got noticed: candidates brought them up in interviews. Keep scrolling to flip through them, from a single generated image to full multi-scene productions.
Stills, then short videos, then mini campaigns.
Phase 1 · Stills
Job ads built from AI stills riffing on Pixar and Disney, made with whatever image model was best at the time (nano banana). A few tries, an afternoon each.


Phase 2 · Motion
The stills started moving. Short AI videos, an afternoon of work, riding each new best model as it landed (Sora, then Veo 3).
Phase 3 · Productions
Full mini campaigns: multi-scene video from Seedance 2.0 with music from ElevenLabs. Still one afternoon, still solo.
Idea to result
I made this 30-second promo for blind-code in about 20 minutes, with three prompts. Remotion reused the real components from the site, so the time went into direction, not keyframes: what to show, the pacing, the music. The model fills a blank. It does not take a seat.

At DFDS I run the Frontend Chapter for the Ferry tribe, setting frontend direction and standards across teams while staying hands-on. I led the rewrite of the Freight B2B platform onto a microservice stack: a Next.js multi-zone monorepo (Control Tower) with a Nest.js BFF, plus AI document ingestion in MyFreight that turns unstructured shipping documents into structured data.
We run a Serverless setup with a DevOps flow in GitHub Actions, with automated tests in Jest and Playwright. As Chapter Lead I also set frontend direction and standards across teams, and increasingly build with an AI-assisted, agentic workflow.

Four of us founded SiteWorks in 2002, buying out the product we had started building inside Telia Internet. For the next 16 years I was the lead developer behind two custom CMS platforms that were used on more than 1,500 sites over their lifetime, by names like IBM, Deloitte, Dong Energy and Vækstfonden.
Both were built on SQL Server: the original in Classic ASP, the rewrite in .NET MVC and C#. Sites built on them are still live today, including Aidsfondet.dk and Artisten.dk, plus an event-registration system used by large organisations. See more cases here.
When our larger SiteWorks clients needed custom software, I built it. Dansk Artist Forbund needed a way for members to create binding contracts between artists and venues, so I built one: a guided multi-step form that adapts to the user's input, runs through an approval flow, and ends in a generated PDF contract.
This was my first React project, in 2016, with a .NET Core backend. A deliberate early bet on a stack that has defined the rest of my career.
Danske Fodterapeuter had a harder problem: clinic owners had to follow a 50-page guide to build a valid tenancy contract. I turned that guide into software, with a guided workflow, helper functions that did the heavy lifting, and authenticated access for logged-in members.
Same modern stack, React, Redux and .NET Core, applied to a genuinely gnarly domain. The kind of work where the value is in making something complex feel obvious.