1°) Know how to diagnose and fix critical problems by themselves, because there will be bugs in production for which AI won't be any help
2°) Write maintainable code, AI doesn't care at all of maintainability of code while devs should (must imho) consider pasting AI code as a merge/pull request.
For 2°) IIRC, I read somewhere that more and more code published on i.e. github is AI-generated. While this means the quality of code is decreasing, i.e. Copilot is also trained on more and more % of AI-generated code. So the quality of AI-generated code is decreasing globally.
As time passes, I think skilled devs will become more skilled and unskilled will become more unskilled.
The cutoff date for Claude 3.5 is April 2024, that's currently slightly over one year ago.
Things like a loss of context about the nature of some installed dependency or something.
You really have to know what you're doing and read carefully to avoid glossing over things that'll catch up to you later.
This approach is different than blind trust in the output from a place of ignorance.
[0] https://manuel.kiessling.net/2025/03/31/how-seasoned-develop...
I've had some free time recently so I've been trying to use the various AI tools to do a greenfield project with Rails. I know the stack intimately, so it's been a useful exercise as a check against hype. While I can occasionally trust the tooling to make big changes, most of the time I find that even the small changes are wrong in some important, fundamental way that requires re-writing everything at a later time. Asking the models to fix whatever is broken usually results in an endless cycle of (very junior-like!) random changes, and eventually I just have to go in and figure out the fundamental restructure that fixes the issue.
Would this be good enough for someone writing a one-time-use, bespoke piece of software? Maybe. Would they be able to maintain this code, without having a truly senior-level ability to work with the code itself? No [1].
I'm less fearful of LLM taking experienced programmers' jobs [2], because I fundamentally think this kind of stuff plays in the same end of the market as knockoff designer goods, Ikea furniture, and the like. It makes custom software available to an entire customer segment that couldn't have afforded it before, but nobody is going to confuse it with a product made by a team of skilled professionals [3,4].
[1] But to a really inexperienced developer, it looks the same.
[2] I am more fearful of clueless business types, who think this technology obviates the need for programmers.
[3] ...but will unskilled professionals be under pressure? Maybe!
[4] ...and what about skilled people, using the same tools? My current hypothesis is they're beneficial, but ask me again in six months.