Skip to main content
Insight

Driver, Not Doer

The most common answer I get in a senior engineering interview is some version of "yes, I can do that." It is offered as a strength. It reads to me as a warning, and I hear it more every year.

I am not looking for a do-er. I am looking for a driver. That distinction used to be a preference. It is now the entire role, because "I can do that" describes something you can buy for twenty dollars a month.

This is written for two audiences at once: the leaders trying to screen for ownership, and the engineers who are about to find out that being extremely capable at executing a well-specified task is no longer a career.

Hire Me
I am not looking for a do-er, I am looking for a driver - ownership end to end, autonomy, depth of reasoning, and scope you personally drove
The Distinction

What Separates the Two

A do-er is competent. That is the confusing part, and it is why this profile survives so many interview loops. Hand a do-er a well-formed ticket and they will close it cleanly, on time, with tests. There is nothing wrong with the work. The problem is that the work started the moment somebody else finished deciding, and the deciding was the expensive part.

A driver starts earlier and stops later. They take a goal that is still ambiguous, figure out what the actual problem is, choose an approach and defend it, notice the thing nobody scoped, and stay attached to the outcome after it ships instead of after it merges.

"A do-er waits to be told the next step. A driver finds it."

My teams are fully remote and have been since long before it was fashionable. Nobody is looking over anyone's shoulder, and I do not want there to be. That model only works with people who take initiative by default, set their own direction inside a goal, and close the loop without being chased. Distributed work does not create drivers, but it does expose immediately who is one.

Put plainly: a do-er converts a decision into code. A driver produces the decision. Only one of those two jobs got dramatically cheaper in the last three years.

The Pattern

The "I Can Do That" Problem

Across pipeline after pipeline, the same profile keeps arriving at the senior stage: technically competent, credible on paper, fluent in the stack, and entirely unable to point at a problem they owned rather than a task they completed. Ask what they built and the answer is confident. Ask why it was built that way and the room gets quiet.

These are not weak engineers. Most of them are good at the thing they were trained to be good at. They have spent their careers inside well-scaffolded teams, where a lead broke the work down, wrote the ticket, drew the boundary, and handed over something already decided. They filled in the code, and they filled it in well. Nobody ever asked them to make the call, so they never built the muscle, and now the interview is the first time anyone has.

The tell is almost always the same. Accomplishments get listed rather than reasoned through. "I built the payments service" arrives as a credential rather than a story. Push once and you get a slightly longer version of the same sentence. Push twice and you find out whether there was a decision underneath it or whether they were downstream of one.

I want to be careful here, because this is a systemic outcome rather than a character flaw. We spent fifteen years optimizing engineering organizations to break work into small, unambiguous, independently shippable units. It worked. It also manufactured a generation of extremely capable executors and then removed most of the situations where they could learn to decide.

Seniority

The Why and the How, Not the What

At the senior level, the what is the least interesting thing you can tell me. "I built the payments service" tells me a service exists and that you were nearby. It does not tell me whether you would build it again the same way, and that second question is the entire value of hiring someone senior.

What I actually want to hear is the reasoning: the trade-offs you weighed, why you chose one approach over another, what you gave up to get it, what broke that you did not anticipate, and what you would do differently now. Then, separately, how you reason about a system you have never seen before, because that is the only part of the answer that transfers to my codebase.

That is what separates a senior engineer from a mid-level engineer with a longer resume. Tenure accumulates automatically. Judgment does not.

There is a fair objection here: plenty of good engineers are simply bad at narrating their own work, and interviews reward performance rather than substance. True, and I account for it by pushing rather than scoring the first answer. But the ability to explain a decision is not a presentation skill in this job. It is how a boundary gets communicated to a team, how a design survives contact with someone who disagrees, and how the next person to touch the code learns why it is shaped the way it is. An engineer who cannot explain a call has not fully made it.

Why Now

AI Can Already Do That

Here is the uncomfortable part, and I would rather say it directly than let people discover it during a layoff.

"I can do that" was a strong claim when doing it was hard. Implementation was the constraint, so being fast and reliable at implementation was a career. That constraint is gone. A well-directed agent will take a clearly specified task and produce a clean, tested, documented implementation of it, at a cost that does not resemble a salary. If your professional identity is "hand me a spec and I will execute it," you have described the part of the job that got automated first, and you have described it accurately.

"Being able to do it stopped being the differentiator the moment a model could also do it. Knowing what is worth doing never got cheaper."

Notice what an agent cannot do. It cannot decide the thing is worth building. It cannot tell you the requirement is incoherent, or that the real problem is two teams disagreeing about who owns a boundary. It cannot weigh a two-year maintenance cost against a two-week deadline, because it does not carry the consequence. It cannot walk into ambiguity and come back with a defensible position, and it certainly cannot own the outcome when the position turns out to be wrong.

