Writing code was never the hard problem of software, which is why I think using LLMs is misguided. If I understand the problem and understand the solution and know what kind of architecture I want to go with, then 99% of issues have been solved. Writing the code is just putting it all together.

"Hey, plumb this fucking property through 15 layers of abstraction for me and wire it into a unit test and run it"

OK BOSS IT RAN FINE

"Thanks."
I'm not giving that up. I'm also not going to be able to just shit out a tree traversal from memory because my memorization doesn't work that way. I don't want to fucking deal with copy pasting and endlessly hitting key combos for go to implementation NOT THE INTERFACE THE IMPLEMENTATION. I hated that shit.
It was always easier for me to think about "ok, data flows like
this, then I do the actual computing
here" than to type the syntax.
You're right that writing the code is the easier part because that's what the AI does for you and the AI can't architect for shit.
I would also argue that not writing your own code deprives you of a discovery process. While writing, you might spot mistakes in your own assumptions, or might spot mistakes elsewhere in code. I've started calling this AI myopia. You only see what the LLM sees. But I guess this doesn't matter if your project is purely LLM-generated and you don't have considerations like efficiency, timing, etc.
Please tell me the last time you were paid to run a profiler. I write web apps so I can count on one hand. If you're writing microcontroller shit, great. Wish I got into that.
But I'd also use a profiler instead of pre-optimize (besides
literal correctness or obvious shit like tree here, hash there).
Again, the majority of my job is just plumbing shit and fixing shitty jeet SQL.
Ultimately I blame the whole "learn to code" bullshit. It filled the profession with people who had no business being in the profession, either due to wrong incentives ($) or incompetence. This influx only hindered development, as they required constant handholding and oversight. Now, instead of fixing this by getting rid of useless developers and optimizing ways of working, we are bringing in LLMs to enable the incompetent developers to do even more damage.
Companies don't train or mentor for fuck. That's part of why
I hate this industry and really just see programing as means to an end. I don't care if my plumber is an artisanal gluer of plastic or threader of metal.
FWIW my ability to find problems and fix them is accelerated because instead of having to remember syntax for git blame (or wahtever) I just go "hey go find the jackass who wrote it".
My dude, speak for yourself.
And to close this diatribe, I am convinced LLMs will fail in the long term. The hard technical material required to feed them is already running out online and replaced by LLM-generated slop. Even technical books are now often LLM-generated. This will lead to LLMs providing stale, out-dated output, or just experiencing model collapse.
The fact that they're able to see isomorphism in code (how many data structures are there, really?) and plumb in the props that are used for logical whatever or just passed through as well as they can now is something you can just handwave away because you want to be paid to type.
At webdevjob I haven't written a line of code in over a year.
OTOH it's web dev and I hate that shit and someone telling me to be a calligraphy master for javascript is a faggot.