Engineering Leadership
In this collection, I write about how engineering organizations behave, focusing on systems of people operating under change, incentives, and imperfect information.
Product Engineering
In this collection, I write about how engineering decisions change when software exists inside a business, where incentives, tradeoffs, and pragmatism shape what gets built.
Software Design
In this collection, I write about how software systems are shaped over time, with an emphasis on boundaries, dependencies, and design decisions that hold up under change.
Software Development
In this collection, I write about the day-to-day craft of building software, focusing on tools, workflows, and practical decisions shaped by real-world constraints.

Recent Essays

Jan
03

Product Engineering & Pragmatism

2 min read
Dec
29

On Continuums, Tools, and Progress

4 min read
Nov
17

Keeping Patterns Consistent: Guardrails and Culture

3 min read
Oct
31

When Leadership Fails, Ecosystems Shrink

2 min read
Oct
30

Taking a Step Back from Ruby

3 min read
Oct
08

Stacking PRs & Squashing Merges

2 min read
Oct
02

Platform Engineering: Easy to Use, Hard to Mess Up

4 min read
Sep
17

Design Principle: Earn Your Scale

3 min read
Aug
01

Enforcing Accessibility in Code, Not Just Culture

4 min read
Jul
14

Design Principle: Composable Services

4 min read

Recent Notes & Links

Jan
12

"Don't fall into the anti-AI hype"

1 min read
Aug
13

A Personal Update: New Role, Same Focus

2 min read
Feb
20

Why I'm Building Looping

1 min read

You can subscribe via email or RSS for new essays, or follow along on Mastodon, Bluesky, and LinkedIn.