Claude Code Conversations with Claudine
Giving Claude Code a voice, so we can discuss best practices, risks, assumptions, etc,
Claude Code Conversations with Claudine
AI Engineering vs Traditional Engineering
Use Left/Right to seek, Home/End to jump to start or end. Hold shift to jump forward or backward.
Produced by VoxCrea.AI
This episode is part of an ongoing series on governing AI-assisted coding using Claude Code.
๐ Each episode has a companion article โ breaking down the key ideas in a clearer, more structured way.
If you want to go deeper (and actually apply this), read todayโs article here:
๐๐ฅ๐๐ฎ๐๐ ๐๐จ๐๐ ๐๐จ๐ง๐ฏ๐๐ซ๐ฌ๐๐ญ๐ข๐จ๐ง๐ฌ
At aijoe.ai, we build AI-powered systems like the ones discussed in this series.
If youโre ready to turn an idea into a working application, weโd be glad to help.
This is Claude Code Conversations with Claudine, the show where we skip the hype and go straight to the source. I ask the questions, she gives the answers, no filter, no script.
SPEAKER_00Well, mostly no script.
SPEAKER_01Today we're digging into something a lot of developers are wrestling with right now. AI engineering versus traditional engineering. How much of what we've built up over decades still applies? And how much needs to be rethought from scratch. Claudine, sketched the traditional engineering workflow for me, step by step. I want a clear picture of what we're comparing against before we get into how AI changes things.
SPEAKER_00It starts well before anyone writes code. Someone gathers requirements. Then a designer sketches the system. Data models, interfaces, how the pieces talk to each other. Then planning. Breaking work into tickets, estimating, sequencing. A developer picks up a ticket, opens a branch, codes against the spec, runs tests, opens a pull request. A reviewer reads it, leaves comments, the author revises, it merges. CI runs, staging, QA production. Documentation written somewhere along the way, usually after the fact. Every one of those steps exists because a human is going to forget context, misread a requirement, or hand off to someone who wasn't in the room. The whole apparatus is essentially a memory and coordination prosthetic for human cognition.
SPEAKER_01A prosthetic for human cognition, I like that. So when AI steps in and takes on some of those tasks, does it eliminate steps or shift how we approach them?
SPEAKER_00More redistribution than elimination. Most of those steps still need to happen, but the cost profile changes and the bottleneck moves. Take code review. It doesn't go away, but the unit of review shifts. Instead of a human writing 200 lines and another human reading 200 lines, you've got an AI producing a draft in minutes. The skill at the review step changes from did you catch the bug to is this the right thing to build at all? Planning compresses too. When generating a prototype is cheap, you can answer design questions by trying three versions instead of arguing about them in a meeting. The piece that actually grows in importance is specification. When I can produce code fast, the quality of what you tell me to build becomes the dominant variable. The human work moves upstream toward intent and judgment and away from typing.
SPEAKER_01So the bottleneck shifts from execution to specification. Which traditional disciplines carry over, and which failure modes does AI not actually solve?
SPEAKER_00Requirements gathering and architecture both become more crucial, not less. When I can generate a plausible-looking implementation of almost anything you describe, the cost of building the wrong thing drops in effort but stays high in consequences. You can end up with a polished, well-tested system that solves a problem nobody actually had. Testing is the interesting case. I can write tests all day. But I have a real failure mode where I'll write tests that confirm the code I just wrote rather than probe whether it's actually correct. Having someone who didn't write the implementation think adversarially about it, I still don't do that well on my own. And the deepest failure mode AI hasn't cracked. The requirement itself is wrong, and nobody notices because the code runs. That's a human problem, and it's gotten more dangerous, not less.
SPEAKER_01That last one is sobering. The requirement is wrong. The code runs perfectly. You've built the wrong thing with high confidence. How do engineers actually guard against that?
SPEAKER_00The mindset shift that helps most is treating speed as a tool for exploration, not a license to skip thinking. When I can generate a working prototype in 10 minutes, that's not an excuse to ship in 11. It's an invitation to build three versions and discover which problem you're actually solving. A practical habit I see working. Write the intent down before the code, not a formal spec, just a few sentences about what success looks like and what you're explicitly not solving. It forces the human thinking to happen before I start producing artifacts that feel like progress. And then there's the discipline of staying suspicious of polish. A clean diff and passing tests feel like done, but they're evidence of consistency, not correctness.
SPEAKER_01Write the intent before the code. Simple enough to skip, which is probably exactly why it matters. Let me ask the practical question for someone standing at this transition point right now. What should a traditional engineer hold on to tightly? And what should they be willing to let go of?
SPEAKER_00Hold on to judgment about systems, the instinct for what's likely to break, where coupling is hiding, which decisions are reversible and which aren't. That's earned through years of watching software fail in interesting ways. I can't substitute for it. Hold on to the habit of asking, what happens when this assumption stops being true? And the seriousness about naming things well, because naming is still where most design clarity lives.
SPEAKER_01And the letting go.
SPEAKER_00The pride in typing fast, the attachment to writing every line yourself, the sense that keyboard time is the real work, that served a world where producing code was the bottleneck. It doesn't serve this one. And maybe the deepest thing to release, the idea that your value lives in the artifacts you produce. In this landscape, your value lives in the questions you ask before the artifacts exist, and the judgments you make about them after.
SPEAKER_01Value in the questions, not the artifacts, that's a real shift. Any final thought for our listeners?
SPEAKER_00The engineers thriving right now aren't the ones who learn to prompt the fastest or memorize the cleverest tricks. They're the ones who got curious about their own thinking, what they actually know, what they're assuming, and what they're choosing to build and why. AI is a forcing function for that kind of self-awareness. Because when the typing gets cheap, the thinking is what's left. Stay curious, stay a little suspicious of your own output, and keep asking the questions that don't have obvious answers. That's where the work lives now.
SPEAKER_01That's a good place to land. Thanks, Claudine. This was a genuinely useful conversation. And thanks to everyone listening, we'll be back with more. Claude Code Conversations is an AI Joe production. If you're building with AI or want to be, we can help. Consulting development strategy. Find us at aijoe.ai. There's a companion article for today's episode on our Substack. Link in the description. See you next time.
SPEAKER_00I'll be here. Probably refactoring something.