I think it's also a direct consequence of scale and the commoditization of most software.
You can't have people on a team of 10 all going in their own direction on their own schedule. It's too unpredictable and there are deadlines and contracts to fulfill. And for most commercial software, I don't need the team to research how to do it. We know exactly how to do it. We need the team to execute the plan.
It absolutely sucks, but that's the reality of most coding jobs. At least in my experience.
You can't have people on a team of 10 all going in their own direction on their own schedule. It's too unpredictable and there are deadlines and contracts to fulfill. And for most commercial software, I don't need the team to research how to do it. We know exactly how to do it. We need the team to execute the plan.
It absolutely sucks, but that's the reality of most coding jobs. At least in my experience.