~/lodehed 2026-06-24 · consulting · open to the right hire
jesper@lodehed $ whoami

software architect
& tech lead

Three decades shipping production software. AI-native since the first Copilot preview — Claude Code, Cursor, MCP, multi-agent flows. Architect through founder. Calm, opinionated, end-to-end.

based
Mantorp, Sweden
works
remote · Linköping · Norrköping
stack
TypeScript · React · React Native · Node · .NET
01

In production

live

jobado

Job & career platform · 2023 → ongoing

Built end-to-end, alone. Architecture, frontend, backend, deploy, ops. Routes real applicants through real employers via semantic matching on pgvector embeddings, with multi-vendor LLM orchestration and model fallback. The first serious production codebase shipped with Claude Code as a daily collaborator.

TypeScript · Next.js · Postgres (pgvector) · GCP
live

lovio

Swedish wedding-planning SaaS · 2024 → ongoing

A SaaS for couples planning their wedding day, in Swedish. Solo build, schema to App Store. Real-time multi-user via CRDT, so couples and family plan the same document together without conflicts. Quiet on purpose. Load-bearing on the one Saturday of the year nobody is allowed to lose.

Next.js · React Native · Yjs (CRDT) · Stripe · Postgres
live

vana

Forgiving habit tracker · iOS · 2026 → ongoing

A habit tracker built on the one idea the category keeps getting wrong: a missed day is a dip, not a defeat. Habits carry a continuous strength score instead of a streak that resets to zero. Pay once, no account, no tracking — on-device, with optional private iCloud sync. Solo build, schema to App Store.

Swift 6 · UIKit · SwiftData · CloudKit · StoreKit
Open the Vana page
02

git log --since=1995

  1. HEAD 2026 →
    consulting · open to a hire for the right challenge
    Embedded leadership, architecture, AI-native delivery. Permanent only if the challenge is right.
  2. a1c0de5 2026 →
    founder · sole engineer · vana
    Forgiving habit tracker for iOS. A continuous habit-strength model instead of brittle streaks, on-device with optional private iCloud sync, pay-once. Swift 6, UIKit, SwiftData, CloudKit, StoreKit.
  3. 4b1e7c3 2020 →
    architect · Transportstyrelsen
    Drove modernisation of the case-management department from project delivery to product portfolio. Security-classified, on-prem. RabbitMQ, GraphQL, .NET.
  4. e3a91f2 2024 →
    founder · sole engineer · lovio
    Swedish wedding-planning SaaS. Next.js fullstack, React Native, Yjs realtime, Stripe, multi-vendor AI assistant.
  5. b71c4d8 2023 →
    founder · sole engineer · jobado
    Career platform end-to-end. Semantic matching with pgvector embeddings; multi-vendor LLM orchestration with model fallback.
  6. 7c4d2e8 2017–20
    architect · Kriminalvården
    Mobile transport system: field client under bad networks, RabbitMQ event log, Grafana monitoring. Security-classified.
  7. f02e8a1 2012–17
    solutions architect · Sigma IT Consulting
    Architect/dev across Fortum, Ålands Landskapsregering, Transportstyrelsen, SMHI, Domsjö Fabriker.
  8. 9d4711c 2011–12
    lead developer · Toyota Material Handling Europe
    Lead dev. Movex/M3, SharePoint, Remedy integrations. Scrum + TDD.
  9. 00ba003 2007–11
    architect · FormPipe Software
    W3D3/Platina product, Cancerfonden grant system, Lunds Universitet recruitment portal, SharePoint, Long-Term Archive.
  10. 6e1a4f9 2003–07
    IT consultant · X Media / Perido / Encoded
    Early career: .NET, PHP, Flash, IBM e-learning, BizTalk integrations.
  11. 3a9b1c2 2000–03
    head of IT · Energy Interactive
    12-person web & e-learning team. Built internal economy system in .NET. Customer ownership and project lead alongside hands-on dev.
  12. c1f2e9d 1997–00
    systems developer · Cenobyte
    Sweden’s first commercial multimedia authoring toolkit. IT architect, lead developer across dev, docs and test groups. C++/ASM on Windows.
  13. 5d8a72e 1995–97
    IT consultant · Erda
    First professional engagements: VB, helpdesk, case-based reasoning systems. Clients: Saab, ICL, McDonald’s.
03

Writing --latest=4

  1. 2026-06-24 7 min read
    A missed day is a dip, not a defeat.
    I shipped a habit tracker this year, built on one idea the whole category keeps getting wrong. The streak that resets to zero has quietly ended more of my own habits than the habits ever did. So I built the app that refuses to do that — and a forgiving model turned out to be much harder to build than a punishing one.
    #vana·#ios·#product·#design
    read →
  2. 2026-05-08 7 min read
    asc was built for agents. I want more CLIs like it.
    The unofficial App Store Connect CLI doesn't just happen to work with Claude Code. It was designed to be driven by an agent first and a human second. That ordering matters more than I'd assumed, and it makes me notice the few other CLIs that share the shape, and the many that don't.
    #ios·#cli·#agents·#tooling
    read →
  3. 2026-05-05 5 min read
    Auto-dream is the right idea. The implementation isn't there yet.
    A memory feature that prunes itself while you sleep is exactly what long-running agents need. The version that briefly shipped in Claude Code can also delete files without telling you, and silently stop running when it crashes. I want it back, with better manners.
    #claude-code·#ai-agents·#memory
    read →
  4. 2026-04-22 6 min read
    Stop hiring for AI fluency. Hire for codebase fluency.
    The people shipping with agents in 2026 aren't the ones who can spell MCP. They're the ones who can read a five-year-old codebase in an afternoon and tell you which migration is keeping the team awake.
    #hiring·#agents·#practice
    read →
View all writing 12 posts · /blog →
04

Start a conversation

Tell me about the challenge.
Consulting first. Hire for the right team.

Always interested in a challenge. I work best as a consultant — embedded with a team for a defined run, not on permanent payroll. That said: the right team building the right thing can change my mind on a hire-only role. One paragraph about the work, the team, and where you'd want help.