Stavanger, Norway · Founder of Agentas AS

Martin Davidsen

AI Architect & Software Engineer

From electrician, to offshore technology for oil production, to critical infrastructure projects onshore, to AI-driven applications — fifteen years turning hands-on curiosity into systems people depend on.

15+ years in tech
9+ years engineering
20+ projects shipped
Martin Davidsen Now buildingAgentas Consult · Aurly →
Martin Davidsen
AI Architect & Software Engineer · Founder of Agentas AS
Stavanger, Rogaland — Norway

Engineer at the meeting point of hardware, software, and AI

I've been around technology for about fifteen years, and it started with my hands. I trained as an electrician and earned a Bachelor's in Maritime Electrical Automation, then spent years commissioning systems offshore — wiring panels, chasing faults, and getting equipment running where failure isn't an option. That's where I learned how real systems actually behave.

Curiosity kept pulling me up the stack. From the physical equipment I moved into the software that controls it — subsea production systems, offshore platforms, and critical infrastructure — and from there into full-stack software and, more recently, AI engineering. Today I design, build, and operate LLM-driven systems and web applications end-to-end through my own company, Agentas AS, and AI tooling is a core part of how I ship.

What ties it all together is simple: I like building things and making them work — not just to a demo, but running in production with real users. Whether it's a control system, a web app, or a side-project game, I want to understand every layer and own the result.

Hands-on industrial discipline paired with modern, AI-augmented software engineering — that's what I bring to a team.

What I'm good at

Full-Stack Software

End-to-end web applications — back-end services, data pipelines, APIs, and clean front-ends. I build the whole thing and I run it in production, not just to a demo.

GoPythonNode.jsReact

AI Engineering

LLM-driven systems built and operated for real use — agents, automation pipelines, and AI-augmented tooling. I use Claude Code daily as a core part of how I design and ship software.

LLMsClaude CodeAgentsRAG

Industrial Automation

Control software for critical systems — PLC programming, operator screens (HMI/SCADA), and the communication that ties field equipment to the systems above it. Proven on live oil & gas and infrastructure projects.

Siemens S7TIA PortalWinCCOPC UA

Infrastructure & DevOps

I run my own production-grade homelab — containers, reverse proxies, CI/CD, monitoring, and layered security with rehearsed backups. The same operational discipline I apply to client systems, applied to my own.

DockerProxmoxLinuxCI/CD
Data stays yours

Private & On-Prem AI

Running AI models entirely on your own hardware — so sensitive data never leaves the building. I run open-weight LLMs (Llama, Mistral, Qwen) on my own machines and homelab, and bring the private-retrieval (RAG) and agent patterns I use in the cloud fully on-premise. It's the natural meeting point of my AI engineering and years of self-hosting — and exactly what regulated industries increasingly need.

Self-hosted LLMsOllamaPrivate RAGData sovereignty

Things I've built and run myself

A selection of software and AI systems I've built end-to-end on my own infrastructure. Real users, real traffic, real consequences when something breaks. Each one focuses on the engineering — the architecture and the operational discipline — rather than the specific domain it serves.

Agentas Consult: AI-Graded Tenders & Offers

A multi-tenant SaaS platform, live since September 2026 and in pilot. It harvests every open Norwegian public tender each hour, grades each tender and job opening against the team's profiles with AI, checks mandatory bid requirements in code, and drafts priced offers exported to PDF or Word. Node.js, Express and one SQLite database per customer account, with 557 automated tests gating every deploy.

View details →

Aurly: Ranked Trout Lakes for All of Norway

A consumer map app, live at aurly.no since September 2026, that covers more than 267,000 lakes in all 15 counties of Norway and ranks the lakes in any area for brown trout by likely presence, size potential, remoteness and legal access. Built on data from 13 providers, most of them official open data, with rivers traced from the sea to model fish barriers, and every claim sourced. A Python and PostGIS data pipeline, a Next.js and MapLibre front end, Stripe and Vipps payments and 1,300+ automated tests.

View details →
Private

Agentas Suite: Ten Apps, One Column

The ten apps my company Agentas runs on, from mail, notes and hours to files, tenders and sales, built as separate apps that look and work like one. Every app carries the same icon column with keyboard shortcuts and counts of what is waiting, and a Claude side panel works beside whichever app is open. Through Agentas I build the same kind of suite for businesses.

View details →
Private

Mail: Two Gmail Accounts, One Inbox

A self-hosted web mail client on the Gmail API that puts a personal and a company account, aliases included, in one inbox and replies from the right address. Hostile mail is shown in a script-free sandbox with tracking pixels held back, and Claude can search, read and draft through MCP but can never send. Built and hardened in about eight days, with about 150 automated tests.

View details →
Private

Note: Offline-First Notes with Claude

A notes app for the browser and Android that saves as you type, works offline and merges edits from two devices without losing a word. It has the feel of Notepad++, Norwegian dictation on my own server and an MCP server that lets Claude read and write notes. TypeScript, CodeMirror 6 and Yjs, with about 175 automated tests.

View details →
Private

Agentas Timesheet: Hours in One Tap

