AI: From Craftsman to Engineer?
As a software developer, you typically and traditionally combine the roles of designer and implementer. You design a solution, in dialog with the problem, yourself and others, and in so doing, implement it in code.
Until recently, it was rare to design some software and then hand over the implementation to someone else, at least at the level I typically work at - maybe you'd ask a junior developer to help out with some of the work, under your supervision. Since it's me that is actually doing the implementation, I don't need to design out all of the details, as long as I've got plan to make my an implicit constraints explicit in the built solution. To me this feels like 'craft' where one person would take an idea from its conception through to the finished artifact. A barn, a boat, a carriage.
In the physical world, by contrast, an Engineer (often with some kind of certification) designs something and then hands the design over to someone else to implement - whether that's in building construction or making cars or laying out a garden or whatever. A separation of roles that requires the engineer to be much more explicit regarding the constraints that the solution must satisfy.
With AI, I'm finding that I'm spending more time on design work, effectively working more like my Engineer above than the craftsman I feel I've been over the past few decades.
I have a mental bet with myself that gains from AI will turn out to be 90% from the design work required to make AI usable. When people describe the large amount of breakdown and design they have to do to let their agents run it feels like that work would also have made it easy to do yourself.