Gå til indhold

Erfaring

Her finder du mine hovedprojekter, tidligere kundeopgaver, ansættelser og uddannelse. Projekterne står med de nyeste først.

Hovedprojekter

Større opgaver med rolle, ansvar og teknologier.

  1. Banking Circle

    Periode: feb. 2025 – feb. 2026

    Rolle: Senior backend engineer (hands-on), løsningsarkitektur og design

    Senior backend-udvikler i et tværfagligt team med ansvar for design, udvikling og drift af event-drevne backend-services på Azure. Jeg arbejdede med moderne .NET-baserede mikrotjenester, container-platformen AKS og cloud-infrastruktur i et enterprise-setup med høje krav til robusthed, sporbarhed og driftssikkerhed.

    Jeg havde ansvar for at udarbejde og drive arkitektur- og designoplæg for nye backend-services, herunder datamodellering, persistence og event-flows, i tæt samarbejde med team lead og de øvrige udviklere.

    Ansvar og resultater (7)
    • Design og implementering af en greenfield reconciliation-service, herunder datamodel, persistence-strategi og event-kontrakter, der sikrer konsistens mellem databaser, Azure Event Hubs og Azure Service Bus.
    • Udvikling af en ny event-subscriber-service baseret på eksisterende event streams, med fokus på idempotent processing, replay-håndtering og skalerbarhed.
    • Migrering af backend-services fra Azure App Services til Azure Kubernetes Service (AKS), inkl. containerisering, Helm-baseret deployment og tilpasning af runtime-konfiguration.
    • Bedre observability og driftssikkerhed gennem health endpoints, distributed tracing med korrelation på tværs af requests og events samt målrettet brug af metrics til analyse af performance og flaskehalse.
    • Opsætning og vedligeholdelse af CI/CD-pipelines til både applikationskode og infrastructure-as-code, med fokus på reproducerbare builds og sikre deployments.
    • Aktiv vidensdeling og sparring i teamet, herunder code reviews (særligt AKS og Terraform) samt interne oplæg om arkitektur og designvalg.
    • AI-assisteret udvikling og review (GitHub Copilot) som accelerator til implementering af features, refaktorering og kvalitetssikring, med fokus på klare designrammer, testbarhed og sporbarhed.
    • C#
    • .NET
    • .NET Core
    • Azure Web App
    • Azure Service Bus
    • Azure Event Hubs
    • Azure Traffic Manager
    • Azure Application Gateway
    • Azure Key Vault
    • Azure Application Insights
    • Azure SQL
    • Azure Functions
    • Kubernetes
    • Helm
    • Terraform
    • Infrastructure as Code
    • YAML
    • Azure DevOps
    • Entity Framework Core
  2. Letpension

    Periode: aug. 2019 – jan. 2025

    Rolle: Løsningsarkitekt, systemudvikler og systemdesigner, team lead

    Vedligehold og videreudvikling af pensionsrådgivningssystemer samt systemer til udveksling af data med pengeinstitutter, bankcentral og PFA. Rådgivning om forbedring af arbejdsgange omkring softwareudvikling og ALM. Implementering og drift af GDPR-processer.

    Ansvar og resultater (12)
    • Lead på udvikling og vedligeholdbarhed: optimeringer, analyse og fjernelse af død kode, refaktorering til bedre design og testbarhed, refaktorering af dokument-kode til deling på to teknologistakke samt redesign af batch-området til øget stabilitet og isolation og til understøttelse af to teknologistakke.
    • Strategi for og implementering af automatiserede tests: referenceimplementering af BDD og Specification by Example med SpecFlow, med isolerede databaseinstanser til hver test via DACPAC og SQL Server LocalDB.
    • Lead på arkitektur og design: strategi for mikrotjenester vs. modular monolith, design af snitflader og SOLID-principper.
    • Lead på databaser og data access: løsning af lange svartider og dårlig samtidighed ved overgang til snapshot isolation og kortere, mindre transaktioner, analyse og løsning af de største problemer, batching, eager vs. lazy loading m.m.
    • Lead på implementering af GDPR-processer: sletteprocesser for en enorm database med 500+ tabeller og 8 TB data samt interaktion med dataejere om snitflader og proces.
    • Data intelligence: dybe analyser af data på tværs af datakilder og -formater, kvalitetssikring af data og konvertering af kundebestande.
    • Løbende forbedring af udviklingsprocessen: styring af databaseændringer, release-proces og DevOps (Azure DevOps).
    • Cloud-strategi: analyse og plan for migration til cloud samt proof of concept på applikationer via Azure Web App, SQL, Service Bus og Functions.
    • Monitorering: implementering af monitorering, der giver indsigt i brugen af systemet, flaskehalse og andre problemområder.
    • Håndtering af svære incidents og troubleshooting: deltagelse i de tungeste og sværeste incidents, f.eks. nedbrud eller degraderet performance, med analyse af årsag, implementering af løsning og forbedringer på lidt længere sigt.
    • Stakeholder management: på mange af ovenstående opgaver håndterede jeg stakeholders direkte og havde gennem hele perioden et øje for forretningssiden ud over den tekniske.
    • AI-assisteret udvikling (GitHub Copilot) til implementering og review af features samt til hurtige scripts til dataudtræk og -manipulation, hvor jeg i høj grad satte rammerne for design, tech stack og kvalitet.
    • C#
    • .NET
    • .NET Core
    • Azure Web App
    • Azure Service Bus
    • Azure SQL
    • Azure Functions
    • Azure DevOps
    • Visual Studio Data Tools
    • SQL Server
    • XML
    • XSD
    • Entity Framework
    • Entity Framework Core
    • SpecFlow
  3. Saxo Bank

    Periode: aug. 2017 – aug. 2019

    Rolle: Løsningsarkitekt, systemudvikler og systemdesigner

    Videreudvikling og vedligehold af OpenAPI, der danner grundlag for tradingplatformene SaxoTraderGO og SaxoTraderPRO samt integration til tredjeparter. Fokus på skalering og forberedelse til cloud-enabling samt automatisering af release-processen.

    Ansvar og resultater

    • Arkitektur og design af en ny distribueret cache for at imødegå et stigende antal klienter. Implementeringen blev sat i produktion.
    • Kravsafdækning og implementering af nye features.
    • Deltog i analysen af, hvordan API'er kunne migreres til Azure og .NET Core.
    • C#
    • .NET
    • Redis
    • WCF
    • ProtoBuf
    • Git
    • TFS Build
    • PowerShell
    • ASP.NET Web API
    • Azure
  4. Danmarks Nationalbank

    Periode: aug. 2016 – aug. 2017

    Rolle: Løsningsarkitekt, systemudvikler og systemdesigner, team lead

    Videreudvikling og vedligehold af indberetningssystemet FIONA. Systemet håndterer indberetninger af økonomiske og finansielle nøgletal for både Nationalbanken og Finanstilsynet.

    Ansvar og resultater

    • Analyse, design og implementering af ændringer i forbindelse med nye reguleringskrav og ny lovgivning. To releases til produktion i forbindelse med opdaterede skemaer fra EBA og EIOPA.
    • Team lead i forbindelse med outsourcing af drift og udvikling. Specifikation af processer og overdragelse af viden. Teamet var efterfølgende selvkørende og supporterede applikationerne uden problemer.
    • Support og troubleshooting af mere komplekse issues, primært omkring databaser og replikering.
    • C#
    • .NET 4.5
    • .NET 4.6
    • LINQ
    • SQL Server
    • Transact-SQL
    • Topshelf
    • WCF
    • SOAP
    • SOA
    • TFS
    • Continuous Integration
    • CS-Script
    • XBRL
    • XML
    • XSD
    • MSBuild
    • Confluence
  5. Naturstyrelsen

    Periode: okt. 2015 – nu

    Rolle: Løsningsarkitekt, systemudvikler og systemdesigner

    Integration mellem et internt beholdningssystem til træ og et eksternt opmålingssystem, sScale fra Dralle. Opmålerne får besked med koordinater, så snart en stak er kørt ud og klar til opmåling.

    Ansvar og resultater

    • Afdækning af krav i samarbejde med kunden og andre interessenter.
    • Udarbejdelse af arkitektur og design.
    • Implementering, test og release af applikationen.
    • C#
    • .NET 4.5
    • SQL Server
    • TDD/BDD
    • SpecFlow
    • Topshelf
    • Subversion
    • TeamCity
    • Continuous Integration
    • NLog
    • Unity
    • Rhino Mocks
  6. BankInvest

    Periode: sep. 2015 – jul. 2016

    Rolle: Systemudvikler og systemdesigner

    Vedligehold, udvidelse og nyudvikling af forskellige kerneapplikationer, herunder applikationer til vedligehold af instrument-stamdata, udveksling af data til honorar- og provisionsberegning samt en applikation, der giver overblik over prissætning og fordelingsnøgler på tværs af fonde.

    Herudover drev jeg et initiativ, hvor funktionelle krav til eksisterende applikationer blev dokumenteret og testet via BDD/SpecFlow, så den nødvendige viden til fremtidigt vedligehold var sikret.

    Ansvar og resultater

    • Oplæg om, hvordan BDD/Specification by Example-principper kunne give bedre dokumentation af krav og samtidig gøre kravene direkte testbare.
    • Analyse, dokumentation og testdækning af en service efter ovenstående principper som en slags referenceimplementering. Viden om servicen var gået tabt i forbindelse med personaleudskiftning. Løsningen blev efterfølgende overdraget til andre udviklere, som hurtigt kunne få nok viden til at implementere nye krav og være sikre på ikke at have ødelagt eksisterende funktionalitet.
    • Implementering af feature requests.
    • C#
    • .NET 4.5
    • .NET 4.6
    • ASP.NET MVC 5
    • Bootstrap
    • KnockoutJS
    • Oracle
    • LINQ
    • SQL Server
    • SQLite
    • NHibernate
    • TDD/BDD
    • SpecFlow
    • Topshelf
    • WCF
    • SOAP
    • SOA
    • Scrum/agile
    • Subversion
    • TeamCity
    • Continuous Integration
    • log4net
    • StructureMap
    • Rhino Mocks
    • NSubstitute
    • Confluence
    • Jira

