The Systems Thinking Lab Newsletter

Code is cheap now.
Systems thinking is not.

Systems thinking insights for junior engineers, every Saturday.

Written by a UC Berkeley lecturer. Free, forever.

One letter a week. No spam. Unsubscribe anytime.

You can't read your way to good judgment. But every Saturday, this letter gives you a real engineering decision to reason through, so the way you think about systems gets sharper one rep at a time.

Real systems, decoded

See how systems like Instagram and Stripe actually fit together, in plain terms.

Judgment over trivia

Learn the tradeoffs and mental models that hold up long after the syntax changes.

A 5-minute read

One focused idea each Saturday. Short enough to finish, concrete enough to use.

The most boring service in the stack

4 min read

The most reliable part of a stack is rarely the part anyone shows off. It has no clever layer to point at. That is the whole reason it never breaks. A...

What an AI Engineer job actually tests

4 min read

An AI Engineer job posting almost never asks you to train a model. It asks for Python. Backend services. APIs. Deployment. Say you are two years into your...

The junior engineer is not disappearing

4 min read

You have probably seen the claim by now: AI is coming for the junior engineer first, so if you are early in your career, or trying to become one, the...

'When "saved" does not mean saved'

5 min read

This week I put AI agents on a real job: rewriting the bios on all eight of my social profiles. They did the work. I reviewed and approved each one from...

Own the roadmap, not the backlog

4 min read

Nobody tells you the day the work stops arriving pre-decided. For two years the work arrives pre-decided. "Add a price filter to search." You open the...

The one rep you can't outsource

4 min read

Last week I said judgment is the job now that output is cheap. Which leaves the obvious next question: fine, but how do you actually build judgment? Here...

Output is cheap. Judgment is the job.

3 min read

AI writes the code. You make the call. I rebuilt the entire site this month around that one sentence. Here is why, and what changed. For two years the...

The role AI actually eliminates

4 min read

Everyone keeps predicting that AI eliminates the junior engineer first. I think that prediction aims at the wrong rung of the ladder. Maya is the best...

The block AI always forgets

4 min read

Ask an AI to build a feature. It will forget one block. Every time. Try it. Tell Claude to build video upload for your app. You will get a clean service:...

Should you build it?

4 min read

Here is a story that is playing out on teams everywhere right now. A junior engineer ships a payment system in one afternoon. Stripe, Postgres, Redis, a...

The lens behind every block

5 min read

You can know the seven blocks cold and still design the wrong system. The blocks tell you what to build. They do not tell you why. The why comes from...

The 6 Levels of AI-Assisted Development

An opinionated guide for engineers learning to use AI for coding. 6 levels from manual coder to parallel AI development, with self-assessment and 3 metaphors that explain why it's hard.

A Different Take on the 10x Engineer

The path to becoming a 10x engineer lies not in solitary coding but in amplifying the abilities of those around you through mentorship and collaboration.