Engineering values

How I Think

Engineering is not about writing code. It is about making decisions under uncertainty, managing trade-offs, and building systems that survive their initial excitement.

This page outlines the mental framework I use when making technical and architectural decisions.

5 min read
···
01

Boring is a feature

I default to stable, proven technologies over novelty.

Innovation tokens are limited. I prefer to spend them on the product's unique value, not on infrastructure choices that increase risk without clear upside.

"Boring" technology fails in predictable ways, has better documentation, and is easier to operate and hire for. Reliability is a feature users notice most when it's missing.

02

Clarity over cleverness

Code is read far more often than it is written.

I optimize for explicitness, readability, and intent over clever or compressed solutions. Abstractions that look smart but hide complexity tend to create long-term cost.

Clever code is a form of technical debt. Clear code is an asset that pays dividends every time it is read.

If a system requires deep tribal knowledge to be modified safely, it is already too complex.

03

The long game

Short-term speed often creates long-term paralysis.

I prioritize architectures that can evolve gradually, where deleting code is as easy as adding it. Systems should be shaped by change, not broken by it.

Slowing down to make the right decision early is often the fastest path over the lifetime of a product.

04

Simplicity is an active choice

Complexity does not appear by accident.

Every new feature, dependency, or abstraction adds surface area for bugs, maintenance, and cognitive load.

Simplicity requires continuous effort: saying no, removing unused paths, and resisting solutions that solve hypothetical future problems.

How this shows up in practice

In practice, this means asking hard questions early, documenting decisions, and designing systems that other engineers can understand and maintain without constant guidance.

My goal is not to build impressive systems, but dependable ones.