Hi, I’m Johannes.

I’m a software developer and consultant at TNG, based in Munich. I work on client projects and on our internal AI platform, building tooling around AI-assisted coding.

What really interests me right now is how AI is changing the way we write software. I spend a lot of time with agentic coding tools like OpenCode, Zed, and Pi, and I try to contribute where I can. I've even gotten into dictating to my agents instead of typing. The more I work with these tools, the more I want them on my own terms: sandboxing, local inference, keeping options open.

That habit of building tools isn’t new for me. I’ve always been drawn to open source, and a while back that pulled me deep into the Foundry Virtual Tabletop community: building game systems, modules, dev tooling, type definitions. It’s where I really learned TypeScript. I did too much of it for a while and had to step back, but it taught me a lot.

I’ve worked with enough languages by now that I don’t get attached to one anymore. The interesting part is always the concepts: how to structure systems, how to keep them secure, how to make them survive contact with reality. I have strong opinions about doing things the right way. These days I mostly write TypeScript.

I came to all of this through mathematics. I studied at the University of Regensburg, focusing on algebraic geometry, and wrote my master’s thesis on Serre’s Tor-formula. The analytical mindset stuck, even as I drifted further from pure math. Some of the texts I wrote back then are on the math writing page.

When I’m not at my keyboard (a Bridge 75 with MMD Princess Ultra switches, if you must know), I play and coach volleyball, or tackle cooperative board games with my partner.