Craftsman | Developer | Hyperlapse Film Maker | Machine Builder
15+ years building machines that could probably outlive us all. From precision welding to commissioning production lines across three continents. Heavy industries taught me how to build things right. Now I'm applying that to software.
3+ years as a developer still not sure what breaks more often: my code or the machines I used to build. At least a NullReferenceException has a stack trace. A measurement machine that drifts 0.02mm because someone sneezed near it? Good luck debugging that.
Specializing in SCADA systems, industrial automation, and software that doesn't crumble under pressure, because I've seen what happens when things crumble under pressure. Usually sparks are involved.
Project Eros a high-performance real-time charting library. WebGPU rendering, SharedArrayBuffer ring buffers, WebWorkers per channel. Built to visualize 1M+ data points at 60fps because existing charting libraries tap out way before that.
Gargantua (waking up soon) a vendor-agnostic translation layer between industrial PLCs and REST APIs. Hides S7, ADS, EtherNet/IP behind a single interface so your SCADA, MES, or analytics tool doesn't need to care what PLC it's talking to. Basically an interpreter for machines that refuse to speak the same language.
Assembler App (on hold) a manufacturing execution tool for multi-site assembly operations. Digital checklists, audit trails, AI-powered translation. Waiting in line behind the other two
20-hour shifts to get a measurement machine back in spec before production starts at 6 AM were normal. So was disassembling machines at customer sites and quietly praying everything still works when you put it back together. You learn to stay calm when things go sideways. That part transfers surprisingly well to software.
Based in Austria, where the Schnitzels are oversized, the mountains are steep, and my pull requests are as dangerous as Arnold Schwarzenegger himself. Always happy to connect. Worst case, we talk about Schnitzels and Schnapps.

