No, AI cannot replace developers... yet
In recent months, we’ve been bombarded with claims that Artificial Intelligence (AI) is revolutionizing software development. Headlines and social media posts suggest that AI allows developers to achieve in hours or days what once took weeks or months. Some Fortune 500 companies even claim they will soon replace a significant portion of their workforce with AI agents.
As you know, I am not an AI skeptic. I embraced AI coding assistants as soon as they became widely available. But as incredible as these tools are, I cannot stand behind these overhyped claims.
The reality I experience as someone with over 25 years of coding experience—15 of those in a professional setting—is very different from the one being portrayed.
AI cannot replace developers... yet! More importantly, it will not make you a better developer or help you transition more quickly from a Junior Developer to Senior Developer. Let me explain why.
Delivering in Hours Rather Than Weeks?
Let’s start by debunking the myth that a developer can deliver in hours what used to take weeks with the aid of AI – a claim that is both common and easy to disprove.
I’m sure you’ve heard stories of applications conceived in short hackathons that became successful products raising millions in funding. These are not exceptional cases, if we exclude the funding part 😜.
In an informal context, anyone with good problem-solving skills, a passion for programming, and some experience can build a simple application in a few hours. I have written at least 50 applications in my spare time, and most of them were coded in just a few hours.
However, writing a prototype or something for fun is entirely different than building an application in a professional context. Professional software development is slow and costly. Even simple applications often require weeks or months to be delivered. Why is that?
There are many angles to it. I touched on some in my newsletter issue about “Inefficiencies of Software Development.” But the obvious reason is that building an e-commerce site for a small flower shop around the corner is vastly different from developing software for the healthcare, financial, infrastructural, or defense sectors. And it’s not just about complexity. The real issue lies in the level of commitment and guarantees a company needs to provide its clients. Add to that compliance, regulations, and more, and it’s easy to see why professional software development takes time.
Writing code is only a small piece of the larger puzzle that is software development.
Can AI-Generated Code Deliver Guarantees?
So the question now is: can AI-generated code deliver the same level of guarantees in hours rather than months? The answer is clear: it cannot. In fact, as of today, AI isn’t even capable of writing an entire application—something described by Gergely Orosz and Addy Osman as the “70% problem” in the Pragmatic Engineer newsletter.
The 70% Problem
Peter Yang, a successful Product Manager with an impressive background, shared some honest reflections on X about coding with AI as a non-engineer:
"AI can get you 70% of the way there, but the last 30% is frustrating. It keeps taking one step forward and two steps backward with new bugs, issues, etc."
Peter assumes his frustration stems from his inexperience in software development, which is only partially true. While experience plays a role, even seasoned software engineers encounter similar challenges when relying on AI to bootstrap an entire application or generate large portions of a codebase, especially in an unfamiliar language, framework, or pattern.
The truth is, AI often struggles to deliver even a simple proof-of-concept or MVP application, let alone anything more complex or production-ready.
Testing AI Tools: Bolt and v0
I tested two popular AI tools that claim to develop full-stack web apps: Bolt and v0. It takes just one prompt to adjust expectations and see that these tools aren’t truly capable of delivering full-stack applications. Instead, they focus on a very specific class of apps, primarily centered around a frontend stack.
Bolt supports only Node.js for backend services. Bolt couldn’t even deliver a working application and immediately fell into the infamous loop where AI would fix one bug and introduce more, unable to deliver a complete solution. Don’t be fooled by the “Attempt Fix” button. I tried it many times, and it never managed to recover from the problems it created.
The experience with v0 was slightly better. It provided a high-level diagram of the proposed solution, some Java stubs, and a working, deployable frontend written in React. However, the delivered frontend application was far from complete and would likely require multiple iterations to reach an acceptable state. The entire backend still needed to be written. To top it off, even the creators acknowledge the limitations, stating: “v0 may make mistakes. Please use with discretion.”
My conclusion is that these tools, at this stage, are nothing more than glorified scaffolding apps. Any skilled engineer or professional development team would be better off using traditional scaffolding tools like Create React App or Angular CLI—especially when customized with templates that enforce specific organizational standards—rather than relying on whatever the AI decides to generate.
AI as a Coding Pair
The only approach I see as successful at this stage is using AI as a Coding Pair. Tools like ChatGPT, Claude, GitHub Copilot, Codeium, Cursor, and similar solutions can positively impact the efficiency and quality of the work we deliver—if we remain in control 🎮.
However, companies and junior developers alike must understand that these tools do not eliminate the need for a deep understanding of software development. he act of writing code is only a small portion of the necessary work to deliver a complete application. Even if we stick purely to the technical and practical aspects, much of the effort often goes into designing a solution that fits seamlessly into the context of a larger system, rather than coding it.
As Orosz and Osman highlight, the outcomes of using AI differ dramatically between junior and senior developers, with seniors having a significant advantage.
- Skilled Engineers use AI to prototype what they already understand, generate POCs they can refine, explore alternatives, and automate tedious tasks.
- Juniors often rely on AI to learn, which can lead to accepting incorrect or outdated solutions, overlooking critical security and performance considerations, struggling to debug AI-generated code, and, most unfortunately, building fragile systems.
Conclusion
I hope this issue has reassured you about the future of software development and developers, at least in the short term. As of today, it’s clear we are still far from having AI assistants or agents capable of replacing software developers.
That said, things can change rapidly in these fast-evolving sectors, driven by enormous investments from the world’s largest companies and investors, many of whom are going “all in” on AI. It’s worth noting that the most vocal and optimistic voices right now are CEOs and company leaders, which is understandable given their companies’ investments.
If you’re a senior developer, make sure to try these tools and get comfortable with them because they undoubtedly give you an edge.
To junior developers I say: focus on learning the craft of writing code as we always have. Learn to recognize excellence in your organization and strive to mirror it. Seek out good mentors and learn from them. Read, read, and read even more. And why not? Use AI coding assistants as a supplement to all the traditional ways of learning I’ve mentioned.
In the next issue, I’ll share my current setup and explain why I wouldn't recommend Cursor over GitHub Copilot or Codeium. Stay tuned!
Alla prossima 👋