A timesheet app for the phone and the PC that replaced a spreadsheet. A ready-made day is confirmed in one tap, Norwegian holidays, flex and overtime are worked out in tested code, and Claude can draft the day from the work that was done for a person to confirm. Works offline, with passkey sign-in.

View details →
Private

CloudDrive: Self-Hosted File Platform

A self-hosted file-management platform (Go + React) built around a deliberate security model from day one: access control, audit logging, encrypted backups, and regularly rehearsed recovery. Designed so that “self-hosted” is safer than the cloud alternative, not an excuse to be sloppier.

View details →
Private

Agentas WebOps: Internal Ops Panel

The internal panel that runs the website business end-to-end: client and site registry, an accounting-driven billing watch that auto-suspends non-paying sites via an nginx maintenance map, and a full leads engine with public-registry discovery, enrichment and scoring, drip outreach with hard daily caps, and a deal pipeline through to invoicing. Express + built-in node:sqlite, zero native dependencies, one process. The unglamorous machinery that makes the studio run itself.

View details →
Private

Vehicle Telemetry Automation

An automation pipeline that pulls live vehicle telemetry into a structured database, sorts every drive into business, commute or personal, and produces the monthly mileage and reimbursement report. Replaces a recurring monthly manual task entirely. Small in scope, real in time saved.

PythonAPIsCron
View details →
Private

Smart Home Automation

A self-hosted smart home on Home Assistant with about 2,050 entities, integrating Z-Wave, Zigbee, Bluetooth and Wi-Fi devices, scheduled automations, multi-room control and energy monitoring. All configuration is version-controlled and deployed through an automated pipeline, with the same engineering discipline I apply to client systems.

View details →
Private

Automated Trading Platform

An automated trading platform spanning crypto and equities: a strategy engine with backtesting, execution simulation and a web cockpit, all sharing one code path proven identical across backtest and the running bots to within a rounding error. 320+ automated tests, a deterministic decision core (no LLM in the trade loop, by design), and every result reported against random-baseline nulls. Runs as several containers from a single image.

PythonSQLiteFastAPIBacktesting
View details →
Private

AI-Assisted Market Analysis

A research platform that ingests official company disclosures, classifies them with an LLM, and puts every candidate signal through rigorous statistical validation — null-hypothesis baselines, permutation gating and a realistic cost model — before any number is trusted. Built to test market hypotheses honestly: measure first, believe later. The engineering is the point — disciplined data pipelines and statistical rigour over hype.

PythonSQLiteStatisticsLLM
View details →
Private

Watcher: LLM-Graded Watchlists

A self-hosted watcher that follows a set of sources, grades every new item against what you are looking for with an AI model, and ranks the results on one dashboard. Every model call runs in a sandbox with every tool denied, and all external text is fenced as data, not instructions. Prompt injection treated as an operational reality, not a footnote.

PythonFastAPILLMDocker
View details →
Private

Table-Scout: AI Restaurant Finder

An LLM-assisted local restaurant finder — “what's open now, book a table for four at seven.” It ingests open geodata and the official business registry, matches and geocodes venues, detects booking providers, and answers in the asker's own language. Wired into my smart home as a voice agent, and built with careful data-licensing hygiene: open-data columns kept structurally separate from own-collected data.

Node.jsnode:sqliteLLMOpenStreetMap
View details →
Live

AssistKey: Push-to-Talk for Home Assistant

A Windows system-tray push-to-talk client for Home Assistant Assist — hold a hotkey, speak, get an answer. Deep native integration: DPAPI-encrypted token at rest, per-user autostart via the registry, dark-titlebar and monitor-aware window handling, single-instance control, and an optional wake word. Open source, packaged as a single-file executable with CI on Windows.

PythonWindowsHome AssistantPyInstaller
View details →
Private

Cloud Infrastructure

A multi-server environment grown over two years into my own small cloud infrastructure, with 30+ services across web apps, automation, monitoring, and home systems. Standardised deployment pipeline, layered defence-in-depth security, three-tier backups with rehearsed recovery, and a living architecture reference kept like a runbook.

ProxmoxDockerCI/CDRestic
View details →
Live

Multi-User Analytics Platform

A free analytics platform for a player community: uploaded logs are parsed on the server in worker threads into fight-by-fight breakdowns and rankings, stored in a normalized relational database. One codebase serves each tenant from its own container behind a shared reverse proxy. Built and operated single-handedly.

Node.jsSQLiteWorkersDocker
View details →
Live

Go Computational Simulator

A computational simulator written in Go with a browser-based UI and a continuous evaluation harness that compares simulator output against real observed data — surfacing discrepancies explicitly rather than papering over them. Multi-class architecture with a shared widget system across simulators.

GoWebUIEval harness
View details →
Live

NoBS: Workout Log

A no-BS gym app, only the stuff you use at the rack: sets, reps, kg, a rest timer, heart rate. Local-first, no account, no subscription. Built as a React + TypeScript PWA, packaged for Android with Capacitor and published on Google Play, with its own landing page and a direct APK download.

ReactTypeScriptPWACapacitor
View details →
Live

Baby Suite: Three Local-First PWAs

