Full-stack engineer in Toronto. I build small products people actually use, and tooling for coding agents. Before that I worked in Unity and Unreal: I led the embodied-agent runtime team at SoulLink, an a16z speedrun company, and wrote netcode for a multiplayer action RPG.
- job-agent-skills — a job-search toolkit for coding agents: skills, an MCP server over the big job boards, a tracker, an eval suite. It only writes facts you wrote.
- tsgate — an LLM gateway with no public port and no keys to hand out: who you are is the Tailscale connection, and every request leaves an audit line. Go.
- bloub tarot · bloub board · bloub-react — a black ball that changes shape, and two small things built around it.
- CoplayDev/unity-mcp#1404 — turning on its Roslyn option broke the build. Removed the missing dependency and added a test so it stays out. C#, merged.
- grafana/mcp-grafana#1208 — its tests couldn't run on Windows. Fixed; merged the same day. Go.
| My part | |
|---|---|
| SoulLink — AI companion, live on iOS / Android | Character runtime: streamed voice and LLM telemetry into real-time animation state; led a five-engineer team. C#, Unity. |
| Dungeon Company — Steam, shown at XP Game Summit | Founding member; level tooling and gameplay systems. C#, Unity. |
Earlier: an authoritative .NET server + Unity client with custom netcode, and a C++ client-server engine with client-side prediction.


