CTO at Immersive. Bullish on AI, disciplined about outcomes. Still building.
About
I’m CTO at Immersive, where I lead technology and engineering through what I think is the biggest shift in how software gets built in a generation.
Over nearly 20 years I’ve gone from Android developer to CTO, growing teams from a handful of engineers to 180+. I led core product engineering at Babbel, was CTO at CoachHub, where we launched AIMY, the first conversational AI career coach, and now lead engineering at Immersive, which lets organisations test people, processes and AI agents against realistic attacks. The details are under Experience.
I’m convinced AI changes the game. I’m also convinced most of what’s said about it is untested, which is why I measure. AI speeds up delivery and, done right, lifts quality. What it won’t do is fix your product-market fit or tell you what’s worth building.
That’s the thread through everything I write: as execution gets cheap, clarity and leadership decide who wins. I write about what I learn at Immersive and from my own experiments, including where I’ve changed my mind.
Latest research
Most of what I write is the series Ask your own repository: methods a team can run on its own repository to decide how much of its delivery to hand to AI, each tested on public data first.
-
Can your own history be your benchmark? Six steps from fixed issues to a test bench you can trust
Turn merged fixes that close one issue and change a test into tasks, check in a clean container that their tests fail before the fix and pass after it, screen the tests against the issue, freeze the set, and run your agent setup. On 197 pytest pull requests this gave 44 tasks in an afternoon with no model calls; half of them tested details the issue never stated, and two identical runs, $17 together, agreed on 43 of 44.
-
Which tickets can you hand to an agent? Three numbers to pull from your own attempts before you try to sort them
Count three outcomes per agent attempt (merged, landed clean, still standing after 30 days) and divide your error budget by the landed-clean rate before you try to sort tickets. On 1,194 public tickets, 27% landed clean, which settled that no ticket-only sorter could meet a 15% budget.
-
Do your review bot's warnings turn into bugs? What your history can and cannot tell you
Judge an AI reviewer by four numbers from your own pull requests, with your human reviewers as the yardstick and unflagged lines from the same pull request as a placebo for churn. On three open-source projects people were heeded more per comment, the resolve button flattered the bot by 20 to 45 points, and whether ignored warnings became bugs needed a sharper bug signal than public history has.
These are the newest three posts. See my articles under Writing.
New posts arrive in the RSS feed and on LinkedIn. Hands-on experiments live on GitHub.
Contact
Reach me on LinkedIn. Based in Berlin.