Writing
Notes on building products, infrastructure, and agentic AI systems.
Turning Bad Seller Photos Into a Clean Catalog, Automatically
On a marketplace, your catalog is only as good as the worst seller photo. Here's a computer-vision pipeline, segment then understand then regenerate, that turns messy uploads into consistent, catalog-ready images without a human touching each one.
Matching People to Jobs with Embeddings, and Knowing When Not to Trust the Model
Keyword search ranks the wrong candidates. Embeddings rank better, until they confidently match nonsense. Here's a job-matching pipeline that uses ML where it helps and rules where it must.
From a Hundred Sportsbooks to One Source of Truth: Ingesting, Matching, and Resolving Live Odds
Aggregating live betting odds looks like "fetch and display." It's really real-time entity resolution over messy, adversarial sources, with money riding on getting it right. Here's the four-stage pipeline.
Money That Moves Between Rails: A Multi-Currency Wallet Ledger
Holding fiat and crypto in one wallet, and settling between them, is an accounting problem before it's a blockchain problem. Here's how to keep the books correct.
Surviving Gas Wars: The Ethereum Transaction Lifecycle in Your UI
On a busy mint, a transaction isn't fire-and-forget: it's a living thing you have to monitor, bump, and sometimes cancel. Here's how to model that honestly for users.
Scraping Sites That Don't Want to Be Scraped: A Distributed Architecture
Monitoring stock and prices across hundreds of hostile sites means fighting Cloudflare, rotating proxies, and running headless browsers at scale. Here's the architecture that holds up.
Shipping a Desktop App That Drives a Fleet of Services: Electron + gRPC
A desktop app that coordinates background automation needs more than a window: auto-update, signing, process isolation, and a real backend. Here's how I structured one.