Long write-ups of the systems I've built. What the problem actually was, and the decisions that turned out to matter.
Realtime collaboration infrastructure
A hosted realtime collaboration service: presence, broadcasts, and durable Yjs storage behind React hooks. The SDKs are API-compatible with Liveblocks, so migrating an existing app means changing the package name in your imports.
Multi-tenant notifications platform
In-app inboxes and realtime updates for SaaS apps. The backend SDK sends events, the React SDK renders the inbox, and no one on the team has to build that plumbing twice.
Long-form to short-form, automated
A 16-stage pipeline that turns a two-hour podcast into 30 to 40 branded social clips in about an hour. Every stage writes an artifact before the next one starts, so a failed run resumes instead of starting over.
Video ingest and analysis pipeline
An upload fans out into parallel background work. Previews land in seconds, then transcription, detection, and scene analysis run on queues sized for how long each one takes. What ends up in the library is a searchable asset, not a stored file.
Multi-track timeline in the browser
A collaborative multi-track editor in the browser. Trim, layer, keyframe, and export all read from one timeline document. Captions and model-generated edits write to that same document, so the two can never drift apart.