Ever wondered why there is all this bullshit around getting developers to write code? I mean sprints, standups, code review, detailed estimations and planning, endless navel gazing about productivity, yada yada.
When you hire a builder you don't micro manage them like this. The builder gives you a quote (which will probably inflate a bit) and then does the work (all going well).
What about this: people that want software written ask for a quote for the work. The developer inspects the job and provides a quote. Why doesn't the industry work like this?
I think there are several reasons:
If you are a builder you need to know the technicalities of a few domains. To contrast, if you want to be a software developer that can take on any job you need to get a wide range of domain knowledge.