Home/Services

Five practices,
one person behind them.

01 · Service

AIDevelopment

LLM featuresRAGAgentsEvals

I help product teams put real LLM features into production, not demos that work on Twitter and break in front of users. That means careful prompt engineering, retrieval that actually retrieves, evals that catch regressions, and a UI that fails gracefully.

Typical engagements

  • RAG over your docs, support tickets, or codebase
  • Agent workflows for internal automation
  • Production-grade chat & copilot UX
  • Evaluation harnesses + prompt observability

Stack I lean on

  • Anthropic Claude · OpenAI · open-weight
  • LangGraph · custom orchestration
  • pgvector · Turbopuffer · Pinecone
  • Modal · Inngest · Trigger.dev
02 · Service

WebDevelopment

Marketing sitesSaaS frontendsHeadless CMSDashboards

Fast, accessible, type-safe. I build websites and web apps that load in under a second on an old phone, and that your team can keep editing without me. Boring stack on purpose. Most projects pick up speed by removing complexity, not adding it.

Typical engagements

  • Marketing sites & landing pages
  • SaaS app frontends & design systems
  • Headless CMS setups (Payload, Strapi, Storyblok, Sanity)
  • WordPress builds & migrations to headless
  • E-commerce & payment integrations (Stripe, Mollie, PayPal, Klarna)
  • Subscription billing, customer portal & invoicing flows
  • Internal dashboards & admin tools
  • Migrations from legacy stacks

Stack I lean on

  • TypeScript · React · Next.js · Astro
  • Tailwind · shadcn · Radix
  • Payload · Strapi · Storyblok · Sanity
  • WordPress (classic & headless)
  • NestJS · Express · Fastify
  • tRPC · Drizzle · Postgres · MySQL · MongoDB
  • Stripe · Mollie · PayPal · Klarna
  • Vercel · Cloudflare · Fly.io
03 · Service

SoftwareSolutions

Internal toolsAPIsAutomation

The unsexy work that actually moves a business, internal tools, integrations, custom backends, scripts that retire someone’s spreadsheet. I scope tightly, ship in slices, and write enough tests to sleep at night.

Typical engagements

  • Internal admin & ops tools
  • Third-party API integrations
  • Background jobs & data pipelines
  • Replacing brittle Zapier setups

Stack I lean on

  • Node · Python · Go (when needed)
  • Postgres · Redis · S3
  • Temporal · Inngest · cron
  • Docker · Fly.io · Hetzner
04 · Service

AppDevelopment

iOSAndroidCross-platform

Cross-platform apps that don’t feel cross-platform. Native where it matters, gestures, animations, system integrations, and shared logic where it doesn’t. I usually pair this with a small web admin so non-technical teammates can run the back office.

Typical engagements

  • v1 product apps for early-stage startups
  • Companion apps for existing web platforms
  • Internal field-team apps
  • App Store / Play Store submission & review

Stack I lean on

  • Expo · React Native
  • SwiftUI · Kotlin (when warranted)
  • RevenueCat · Sentry · PostHog
  • Supabase · custom Node backends
05 · Service

Marketing, SEO & SEA

SEOSEAGoogle AdsMeta AdsAutomationTracking

Performance marketing that pays for itself: technical SEO, paid acquisition on Google and Meta (SEA), automated funnels, and integrations that keep organic rankings, ad spend, leads, and CRM in sync. I treat marketing the same way I treat code, measured, tested, and wired into the rest of your stack.

Typical engagements

  • Technical SEO audits, on-page optimization & schema markup
  • Google Ads search & shopping campaigns (SEA)
  • Meta Ads on Instagram & Facebook (creative + targeting)
  • Marketing automation pipelines (lead scoring, drip emails, retargeting)
  • Tracking & attribution setup (GA4, server-side, Conversions API)

Stack I lean on

  • Google Search Console · Ahrefs · Screaming Frog
  • Google Ads · Google Tag Manager · GA4
  • Meta Ads Manager · Conversions API
  • n8n · Make · Zapier
  • HubSpot · Customer.io · Resend
How I run it

A quiet, predictable process.

1 · Get to know each other

We spend a week talking through what you have in mind — free and no strings attached. At the end you know what it will cost and how long it will take. Even if you decide not to work with me.

2 · Build it in small pieces

I work in two-week chunks. After each one you see something finished and can say "this works" or "let's change this" — before too much time or money is in it.

3 · Going live & handover

We launch the site. For the first two weeks after, I take care of any small adjustments at no extra cost. You get everything that belongs to your website — logins, guides, the full code.

4 · Reachable afterwards

After every project I keep time free for past clients. For the quick evening question ("is this normal?") I'm there — no new contract, no clock running in the background.