Tidligere opgaver

Kortere kundeopgaver, grupperet efter periode og arbejdsgiver.

Selvstændig konsulent (diverse kunder)

Periode: 2004 – 2015

Rolle: Løsningsarkitekt, systemudvikler og systemdesigner, team lead

Som selvstændig softwareudviklingskonsulent har jeg arbejdet på en bred vifte af projekter for større danske virksomheder og offentlige organisationer. Opgaverne har spændt fra arkitektur og design af komplekse systemer til hands-on udvikling, team lead og kravsafdækning.

  • Saxo Bank · 2011–2015

    OpenAPI-platform og Social Trading/Auto Trading-systemer. REST-baseret API-framework, low-latency messaging, TDD/BDD. Team lead for offshore-team i Indien.

  • Miljøministeriet/Naturstyrelsen · 2009–2013

    Selvbetjeningsløsning til ridekort (ASP.NET MVC, DIBS-betaling) og husdyrbrevkasse-system.

  • Banedanmark · 2011

    Referenceimplementering for bulk data load-services (WCF, MTOM).

  • Danmarks Miljøportal · 2010–2011

    Proof of concept med BizTalk Server, WCF og AD FS.

  • Domstolsstyrelsen · 2010–2011

    System til håndtering af fogedsager (WPF, WCF, AD FS).

  • VP Securities · 2010

    SSIS-pakker til indlæsning af virksomheds- og aktionærdata.

  • e-Boks · 2010

    Offentlig dokumentboks med grænseflader til borger.dk og virk.dk (WCF, REST, OIOXML).

  • KL · 2010

    IT-udstyrsbestillings- og inventarsystem.

  • Innovisor · 2009

    Tilpasning af netværksanalyseværktøjet NodeXL (VSTO, WPF).

  • MAN Diesel · 2008–2009

    Salgsstøttesystem med kundeoverblik, datawarehouse og rapportering. MOSS 2007-migrering.

  • BRFkredit · 2009

    Rådgivningsapplikation til kunderådgivere (WinForms, TDD).

  • Toyota Danmark · 2006–2008

    Flere systemer: indsamling af værkstedsdata via ESB, måling af forhandleres performance samt organisations- og medarbejderstyring med integration til Lotus Notes og europæiske systemer.

  • Vacasol · 2007

    Feriehusudlejningssystem fra bunden. Arkitekt og team lead for offshore-team i Vietnam.

  • NCC Construction · 2004–2005

    Fakturahåndteringssystem med BizTalk, medarbejderportal med HR-integration og kunde-/leverandørstyring.

  • Bakmann A/S · 2005

    Integration mellem inkassosystem og RKI/Debitorregistret.

