digital atelier · est. 2026

scroll to enter
QCon SF 2025·
Gopher Con 2024·
SREcon 2023·
4.3k OSS Stars·
12+ Projects Shipped·
Substack · 58k Reads·
Go · Rust · Distributed Systems·
Staff Engineer · 9 years·
QCon SF 2025·
Gopher Con 2024·
SREcon 2023·
4.3k OSS Stars·
12+ Projects Shipped·
Substack · 58k Reads·
Go · Rust · Distributed Systems·
Staff Engineer · 9 years
body of work · 2023–2026

The Exhibition

Projects, talks, open-source contributions, and writing — each piece mounted with the care it deserves.

Server rack lights glowing blue in a data center corridor
◈ project2025
Featured

Distributed Event Mesh

Infrastructure · 2025

A pub/sub backbone handling 40M events/day across 12 data centers. Built from scratch after the third incident with our vendor. Kafka was too heavy; this is precisely heavy.

40Mevents/day
GogRPCKafkaKubernetes
Speaker at conference podium with technical diagrams on screen behind them
◎ talk2025

Making Consensus Legible

QCon SF 2025

A 45-minute deep dive into Raft consensus visualized as a choreographed performance. The audience left understanding Raft. Some left wanting to implement it.

600+attendees
Distributed SystemsConsensusRaft
◉ writing2024

The Quiet Horror of Eventually Consistent Clocks

Personal Blog · 12 min read

How a 200ms NTP drift caused a production incident that took 3 engineers 11 hours to diagnose. A love letter to monotonic clocks.

18kreads
TimeNTPDistributed Systems
◇ open source2024

circuit-go

Open Source

2.3k★ stars
GoResilience
Database schema diagram on a dark monitor with code editor in background
◈ project2024
Featured

Zero-Downtime Schema Migration Engine

Tooling · 2024

Automated database schema migrations that run while traffic is live. Inspired by the 4am Saturday when a routine ALTER TABLE took down 3 services.

< 1msp99 latency impact
PostgreSQLRustCLIZero-downtime
◇ open source2023

prism-trace

Open Source

890★ stars
GoOpenTelemetry
Conference room with audience listening to a technical presentation on stage
◎ talk2024

Boring Technology as a Competitive Advantage

Gopher Con 2024

The case for choosing the dull solution. Postgres over Cassandra, Redis over custom caching, boring wins. Delivered to 300 people who agreed but still wanted to use Rust.

300attendees
Engineering CultureArchitecture
◉ writing2024

On Writing Runbooks That Future-You Will Actually Read

Dev Blog · 8 min read

9.2kreads
SREDocumentation
Abstract visualization of data flow through network nodes with colored light trails
◈ project2023

Adaptive Rate Limiter

Infrastructure · 2023

A token bucket implementation that adjusts limits based on downstream health. Used in production across 8 services, preventing 3 cascading failures since deployment.

3cascades prevented
GoRate LimitingResilience
◇ open source2023

envoy-config-gen

Open Source

1.1k★ stars
GoEnvoyService Mesh
◉ writing2025

Twelve Factors Are Not Enough

Substack · 20 min read

The 12-factor app methodology is from 2011. Distributed systems in 2025 need at least 8 more. A proposal, a polemic, and a practical checklist.

31kreads
ArchitectureCloud NativeOpinion
◎ talk2023

The Observability Iceberg

SREcon 2023

200attendees
ObservabilitySRE

The studio opens soon.

Join the early access list to see the full exhibition when the doors open.

on stage · 2023–2025

Conference Talks

QCon San Francisco2025

Making Consensus Legible

Raft consensus visualized as choreography. 600 attendees. Standing room only.

Distributed Systems
GopherCon2024

Boring Technology as Competitive Advantage

The case for choosing the dull solution. Delivered to 300 people who agreed but still wanted to use Rust.

Engineering Culture
SREcon2023

The Observability Iceberg

What dashboards show is 10% of what's happening. A tour through the other 90%.

SRE · Observability
published words · 58k reads

Selected Writing

Substack·Jan 2025

Twelve Factors Are Not Enough

The 12-factor app methodology is from 2011. Distributed systems in 2025 need at least 8 more.

31k reads

Personal Blog·Aug 2024

The Quiet Horror of Eventually Consistent Clocks

How a 200ms NTP drift caused a production incident that took 3 engineers 11 hours to diagnose.

18k reads

Dev Blog·May 2024

On Writing Runbooks That Future-You Will Actually Read

Runbooks are love letters to 3am you. Here is how to write them so they actually help.

9.2k reads

coming soon

The studio
opens soon.

The full portfolio is being mounted. Leave your email and I'll let you know when the doors open — or when something worth reading ships.

Early Access

Get in before opening night

First 50 people get a personal walkthrough of the work.

◉ build in public

Follow the process

Irregular dispatches about what I'm building, breaking, and learning. No cadence. Only when it's worth reading.

Why I rewrote the rate limiter in Rust (and then switched back to Go)

Feb 18

Notes from debugging a 6-hour incident: what the traces didn't show

Jan 29

The pull request that took 3 months and changed how I think about reviews

Jan 11

12+

8

4.3k

58k

Studio opens soon.