Selected work · 04
01
Raptor
Three roles, one database, zero cross-tenant reads. Deny-by-default row-level security, shipped in the same migration as every table.
Expo Router · TypeScript · Supabase · Postgres RLS · LiveKit · Sentry · Paymob
2025–2026
02
crosstalk
Agents from rival vendors (Claude Code, Codex, Cursor) build one codebase as a team. A review finding is a claim to verify, not a command.
TypeScript · MCP · node-pty · CLI
2026
03
WireTrace
A single HTML file that decodes PCAPs and router logs in the browser, so support staff without Wireshark can triage. Nothing leaves the machine.
Vanilla JS · hand-written PCAP parser · DHCP, DNS, ARP, PPPoE · spoof detection
2026
04
Vault
One agent versus a supervised team, same game, same spec. What the team shipped and what it broke.
Three.js · Vite · crosstalk benchmark
2026
Practice · 03
Smaller builds I made to learn one thing well enough to defend it.
01
socketio-rooms
Chat rooms over Socket.IO with server-assigned message numbers, two layers of reconnection, and Redis fan-out across instances.
I learned that the decision that scales is fan-out across instances, and that a reconnect needs a replay from a known number, not luck.
Node 22 · TypeScript · Socket.IO · Redis Streams
14 tests / CI green
02
telco-churn-api
A churn classifier on the IBM Telco data, trained with scikit-learn and served by FastAPI; one pipeline object for training and serving.
I learned why the threshold is a business decision and the probability is the product, and why accuracy lies at one-in-four churn.
Python 3.12 · scikit-learn · FastAPI · uv
14 tests / CI retrains
03
Solari suite
Four Python packages for a cloud-browser platform, including an agent that builds and playtests web games in cloud Chrome.
I learned to measure a platform's claims before building on them: the advertised spin-up time did not survive measurement, and a released session leaked its Chrome profile to the next one.
Python · CLI · MCP
4 packages