Every one of those is a driver behavior. So the scarce and appreciating skill is judgment: deciding what to build, deciding how to architect it, and owning the result when it does not go to plan. Everything below that line is getting commoditized on a schedule nobody controls.

In Practice

What I Screen For

None of this is exotic, and none of it is a puzzle question. It is six things I try to get evidence of before I make an offer.

  • Evidence of true ownership. They drove a project or feature from problem to production, not just contributed to one that someone else was steering. I am listening for the moment they had to choose, not the moment they had to type.
  • A track record of thriving with minimal direction. Autonomous or distributed settings, where nobody was assigning the next step and the work still moved.
  • Depth of reasoning. Ask them to explain a past decision and why, then see whether they go beyond the what. Push twice. The second push is where the answer gets honest, and where the difference between a remembered narrative and a real decision shows up.
  • Scope and impact they personally drove, not team accomplishments they were adjacent to. "We" is a fine word in an interview right up until it is the only pronoun.
  • A decision that went badly, told without a villain. Drivers own outcomes, so they have scar tissue and can describe it. An unbroken record of good calls usually means the calls belonged to somebody else.
  • Willingness to disagree with me in the interview. If a candidate cannot push back on a technical premise during a conversation where they are trying to impress me, they will not push back on a bad architectural call in month four, which is the exact moment I need them to.

I would rather see two candidates who clearly clear that bar than ten who match the keyword list. The keyword list was always a proxy for capability, and capability is the part that got cheap.

For Engineers

How to Be a Driver

If you read the section above and recognized yourself, that is useful information rather than a verdict. Driving is a set of habits, not a personality type, and every one of them can be practiced inside your current job without waiting for a promotion or permission.

  • Ask what problem the ticket is solving before you start it. Not to be difficult. Because roughly one ticket in five is a proposed solution to a problem that has a better solution, and you cannot see that from inside the implementation.
  • Write the decision down before you write the code. A short paragraph naming what you are building, what you are deliberately not building, and what you are trading away. This single habit converts more executors into drivers than any training program I have seen.
  • Volunteer for the ambiguous work. The vague, under-scoped, slightly political project that nobody wants is the only place ownership is actually available. Clean tickets are where do-ers are made, because someone else already did the hard part.
  • Use agents for the doing so you can spend your attention on the deciding. Direct the tool, review its output critically, and refuse to merge anything you could not defend in a design conversation. Delegating implementation is leverage. Delegating judgment is how you become optional.
  • Disagree in public, with a reason. Once. On something that matters. Being the person who says "I think this is the wrong boundary and here is why" is worth more than six months of flawless ticket closure, and it is remembered far longer.
  • Stay attached after the merge. Watch what your change does in production. Drivers know how their decisions aged, and that feedback loop is the only way judgment is ever built.

The engineers I have watched grow fastest are not the ones who could do the most. They are the ones who kept quietly moving upstream, toward the place where the decision gets made, until one day they were the person making it.

Sourced

What the Evidence Says

  • The market is concentrating on seniority. Indeed's Hiring Lab found that "71% of the increase in Software Development job postings between May 2025 and May 2026 came from senior roles." Demand is not evenly distributed across the ladder - it is moving toward the people expected to make the calls. Indeed Hiring Lab (source dated 2026-07-08; verified 2026-07)
  • And it is still a hard market overall. In the same analysis, software development postings "remain about 27.5% below their pre-pandemic level" while total US postings have essentially recovered. Both things are true at once: fewer openings, disproportionately senior. That is a market that rewards demonstrated ownership and punishes a keyword-matched resume. Indeed Hiring Lab analysis (source dated 2026-07-08; verified 2026-07)
  • On what I am not citing: the widely repeated figures about AI-generated application volume - applications per requisition, the share of resumes written by a model - trace back to vendor surveys with a commercial interest in the number being large, and I could not confirm them against a primary source. Hiring managers I talk to describe volume up and signal flat. I will leave it at that rather than dress an anecdote up as data.

What I Do About It

I hire for curiosity and aptitude over keyword match, interview for reasoning rather than recall, and build the psychological safety that lets a driver actually drive - because autonomy without safety just produces people who wait to be told, which is the profile I was trying to avoid in the first place.

Inside the team, I hand out ambiguity on purpose. Underspecified problems with a clear goal and a named owner are the only reliable way I know to grow judgment, and an organization that never hands them out will keep buying seniority it did not develop and cannot retain.

This cuts both ways, and it should. It is the bar I hold candidates to, and it is the bar I expect to be held to myself.

Hire Me →