You let this happen
More than you know. "Professional" project management is just as to blame for the joke that is modern software. My first job out of college, 25 years ago, I was working for the government. I was basically paired up with what we would call a "business owner" in today's terminology: he described what he was thinking, I'd implement something, we'd review it, he'd suggest changes, I'd implement those, sometimes rewriting entire parts of the system, he'd suggest other changes, back and forth. We were both professionals, we both knew what we were doing, we both trusted each other and - here's the part that modern project managers can't comprehend: we treated each other like professionals. If I spent a few days or even a week figuring out how, say, TCP/IP (which was sort of a newish thing back then, at least for personal computers) worked, he wouldn't insult me by demanding a daily status report, or demanding that I break down my tasks in one-hour increments, or insist that I go ask Bob who "knows that stuff". I, likewise, wouldn't insult him by bitching about the fact that he forgot a detail a month ago that was going to cause me some re-work: because neither of us were being insulted by a project manager who insisted that the product, regardless of quality, had to be finished by some arbitrary date because he knew, in his heart, that if he didn't keep his oppressive bootheel on our necks every minute of every day, that we would just sit around all day playing video games and wasting time. In essence, we respected one another and were respected by our employers.
But then came the software project managers. I don't know if a couple of guys peed in the pool for all the rest of us, but within ten years I found myself punching a card like a factory assembly worker. There was a glimmer of hope in the late 90's when "extreme programming" started to take off, which was based on this same underlying model of treating professionals like professionals rather than fast-food assembly line workers, but extreme programming became "agile" which became "scrum" which is the most offensive possible way of viewing the practice of software development as semi-skilled bricklaying.