I've worked at several companies now, sometimes in a management role. In my experience it's always a shitshow filled with people making things up as they go.
One key difference is culture. Some cultures punish candid honesty which leads to reasonable people resorting to politics and blame games.
Not sure how to spot this when you're applying, but good culture seems to be correlated with competent and respected technical people in upper-management and lots of devs/engineers with a long tenure.
My most negative experience has been with business school grads, meaning BComms with MBAs whose experience is in the finance or accounting departments. Seems the culture is about doing what you're told and CYA rather than critical thinking that come from a solid STEM background.
It reached the point where I now believe any BComm who wants a leadership role should first spend 3 months shadowing the cleaning staff. Once that person convinces the staff they're capable of not setting anything on fire, they can be allowed to mop the floors for the next 3 months. So on through the organization until 10-15 years later they're deemed qualified to think independently and understand what taking responsibility means.
Again, could just be select negative experience, but it's what I've noticed
I have had both good and bad experiences with MBAs and other business school grads, but I could say the same about STEM folks. I agree there are major cultural differences (i.e. BS from engineers takes a totally different form from BS from MBAs) but I think the more salient problem is if your management team consists of nothing but a single background.
If a tech company is run by business and finance folks it can become unmoored from engineering realities. But a tech company run by engineers and scientists can become similarly unmoored from business realities. In my experience, companies that promote well-respected members of their key disciplines into senior management roles seem to be the least dysfunctional.
One key difference is culture. Some cultures punish candid honesty which leads to reasonable people resorting to politics and blame games.
Not sure how to spot this when you're applying, but good culture seems to be correlated with competent and respected technical people in upper-management and lots of devs/engineers with a long tenure.