I Knew I Could Write Better Code Than the AI. That Wasn't the Problem.

The shift from writing code to engineering outcomes—and why it took me longer than it should have.

I resisted AI tooling for implementation work for a while. Not all of it. Research and design? Sure. I had no problem throwing questions at Claude or brainstorming architecture with it. But when it came time to actually write code, I wanted to write the code. I was faster. I knew my code would be better. And honestly, I was right.

That wasn't the problem.

The Real Blocker

The problem was that I had tied my identity as a developer to the act of writing code. Ownership meant authorship. If I didn't write it, I didn't really own it. And if I didn't own it, what was I even contributing?

I'd try AI tooling, run into a problem (hallucinated logic, wrong patterns, output that didn't fit how we do things at Nextworld), and use that as my reason to stop. The tool doesn't work. Back to doing it myself. But looking back, I wasn't giving the tool an honest evaluation. I was looking for permission to quit trying.

The Reframe

Being a good developer isn't about typing code. It's about delivering quality and keeping your skills sharp. The tool that gets you there is irrelevant.

That sounds simple but it took me a while to actually internalize it. I was so attached to the act of writing that I confused it with the act of engineering. They're not the same thing. Writing is one part of the job. Understanding problems, designing solutions, evaluating tradeoffs, reviewing output for correctness and maintainability—that's the job. And none of that requires me to be the one who typed the code.

Once I reframed it that way, AI stopped feeling like competition. It started feeling like what it actually is: another tool in the belt. I wasn't protecting my craft by refusing to use it. I was protecting something that didn't need protecting.

What Changed in Practice

I stopped bailing at the first friction point. Instead of treating problems with AI output as proof the tool didn't work, I started working through them. I learned to steer the output by writing markdown files to guide context, creating skills, and changing how I scoped and shaped what I handed off. The AI didn't get smarter. I got better at using it.

I shifted my role from writer to architect and reviewer. I still own the code. I still understand what it does and why. But I delegate most of the writing now, which frees me to focus on solving problems, investigating technologies, and designing systems. The things that actually move the needle.

There was an unexpected benefit, too. I realized how much time I'd been spending on opinionated implementations that changed nothing functionally. My preferred naming conventions, my patterns, my style. None of it affected the outcome. It just made the code feel like mine. Letting go of that made me faster and more focused on meeting actual requirements without getting caught up in over engineering or scrutinizing language specifics that don't matter.

This Isn't Vibe Coding

I want to be clear about something. What I'm describing is not vibe coding. Vibe coding is letting the AI generate code and shipping it without understanding what it does. That's abdicating responsibility, and it should remain a derogatory term.

Using AI to write code responsibly means you still review it, understand it, and are accountable for it. The difference is who typed it, not who's responsible for it. You cannot undercut responsibility regardless of how the code gets written.

The Takeaway

I still take pride in my code. I just stopped confusing pride with authorship.

The developers who thrive through this shift won't be the fastest typists or the ones with the most opinionated style. They'll be the ones who keep their skills sharp, stay curious about new tools, and focus on the work that actually matters. Resisting change out of fear doesn't protect your skills. It makes them stale.

Boston Grandin
Software Engineer
Boston Grandin is a Software Engineer at Nextworld, where he's spent four years building across the platform's AI, infrastructure, and core systems. When he's not engineering, he's climbing rocks and growing things in the garden.