Teknologier (21)
  • C#
  • .NET Framework
  • ASP.NET MVC
  • ASP.NET Web API
  • WCF
  • REST
  • WPF
  • WinForms
  • SQL Server
  • Oracle
  • BizTalk
  • Entity Framework
  • TDD/BDD
  • SpecFlow
  • Low-latency messaging
  • Active Directory
  • SSIS
  • Git
  • TFS
  • TeamCity
  • Continuous Integration

ProActive Consulting A/S (diverse kunder)

Periode: 2002 – 2004

Rolle: Udviklingskonsulent, systemudvikler og systemdesigner

Som konsulent hos ProActive Consulting A/S arbejdede jeg på en række projekter for større danske virksomheder og offentlige organisationer. Primært fokus på webudvikling, CMS-løsninger og integration.

  • Miljøministeriet, Skov- og Naturstyrelsen · 2004

    Tilpasning og videreudvikling af Q&A-system til internetbrevkasse med CMS-integration via webservices.

  • Kræftens Bekæmpelse · 2002–2004

    Udvikling af website og intranet baseret på Microsoft CMS, herunder e-handel og online betaling.

  • Ferring Pharmaceuticals · 2003

    Webbaseret Q&A-database til lægemiddelspørgsmål med FDA part 11-godkendelse og Active Directory-integration.

  • Københavns Kommune · 2003

    Intranet med webservices og finkornet rollebaseret sikkerhed.

  • Danmarks Radio · 2002–2003

    Website baseret på Microsoft CMS, integration til DMI-datafeed for DR Vejret samt custom administrationsværktøj.

  • Carlsberg · 2002

    Intranet og website med Microsoft CMS, moduler til billedbibliotek, rettighedsstyring og logfilanalyse.

  • Københavns Lufthavne · 2002

    E-handelsløsning baseret på Microsoft Commerce Server 2002 med DIBS-betalingsintegration.

