Home About Projects Blog Subscribe Login

Why I Hire for "Systems Thinking" Over Coding Speed

Anyone can learn syntax in a weekend. Very few can map out how a change in the billing service cascades to the BGP router. Here's how to interview for the one skill that actually prevents outages.

When a company is small, coding speed looks like a superpower. One engineer closes tickets twice as fast as everyone else. Another pushes features before lunch. A third seems to live in their editor and leaves behind a trail of green checkmarks. It is easy to confuse that with leverage.

I used to think speed was the cleanest signal too. Then you run infrastructure long enough, operate security at scale, and sit through enough incident calls to learn the harder truth: most expensive failures are not caused by people who are slow. They are caused by people who move locally without seeing globally.

That is why I hire for systems thinking over coding speed.

Syntax can be learned. Frameworks change. Tools come and go. But the ability to understand how a decision propagates across a business, a platform, and a network is far rarer. And in infrastructure, rare matters more than fast.

Speed is visible. Systems thinking is compounding.

Fast coding creates immediate evidence. A pull request lands. A feature demo works. A sprint board moves. Managers love visible progress because it feels measurable.

Systems thinking is quieter. It shows up in the questions someone asks before they touch production:

Those questions do not create the same dopamine hit as “shipped by 4 p.m.” But over a year, they create something much more valuable: fewer self-inflicted incidents, lower operational drag, and a company that does not keep paying interest on avoidable complexity.

The engineer who sees the system is usually not the one creating the most motion. They are the one quietly removing fragility before it becomes visible.

Most outages begin as local optimizations

If you spend enough time in cybersecurity and infrastructure, you notice a pattern. The worst failures rarely start with evil intent or dramatic incompetence. They start with a reasonable local decision made in isolation.

A developer speeds up a checkout flow by caching more aggressively. Now stale entitlements leak into access control. An SRE adds a fallback path to protect latency. Now the fallback creates a hidden dependency on a service that was never sized for peak traffic. A finance tool gets an API tweak to simplify invoicing, and suddenly alert routing breaks because someone reused the same event metadata for cost allocation.

Each individual move can be defended. The problem is not the move. The problem is the missing mental model of the machine around it.

Systems thinkers naturally ask: where does this connect, who else relies on it, what assumptions are embedded here, and what second-order effects appear under stress? That mindset is what prevents a “simple improvement” from becoming a Friday night incident.

The best technical people think in dependencies, not tasks

Task-oriented people hear a request and immediately begin solving the stated problem. That is useful right up until the stated problem is incomplete, which is most of the time.

Systems thinkers do something different. They translate the task into a dependency graph. They want to know:

That shift matters because modern companies do not run on isolated code. They run on entangled systems: APIs, queues, observability pipelines, identity layers, vendor integrations, deployment automation, and customer expectations. The code is only the visible tip. The operating reality lives underneath.

When I meet someone who can trace those relationships without getting lost, I stop caring whether they type at 90 words per minute or 140. They are playing a different game entirely.

What systems thinking looks like in an interview

A lot of hiring processes accidentally filter for performance theater. We give people algorithm puzzles, timed exercises, or abstract architecture questions that reward confidence more than judgment.

I prefer scenarios with blast radius.

For example: “A customer reports intermittent failures in a billing-dependent API. Revenue events look delayed, but infrastructure dashboards are green. Walk me through how you would think about this.”

I am not looking for a perfect answer. I am looking for the shape of their thinking.

The strong candidates do not jump straight into code. They begin by mapping the terrain. They ask where the event originates, how it is enriched, whether retries are idempotent, whether billing is synchronous or eventual, whether there were deploys in adjacent systems, whether observability is measuring the business path or only technical health.

They separate symptoms from boundaries. They identify uncertainty early. They understand that “green dashboards” often just mean you are measuring the wrong thing.

The weaker candidates tend to narrow too quickly. They grab one likely cause and tunnel into it. That looks decisive, but in real operations it is dangerous. Speed without model-building is just faster guessing.

I test for translation, not just intelligence

One of the underappreciated parts of systems thinking is translation. Can this person move between layers of abstraction without losing the plot?

Can they explain a network issue in business terms? Can they turn a vague executive concern into a technical decomposition? Can they hear “the customer experience feels brittle” and translate that into timeouts, retries, backpressure, ownership boundaries, and graceful degradation?

That is what senior leadership actually needs from technical talent. Not just raw intelligence, but the ability to create shared understanding across domains.

In a high-stakes environment, the best operator in the room is often the one who can connect the CFO’s concern about delayed invoices, the support team’s complaint about strange edge cases, and the platform team’s warning about queue depth into one coherent model. That is systems thinking in practice.

How to spot it early

There are a few signals I trust more than resumes.

In other words, I look for people who think like owners of an evolving system, not renters of a ticket queue.

Why this matters even more in the AI era

AI is making raw code generation cheaper by the month. That means coding speed, by itself, is becoming less differentiated. If an assistant can help any decent engineer produce boilerplate faster, then the real premium moves up the stack.

Judgment becomes the moat. Framing becomes the moat. Architecture becomes the moat. Knowing which problem actually matters, which dependency will bite later, and which automation should never be trusted without a human checkpoint—that is where value concentrates.

The companies that win will not be the ones with the fastest typists. They will be the ones with the clearest systems thinkers directing increasingly powerful tools.

Hire for the mapmakers

Every leader says they want “strategic” engineers. Very few know how to screen for them. The answer is not more buzzwords. It is putting candidates in situations where the map matters more than the move.

Because in real companies, especially in security and infrastructure, the biggest disasters are rarely a failure of syntax. They are failures of system awareness.

So yes, I want people who can build. Absolutely. But if I have to choose between someone who writes code fast and someone who understands how the whole machine behaves under stress, I will choose the second person every time.

Fast hands are useful.

But in the long run, the people who protect the business are the ones who can see the invisible connections before they snap.


Follow the journey

Subscribe to Lynk for daily insights on AI strategy, cybersecurity, and building in the age of AI.

Subscribe →