About

I am Jonathan — an engineer in San Francisco who has spent most of the last decade on the unglamorous side of product work: the schemas, the deploy paths, the tools everyone touches and nobody owns.

I grew up in the Seattle suburbs, started programming because I wanted to modify a game rather than play it, and have never quite lost that motivation. The work I am proudest of tends to be infrastructure that made someone else's week easier without them having to learn anything new.

How I work

Write the thing down first. Most disagreements about a design are actually disagreements about the problem. A page of prose surfaces that in a day; a prototype hides it for a month.

Reversible beats correct. I would rather ship something I can undo in thirty seconds than something I am confident about. Confidence is not a deploy strategy.

Optimize for the person reading this in two years. Usually that person is me, and I will have forgotten everything. Boring, explicit code with good names has never once let me down.

Talk to whoever is affected. The best platform decisions I have made came from sitting with a product team for an afternoon, not from a design doc.

Outside work

I bake bread badly and persistently, run in Golden Gate Park most mornings, and am slowly working through a stack of books about how cities are built. I play upright bass at a level best described as enthusiastic.

Get in touch

Email is best: hello@jonathanchien.com. I am glad to talk about platform engineering, migrations that went badly, or early-career questions — I answer those first.

Not currently looking for a new role, but always happy to meet people working on developer tools or infrastructure.