Teknologier (11)
  • C#
  • ASP.NET
  • ASP
  • VBScript
  • Visual Basic
  • .NET Framework
  • Microsoft CMS
  • Microsoft Commerce Server
  • SQL Server
  • Active Directory
  • Web services

Aston Group (diverse kunder)

Periode: 2000 – 2001

Rolle: Udviklingskonsulent, systemudvikler og systemdesigner

Som konsulent hos Aston Group arbejdede jeg på webudviklingsprojekter.

  • Lundbeck · 2001

    Udvikling af softwarelicensstyringssystem med webbaseret grænseflade.

Teknologier (4)
  • ASP
  • Visual Basic
  • SQL Server 2000
  • C++

Ansættelser

  • Selvstændig

    Softwareudviklingskonsulent

    maj 2004 – nu

  • ProActive Consulting A/S

    Udviklingskonsulent

    jan. 2002 – apr. 2004

  • Aston Group

    Udviklingskonsulent

    feb. 2000 – dec. 2001

  • Berlingske Online

    Webprogrammør

    jun. 1999 – feb. 2000

Uddannelse og certificeringer

  • Certified Scrum Master, Jeff Sutherland, Xebia, Amsterdam

    dec. 2010

  • Kursus "Essential BizTalk Server", DevelopMentor, London

    sep. 2008

  • Microsoft Certified Solutions Developer (MCSD)

    sep. 2002

  • Microsoft Certified Professional: "70-175 Designing and Implementing Distributed Applications with Microsoft Visual Basic 6.0"

    sep. 2002

  • Microsoft Certified Professional: "70-176 Designing and Implementing Desktop Applications with Microsoft Visual Basic 6.0"

    jun. 2002

  • Microsoft Certified Professional: "70-152 Designing and Implementing Web Solutions with Microsoft Visual InterDev 6.0"

    jul. 2001

  • Microsoft Certified Professional: "70-100 Analyzing Requirements and Defining Solution Architectures"

    jun. 2001

  • Datamatiker, Lyngby Uddannelses Center

    1999 – 2000

  • Studentereksamen

    1996

  • International HG

    1993

Kontakt

Skriv til mig om en opgave eller et samarbejde.