services
Boring infrastructure, exciting products.
I take projects from "works on my laptop" to reproducible, observable, and boring — in a good way. Remote-first, async-friendly, small commits.
NixOS architectures
Reproducible servers as code
NixOS flake-based server builds with devenv dev shells, sops-nix secret management, declarative systemd units, and sane deploy flows (rsync / nixos-rebuild switch / disk images).
- ✅ Single-host and small-fleet NixOS declarations
- ✅ devenv + git-hooks for local DX
- ✅ sops-nix secrets wired into systemd services
- ✅ Declarative Postgres, S3, reverse-proxy, TLS
DevOps & SRE
Ship fast, sleep well
CI/CD pipelines, container builds, monitoring, and backup strategy for self-hosted and cloud workloads. Prefer boring, observable infrastructure over clever, opaque stacks.
- ✅ GitHub Actions / Gitea Actions pipelines
- ✅ Docker + NixOS service hardening
- ✅ Grafana / Prometheus dashboards
- ✅ Logs, alerts, backups, and restore drills
Programming
Full-stack product engineering
TypeScript-first product work in SvelteKit and Next.js. Prisma + Postgres models, clean module boundaries, typed APIs, tests that actually get run.
- ✅ SvelteKit & Next.js 15 (App Router)
- ✅ TypeScript in strict mode
- ✅ Prisma + PostgreSQL data modelling
- ✅ Vitest + Playwright test strategy
AI engineering
Practical, not buzzword
LLM-assisted features that respect privacy: structured extraction, tool-calling agents, local/sovereign models, RAG, and evaluation harnesses.
- ✅ Structured LLM extraction & codegen
- ✅ Local-first / sovereign inference
- ✅ RAG pipelines with garbage-in-garbage-out guardrails
- ✅ Prompt contracts with Zod validation
process
How I work
01
Discovery
I map your goals, constraints, and the current state of your stack. Often this already saves weeks of meandering.
02
Architecture
Small written plans, diagrams and concrete ADRs. Not a 60-page PDF nobody reads.
03
Implementation
Declarative configuration, clean interfaces, working code. Every change pushed through reviewable and reproducible pipelines.
04
Handover
Documentation and a runbook. When I leave, the system is still understandable — that is the whole point.
Have something that keeps falling over?
Tell me what it is. I'll tell you straight whether Nix, containers, or a decent cron job is the answer.
Get in touch