← Journal
· 6 min read

The topic is only the nugget

My father set me summer research assignments and marked them in red pen. I thought he was teaching me to write. He was teaching me that the first answer is a surface, which is now the main thing I screen engineers for.

Every summer I came home from boarding school my father handed me a list of topics. Pick a few, research them properly in the Britannica set at home and in the Shell library he had access to, and write me a report. Typed, on the computer. The Second World War. Napoleon. DNA. Einstein. Electricity and magnetism.

Then he marked them. Actual red pen, spelling and errors and corrections down the margin. In the nineties. To a schoolboy who was on his holidays.

I should say that this was not reserved for me. He marked up everything. Letters, emails, and when we moved to Canada, the family budgets. Annotation was simply how he read a document. I did not find it unusual until I was old enough to notice that other people's fathers did not do it.

What I thought the assignment was: write about Napoleon.

What the assignment actually was took me years to see. You cannot write anything worth reading about Napoleon without the Revolution that produced him. You cannot write about the Revolution without the state of the monarchy, and the debt, and the harvests. Go the other direction and you land in the Napoleonic Code, which is still sitting underneath the legal system of about half of Europe. Pick any of those and the same thing happens again.

The topic is the nugget at the centre. The work is every layer you have to go through to get to it, and the reason my reports came back covered in red was almost never the spelling. It was that I had stopped at the first layer and presented it as the answer.

He was not teaching me to research. He was teaching me that the first answer is a surface.

That is the thing I now screen engineers for, and I have not found a better single signal.

Give someone a bug and watch where they stop. There is a kind of engineer who arrives at the first plausible explanation and treats the arrival as the finish. It is a caching issue. Fine. Why is the cache wrong? It got stale. Why did it go stale? The invalidation did not fire. Why not? Three or four layers down you usually find something structural, and the fix at that depth is different from the fix at the surface, and cheaper than fixing the same symptom four more times.

I had my own version of this recently and it was not flattering. My agents burned just under three thousand dollars in three hours one night. The surface answer was that we ran out of credits, which was true and completely useless. Peel it: why did running out of credits cost three thousand dollars? Because agents escalated to each other. Why did they escalate? Because one agent read a billing failure as an infrastructure problem. Why could it do that? Because my sleep system reasoned about idleness and had no concept of agents generating work for each other. That last layer is the one worth fixing. Nothing above it was.

So when I interview, I ask about something they debugged and then I just keep asking why. Not aggressively, and I tell them what I am doing. I am counting the layers they can go down before they reach for that is just how it works. Some people get two. Some people are still going when I stop them, and are visibly enjoying it, and those are the ones I hire.

You can teach almost everything else. I have never worked out how to teach someone to be dissatisfied with the first answer, which makes me think it either got taught to you early or it did not.

Mine came with a red pen and a holiday I would rather have spent outside.

The topic is the nugget at the centre. The work is every layer you have to go through to get to it.
← Older
Africa needs what Kai-Fu Lee's team did
Newer →
I still write the code