Vaporwave Sunglasses and the Polyend Play+
I have 8,597 audio samples. Kicks, snares, synths, weird textures I downloaded once and forgot about. They live in folders named "Drums_Final_v2" and "MISC_GOOD" and "sort_later." The Polyend Play+ is...
Engineering Director & Product Designer
This is a living view of what I'm working on, what tools I use, and what I'm thinking about. Scrub through time to explore my history.
My go-to for web apps. Fast to build, joy to maintain.
Perfect for content sites. This site runs on it.
Preferred frontend framework for complex UIs.
AI-first editor. Seeing how it changes my workflow.
Rails 8 system managing sensitive patient records with automated pharmacy data imports.
This personal site. Now becoming a temporal exploration.
Semantic search across 470+ podcast episodes using ChromaDB and Claude.
Comprehensive platform managing 375+ sales territories across multiple therapeutic divisions. Automated transfer scheduling, coverage analytics, and change audit trails.
Interactive Vue/TypeScript dashboard tracking drug development from preclinical through approval. Embeddable widget with multiple visualization modes.
Multi-tenant Rails application for clinical trial respondent management. Timestamped verification codes, admin dashboards, comprehensive E2E tests.
12+ regulatory-compliant pharmaceutical websites across US, Canada, Germany, and Austria. HLS video streaming, localization, and CRM integrations.
Node.js system for bulk retrieval and organization of Twilio call recordings. SQLite-backed querying with Excel report generation.
Interactive Venn diagram editor with daily puzzle challenges. Create, share, and solve visual logic puzzles.
15+ years of experience bridging the gap between design and engineering, with deep expertise in building and scaling digital products.
Thoughts on technology, design, and the craft of building digital products.
I have 8,597 audio samples. Kicks, snares, synths, weird textures I downloaded once and forgot about. They live in folders named "Drums_Final_v2" and "MISC_GOOD" and "sort_later." The Polyend Play+ is...
Remember when I was excited about [self-hosted CI on Fly.io](/2026/01/31/self-hosted-ci-flyio.html)? That lasted about 24 hours. The setup worked. The runner registered, jobs ran, tests passed. But th...
I wanted to use WarpBuild for faster CI, but it only works for organization repos. Mine's personal. So I needed another option. GitHub Actions works fine, but I'm burning through minutes on E2E tests....
I asked an AI to help me reimagine my personal site. Not redesign — reimagine. I didn't describe a vision or list requirements. I just said "reimagine what a personal website can be." The AI didn't ge...
I was recently putting together a payment processing flow. The kind of form where you collect user info, maybe some additional details from a third party, process a deposit via Authorize.Net, send con...
I'm always happy to chat about interesting ideas, side projects, or what you're building.