Nobody is all eight: using AI to cover the engineer you aren't
Last week, Nick Hodges argued in InfoWorld that there are things you are better at than coding agents. Whilst that’s true of the best possible human, it’s unlikely that you, specifically, are better than an agent at all of them.
Here’s how I’d score each of his claims, from 1 (I don’t think it holds) to 5 (only a human can fill that role).
Only humans can know non-code context (2/5)
Humans can be very good at picking up on context, but I also know engineers who are completely context blind. They’ll go for a technically pure solution even though it’s completely inappropriate for the environment it’s being built in. Agents can work with whatever context you give them. I have a list of which teams own which service, how much capacity they have and what their priorities are. Even while writing this post, the agent flagged how some of my statements could be read, as a good editor would.
Only humans can be accountable (5/5)
No argument on this one. The new role for an engineer is to be accountable. In fact, it’s probably the biggest shift in the job now that agents are on the scene. Previously a lot of engineers pushed accountability up to their management. Now they effectively are managers.
Only humans can say ‘No’ (2/5)
Sure, an agent will generate giant flashing red text if you ask it to and haven’t given it anything that tells it not to. However, I’ve asked agents to do PoCs on significant refactors and they initially refused because they reasoned that it’s work that should be done carefully over a number of weeks. I had to reassure it that the code would never see the light of day in production before it would start.
Only humans can say ‘Yes’ (4/5)
You absolutely need a human in the loop here, but technically, give an agent a budget and some autonomy and it can go off on its own. The evidence suggests that’s not a great idea. In Project Vend, the agent did a terrible job of running a business and gave away stock, although later versions largely stopped losing money. The problem is that without accountability, an agent definitely shouldn’t say yes.
Only humans can say ‘I don’t know’ (3/5)
I can’t believe there’s a single engineer who hasn’t had an agent give up and ask for more input. My agents frequently ask me for a way forward when there isn’t a clear winner between paths. On the flip side, I’ve managed engineers who pick up a story beyond their capability and, two weeks later, haven’t made any progress or asked for help. I’ve also seen engineers charge ahead on bad assumptions and deliver a week’s worth of work that has to be thrown away. The agent demonstrates that it can exhibit the full range of human behaviours.
Only humans can initiate a software project (2/5)
It depends what you mean by initiating a software project. Give it a prompt that looks for inspiration in your emails and I bet Claude Duet, Anthropic’s new proactive agent, could initiate projects on its own. Give an agent a vague problem space and it may well see an opportunity to solve a problem that a human might not. Initiating is largely solved, but committing is still a human action.
Only humans have good taste (3/5)
I agree that only humans have good taste, but I’d posit that most humans have terrible taste. I have good taste when reviewing other people’s designs, but that doesn’t extend to creating them. An agent that creates with me reviewing is absolutely the best combination here.
Only humans can say if the application is right (3/5)
An agent given a Jira ticket description is, in most cases, a more thorough reviewer than even the best human. The only area where a human is genuinely better is when, after building something, it becomes clear that the problem you were solving isn’t what you thought it was. But a huge proportion of engineering teams just build to the story, not the need. So I somewhat agree that only a human can know whether what you’re building is right, but it’s likely not the engineer writing the code anyway.
I agree with Nick that the human role is essential, but I’d challenge you to run through those eight points and honestly say whether you are genuinely better than the agent at all of them. For each gap, ask whether you’d notice if the agent got it wrong. It takes a lot of humility, but thinking agents can only tackle the code will leave you short. Tactical use of AI across these areas can fill the gaps and make a solid engineer a great engineer, as long as you have the skills to evaluate its output.
Where does AI fill a gap for you?