The Role of a Developer in the Age of AI

A keynote talk turned essay — on shipping, understanding your environment, and why "Paint by Numbers" is the best metaphor for software engineering right now.

The Question Everyone Is Asking

Whenever I talk to other developers these days, the conversation eventually lands on the same topic: AI. What does it mean for our craft? Is it a threat? Is it a superpower? Are we becoming less relevant, or more?

I don't think the role of a developer has changed as fundamentally as people fear. But I do think AI has made something very visible that was always true — something most developers quietly knew, but rarely talked about.

Let me explain.

The Skill That Actually Matters

Let's be honest: code generation has never been the bottleneck in good software engineering.

Even five years ago — before AI could write a React component from a comment — the best engineers on any team weren't valued because they typed fast or wrote the most lines of code. Nobody worth their salt was measuring engineering quality in LOC. We all knew that.

The real bottleneck has always been shipping — getting real results into the real world. Delivering on time. Delivering what's actually needed. Knowing the difference between those two, and navigating the gap.

That's the skill. The ultimate engineering skill. It's harder to track than code output. You can't see a PR for it. There's no metric. But every senior engineer has lived through projects where someone got it done — not because they were the fastest coder, but because they held the whole picture in their head, asked the right questions, navigated blockers, and kept moving.

That's what I mean by "shipping skills." That's what I mean by "getting real results."

Seizing Your Opportunities

Every day, every developer faces a stream of small opportunities: a refinement session, a ticket description, a stakeholder conversation, a design review, a Slack thread going sideways. Each of these is a chance to either move things forward — or miss it.

Missing opportunities is easy. You didn't prepare enough. You didn't listen closely enough. You didn't ask the clarifying question. You didn't speak up when something felt wrong.

And the thing about missed opportunities is that they're invisible. Nobody counts them. There's no retrospective item for "the feature that took six months instead of two because we didn't nail down the requirements." There's no post-mortem for "the technically correct solution that didn't solve the customer's actual need."

But those missed opportunities are exactly what it costs a team — and a company — dearly. They are rare chances wasted.

Not missing them. Recognizing them in the wild and acting on them. That's what seniority actually looks like. That's what experience earns you.

You Connect the Dots

One of the most important things a developer can do is understand their environment:

  • the tech stack
  • the data
  • the company
  • the stakeholders
  • the market
  • the big picture
  • the things other teams and teammates are working on — even if it feels irrelevant today

Because you are the one who connects the dots.

Code generation is getting cheaper. It's not free — not even close — but it's cheaper every month. What is nowhere near being replaced by AI is the ability to take responsibility for carrying something from beginning to end and to create actual added value for the people you're building for.

You understand why a feature exists. You understand what the customer is actually trying to do. You know which edge cases matter in your system, with your data, in your context. An AI doesn't have that context. You do.

That's the thing that creates value. That's the work that matters.

Paint by Numbers

A friend of mine recently gave me the best metaphor I've heard for AI-assisted development:

> The future of coding is Paint by Numbers.

At first it sounds deflating. Are we just coloring in? But here's what he actually meant:

You set the lines. You set the numbers. (Someone or something) paints them in. You own the picture.

The template — the lines and the numbers — requires vision. Taste. Knowledge. Judgment. You need to know which lines to draw, what belongs in each section, and whether the finished picture solves the actual need.

The painting — the code generation, the boilerplate, the implementation details — that's the step that AI is rapidly taking over. And you know what? That's fine. That was always the least interesting part of the job.

What AI can't replace is knowing what picture to paint in the first place.

You judge whether the outcome meets the need. You are responsible for knowing which lines to draw, where to put which numbers. You are responsible for the result.

What Changes, What Doesn't

So what actually changes in the age of AI?

One step in the game gets faster — and cheaper. The "painting in" step. That's real, and it matters. Don't get stuck there. Don't spend your growth energy optimizing for the part that AI is commoditizing.

What doesn't change: the need to understand your environment deeply, to spot unseized opportunities, to take end-to-end ownership of outcomes, and to connect the dots across systems, teams, and contexts that no model has fully internalized.

The best description I know of a senior engineer isn't "writes excellent code fast." It's: someone who creates something that has genuine value — and knows how to make that happen.

AI doesn't threaten that definition. If anything, it clarifies it.

Celebrate Your Craft

There's a temptation right now to be anxious — to feel like the ground is shifting under your feet. Some of it is, honestly. But a lot of the anxiety comes from confusing code writing with software engineering.

Software engineering is a much bigger, more interesting, more human thing. It's the thinking before the code, the communication during, the judgment calls throughout, and the ownership after.

Keep honing your skills — all of them. Learn your tools deeply. Stay curious about the systems around you, not just the ones you directly control. Practice the discipline of understanding before building.

And do not forget the big picture.

There's no AI bot for that yet.

This post is adapted from a keynote talk on the role of developers in an AI-accelerated world. The core ideas — shipping skills, environmental awareness, and the "Paint by Numbers" metaphor — came from a developer summit where we asked ourselves: what does it actually mean to do great engineering work today?