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:
- What depends on this service that the architecture diagram forgot?
- What happens if this retry loop amplifies load instead of smoothing it?
- Will this “small” schema change break billing, logging, or reporting two steps downstream?
- What does failure look like from the customer’s perspective, not just inside the dashboard?
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:
- Which upstream systems create the input?
- Which downstream systems trust the output?
- Which parts fail closed and which fail open?
- Which teams will inherit the operational cost after the code is merged?
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.
- They ask clarifying questions that widen the frame. Not just “what should I build?” but “what else changes if we do?”
- They talk about tradeoffs without pretending tradeoffs do not exist. Systems thinkers know every optimization pushes on something else.
- They have respect for operations. People who dismiss monitoring, deployment hygiene, or rollback design usually think too locally.
- They can describe past mistakes with structural insight. The best answers are not “I forgot a semicolon.” They are “I optimized the happy path and ignored the failure path.”
- They understand time. Not just latency, but maintenance cost, migration cost, recovery time, and how a quick win can become a durable burden.
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 →