Working regularly with AI is like managing a small team of unbelievably knowledgeable, very smart, and occasionally crashingly naïve junior developers. Because they're so knowledgeable and smart, they can get a lot done very quickly. Because they make a proportion of howling errors, you have to keep a close eye on them -- or carefully train another agent to do it for you, in which case you now have to keep a close eye on that agent as well.
So, overall, you get more done that without AI, at the cost of spending almost all of your time writing specs and doing code review and almost none of it writing code.
Do you get 3.3x the work done? Probably not. Do you get 2x the work done? I think maybe, if you can hack the dynamics of the new job as a manager of eager robots. For me the jury's still out on the second point.
I get the feeling that either I'm using LLMs wrong, or everyone else is.
Outside of enthusiastic use of Tab and some one-off scripts, I don't really tell it to write code. Instead I ask vague questions about the codebase and its inner workings.
Reading other people's code has always been my Achilles' heel - particularly if it's a huge project and has a lot of undocumented conventions. LLMs are brilliant at explaining this sort of stuff.