I don’t understand how it works. It’s not how I would have done it. The code is absolute crap. It’s over-architected. All too often software engineers drop these phrases as a precursor to suggesting s/he be allowed to rewrite some code. Writing new code is more fun than maintaining existing code; maintaining your code is more fun easier than maintaining someone else’s code … especially when the original author is no longer around.
Maintaining others’ code requires the ability to effectively read code, a skill that not all engineers have. Even when someone wants to develop that skill, it takes time. It’s why junior engineers are junior, senior engineers are senior, it’s their experience writing and debugging and maintaining code.
Now consider AI: no more green-field efforts or blank canvases awaiting inspiration, engineers are only maintaining code. An engineer’s first job is to read and evaluate the generated code before moving forward. How does this work when the engineer doesn’t have code-reading skills? Is this exacerbated because junior engineers are no longer writing code from scratch, struggling to create a solution with tools at hand?
No doubt AI models will continue to improve, but there’s a fundamental gap until AI-generated code no longer needs human intervention.