
I recently attended an AI conference where one presentation started with a question: “If AI can generate your source code, do we still need developers?” I see this question from two perspectives: As a long-time developer and as a Data Scientist.
As a Data Scientist, I find these questions fascinating (and a bit frightening). The amount of training necessary to create these systems is extraordinary. I am in awe of the people who have been able to create these systems.
As a developer, I wonder: Would AI-generated code be capable of writing, testing, idiot-proofing, documenting, and preparing my code for deployment? Are there AI agents out there to do that? Can I really rely on an AI agent to generate the initial source code, unit tests, security vulnerabilities, and documentation? My initial response was “no”, but I wanted a more complete answer, so I decided to take a closer look.
A quick Google search finds dozens of code generators available from Claude to GitHub Copilot and Cursor. These systems are extremely capable and, when used correctly, can generate code. But those two words: “used correctly” are the catch. Can a non-developer create the necessary prompts to generate code? Will the code be good enough? Just as human-developed code needs to be tested and scrutinized, so too does AI-generated code. Will a non-developer be able to do that, or will they trust the AI system?
Understandably, allowing an AI agent to write my code is enticing. Code that might take me hours or days can (in theory) be written in minutes. The prompts provided will largely determine the type and quality of the code generated. Code generation is iterative. As flaws and weaknesses are identified, code is improved, whether by a developer or additional prompts to the AI system.
Kolawole Samuel Adebayo recently wrote in Forbes about The Messy Cost Of AI Code. In the article, he describes both the promise of AI-generated code and the pitfalls. He notes that AI-generated code will often look good but fail in practice. This, in turn, leads to long developer lead debugging cycles because the AI systems often just aren’t sophisticated enough to debug their own code.
A recent survey in Stack Overflow highlights that while developers want to use AI in the development process, the generated code fails to handle complex tasks and is not trusted by developers. Respondents say AI code is almost right (66%), but not quite, which in their view also leads to longer debugging cycles (45%).
“Vibe” coding is trending. “Vibe” coding starts with a set of general parameters, then iterates through various fixes or changes, in theory getting closer to a final set of code as the process progresses. The weakness here is the iterative nature of code generation, requiring someone (a developer?) to review the outcome before the next iteration can begin. “Vibe” coding focuses on the overall “Vibe” of the code, rather than the syntax. 72% of respondents said they do not use “Vibe” coding because they find flaws in the outcome. It’s unclear if the flaws are due to inadequacies in the prompting or the AI agent.
In my experience, AI-generated code can include “lazy” mistakes, and once a mistake is made, that mistake risks being perpetuated. Code fixes should be carefully evaluated to ensure new issues are not being created and old issues are not perpetuated. If a developer is involved in AI-generated code, is there really any time savings? Or is it simply democratizing code generation?
Based on the Stack Overflow survey, there is little to no savings here. If the user must iteratively fix the code, then review the code for completeness and accuracy, time savings are reduced or lost. If the user blindly accepts the code, there is a real possibility that the outcome will be wrong or worse yet, look right but still perpetuate an error.
AI systems themselves are imperfect. AI-generated chatbots have produced biased output, or worse, derogatory statements. (AI chatbots are creating more hateful online content: Researchers, ABC News, Aug. 30, 2025; Elon Musk’s Grok AI chatbot is posting antisemitic comments, CNBC, Jul 8, 2025)
Despite the possible flaws, AI systems are and will continue to be a useful tool for many tasks, such as documenting code (GitHub Copilot, Mintlify, testing code (TestSprite; LambdaTest), and code analysis (Sonar, GitHub Copilot).
So, in what capacity should we utilize these tools? Who should control, check, and validate the outcomes? Are developers even needed anymore? I believe there is a place for these tools when used with care and attention to detail. AI-generated code can potentially save time during the SDLC by documenting, identifying weaknesses, unit testing, and stress testing. While each use case is different, and each development team would have to reach their own level of comfort, these tools can be used to the benefit of development teams.
Today’s AI code generation tools are good and getting better. I don’t know if they are production-ready. That’s not to say they won’t get to that point, but I just don’t think they are ready today.
Are we ready to trust AI-generated code in production? Once the code is generated, who will review and test the code? If not a developer, then who? As a developer, I admit this is a little threatening, but as a data scientist, I find this infinitely intriguing.
Can a non-developer utilize these tools today? Absolutely. BUT will that non-developer be able to understand the code or know coding best practices well enough to determine if the AI-generated code is correct and complete? I don’t think so. For that, I still think a developer is needed.
Should we use AI-generated code? – YES! With an old paradigm: Trust but Verify.








