Now

BaseDash — Full Stack Engineer, May 2023 → present

Three and a half years at BaseDash. I designed and architected much of the infrastructure behind it, including the self-hosted component.

  • Product and ops: shipping user-facing work in React and Node, and running what I ship: observability, incident response, and the unglamorous work of knowing what’s going on in production.
  • I teach toward simple backends: fewer moving parts, Postgres earning its keep, systems a small team can reason about on call.
  • Helping maintain and optimize a production AI agent — ~4 years working with agents, 2 in agentic-coding practice across models and harnesses.

Focus

Simple systems, hypermedia, practical AI

I work across product and ops: shipping user-facing product in React, React Native, Rails, and Node — and running what I ship, from self-hosted infra to observability and incident response.

This chapter I’m focused on hypermedia stacks like Datastar — server-rendered HTML over SSE instead of client-side state mirroring — and on practical AI: ~4 years working with agents, 2 in agentic-coding practice across models and harnesses, helping maintain and optimize a production agent. Same goal either way: less ceremony, fewer moving parts, systems a small team can reason about.

Active projects

Things you can open

  • yagni.club — essays and notes. A plain Go binary that syncs my ATProto repo into SQLite and renders HTML. Datastar for a clock, reading progress, and subscribe — everything else works with JS off.
  • SSE Lab — a harness that reproduces a WebKit streaming-fetch delivery bug, with every knob in the URL so a shared link reproduces the run. Includes a Datastar EventSource plugin.
  • dbugsGigabugs reimagined as Go + SQLite + Datastar: 1M issues, full-text search in ~10–20ms, realtime multiplayer, one binary on a small box.
  • Hypersheets — realtime multiplayer spreadsheet with no client-side app state. Server renders HTML and patches it over SSE; invalidation follows the formula graph, not a static list.
  • Largediff — GitHub-style Files-changed view that stays smooth on 100k-line diffs. Server-driven viewport windowing over one SSE stream, per-token spans rendered server-side.

Background

Gowalla — Lead Web Engineer 2021–2023
Remix storefront on gowalla.com, Node GraphQL API perf via new observability (Sentry, Checkly, GCP Logging), Docker/K8s on GCP, Shape Up.
Babylist — Lead Software Engineer 2019–2021
Registry product, storefront experiments with data/analytics, frontend modernization (testing, data access, state). Managed a few engineers.
Hipcamp — Senior / Lead Software Engineer 2018–2019
Greenfield React Native app, Apple App of the Day. TypeScript + design tokens, automated releases with Azure DevOps + Detox.
Patreon — Engineering Manager 2015–2018
Managed ~7 engineers across Risk, Security, Growth, Frontend. Earlier: SEO/open-graph audits, Messages overhaul, React patterns and tooling.

Earlier: NerdWallet (Node/React storefronts, Life Insurance calculator) · DIY.org · Trulia.

Full CV with dates on LinkedIn.

Elsewhere

Contact