How we build
What we're working on, what we're learning, and where it shows up in the wild.
Why Babylist still uses a no-AI coding screen
Our engineers use AI to write code every day, but our first coding screen is still done without it. Why we think you need to write code to understand it, what the screen looks for, and what we haven't figured out yet.
AIHow we cut our Snowflake bill by 25% and won back our engineering time
Warehouse tuning was taking 10 to 20 percent of our engineering time and leaving our models doing exactly what they did before, just for less money. We handed the work to two AI systems instead: a proxy that right-sizes compute per query, and a Cortex agent that opens optimization PRs against our dbt project.
AIWhat we learned building Data Doula, our analytics agent
We had a growing backlog of data requests. Instead of building another dashboard, we built an analytics agent. Building it taught us the value of bounded agency and a semantic layer.
CraftNotes from the Studio: the systems behind Clementine
A guest series from the team building Clementine. Four deep dives follow a single photo off the phone and into a finished moment.
CraftChasing an Elusive Rails SSE Hang
Our SSE backend servers went down three nights running, up and listening, but unable to process requests. Two weeks of chasing a resource leak ruled one out. A thread dump found the real cause: a race condititon in Rails itself, now fixed upstream for 8.2.
TeamHow we run a remote hackathon for 100+ people
One week. Calendars cleared. Teams of two to four. Thirty-plus projects, judged without a single live demo. Here's the playbook we use to run a hackathon for the whole tech team.
AIHardening our Claude skills: from prose to determinism
Most Claude skills start as quick prose recipes. When to leave them that way — and when to harden the mechanical parts into deterministic scripts for correctness and cost, with measured before/after numbers from a personal Slack skill.
AIStop reaching for an agent when a workflow will do
A practical framework for deciding when your AI feature needs autonomy — and when it just needs rails. Default to a workflow; reach for an agent only when a workflow genuinely can't describe the problem.
AIBuilding accessible software with Claude Code
Principal engineer Joe McCormick builds accessible Chrome extensions live with Claude Code on Claire Vo's How I AI, and argues for personal, single-user software.
AIIntegrating AI into a 15-year-old codebase
Babylist CTO TJ Moretto on what it takes to bring AI into a 15-year-old Rails codebase: where it helps, where it doesn't, and why the engineer's job is becoming less about writing code than directing the agents that do.
CraftWhat's in a Name: From Variables to Domain-Driven Design
Karynn Ikeda's RailsConf 2024 talk on software's hardest problem: naming. A crash course in semantic theory that runs from a single variable up to domain-driven design.