Three installable web apps built around our baby's arrival — a contraction timer, a feed/sleep/diaper tracker, and a postpartum pelvic-floor trainer. Each app runs a sync conflict model deliberately chosen for the data it handles, with hand-rolled dependency-free Web Push (VAPID + payload encryption in raw WebCrypto), server-side alert rules on a cron, and free-tier quotas treated as a hard design constraint. In daily family production — where an outage means a missed 3 a.m. feed alarm.

Vanilla JSPWACloudflare WorkersWeb Push
View details →
Live

Dreadmark: Isometric Action-RPG

A top-down isometric action-RPG built from scratch in Unity 6. An AI coding agent writes and tests the code, a human designer sets the direction and judges every build, and bots that play the game check each release. A free demo is out on Steam.

Unity 6C#URP
View details →
In dev

Frostwake: 3D Survival Game

A top-down survival game in a frozen valley, in early development in Unity 6. Its own weather, fire and night light are built and judged one look-test pass at a time, with the same AI-augmented workflow used across the rest of the work.

Unity 6C#URP
View details →
Live

Website Studio

A productised website service for local businesses and individuals — a library of ready-made, mobile-first templates (business + portfolio), each a real live demo. Tailored per client and hosted end-to-end: design, build, containerised deploy, reverse proxy, DNS. Built and run by me — today it's Agentas Web, the SMB arm of my company Agentas AS.

TemplatesNginxDockerCloudflare
View details →

Most repositories are private, but I'm happy to do a code walkthrough or live demo for a serious conversation — just get in touch.

Where I've delivered

Founder — AI-First Software Engineering

Agentas AS

I founded and run Agentas AS — an AI-first software engineering consultancy. I ship software end-to-end with an AI-augmented workflow built on Claude Code, grounded in the industrial track record below. Through Agentas Web, the company's website service, I design, build, and host sites for small businesses on my own infrastructure — multiple sites live in production, including this one. The company also builds and runs its own products: Agentas Consult (AI-graded public tenders) and Aurly (ranked trout lakes for all of Norway).

Claude CodeFull-stackDockerCloudflare

Software Lead — Subsea Control Systems

Siemens Energy

Software lead for complete subsea control systems on the Symra and Hanz tie-ins (Ivar Aasen). Built the software managing communication between the platform and underwater equipment, operator screens, simulation tools, and integration of valves, flow meters, and hydraulic systems — delivered through factory testing, on-site startup, and into production. Hanz has been producing since 2024, and Symra reached first oil in 2026 with all four wells now in production. Along the way I built a tool that generates the control-system software for new subsea wells automatically — cutting per-well build time from weeks to hours.

Siemens S7MDISOPC UASubsea

Automation & Software Engineer — Critical Infrastructure

OneCo

Control software and operator screens for critical infrastructure — a backup water-supply system for Norway's capital, and smart building automation (intelligent lighting and building management) for one of Norway's largest hospital construction projects, Nye SUS in Stavanger.

TIA PortalSCLHMI/SCADABuilding Automation

Automation Engineer — Platform Digitalisation

Siemens

Modernising and digitising control systems on the Valhall offshore platform — upgrading monitoring software and producing safety documentation to Norwegian industry standards.

PCS7OffshoreDocumentation

Foundation — Electrical Automation & Offshore Commissioning

Earlier career

Bachelor's in Maritime Electrical Automation and certified electrician credentials, followed by hands-on offshore commissioning and startup work. This is where I learned how real, high-stakes systems behave — knowledge I still draw on when building software today.

ElectricianCommissioningFAT

Companies I've worked with

What I build with

Languages

GoPythonJavaScriptTypeScriptC#LuaSCL

Web & Backend

Node.jsReactNext.jsViteREST APIsSQLitePostGISThree.js

AI & LLMs

Claude CodeLLM systemsAgentsRAGLocal LLMsOllamaPrompt engineering

Infrastructure

DockerProxmoxLinuxNginxCI/CDTailscale

Industrial & Automation

Siemens S7TIA PortalWinCCPCS7OPC UAModbusMQTT

Ways of Working

AI-augmented devTest-drivenGitSelf-hostingDevOps

I don't really switch off

The curiosity that drives my work doesn't clock out at five. Most of what I know I picked up by building things for myself — which is also the best way I've found to stay sharp.

Building games

I make 3D games in my spare time, like a survival game in Unity 6 whose survival rules run in an engine-free C# core, tested outside Unity. It's where I get to over-engineer for the fun of it.

Running my own cloud

My homelab is my own small cloud: servers, containers, monitoring, and rehearsed backups running the same way real production does. If I want to learn something, I stand it up and run it for real.

Automating home & car

I like it when everyday tech just works, so I automate it: a smart home I built and version-control myself, and a pipeline that turns my car's telemetry into a finished mileage log. Small problems, properly solved.

Life outside the screen

Away from the keyboard I'm usually outdoors — hiking and getting out in nature, on the water with the boat, or training. Most of all, time with my family and building a good home is what keeps everything else in balance.

Let's talk

I'm open to interesting roles and conversations — software engineering, AI engineering, or anything at the intersection of software and the physical world. Drop me a line and I'll get back to you.