I get the impression that many small companies instill a no-management policy because they had experiences with horrible management. When large companies (Zappos) restructure with this goal, it seems like a well-architected recruitment plan.
So, are there any objective reasons that managers/bosses/hierarchies are bad?
https://en.wikipedia.org/wiki/Peter_Principle
TLDR: People who are good at their job get promoted. But once they are mediocre at their job, they stop getting promoted. So you have a bunch of middle managers who have all risen to their maximal level of incompetence.
> In many cases the least competent, least smart people are promoted, simply because they’re the ones you don't want doing actual work. You want them ordering the doughnuts and yelling at people for not doing their assignments—you know, the easy work. Your heart surgeons and your computer programmers—your smart people—aren’t in management.
One way would be for teams to vote (or better yet form a consensus) on their next manager for each new project (or project step). So anyone voted up as manager always knows the job is temporary, unlikely to be 100% of the time even if they are a good manager. It would push managers to be leaders (i.e. coordinating others to get the best from everyone), as apposed to directors (telling everyone what to do). It would also push everyone to continually think about management of their project from a manager's perspective.
That's my idea, but it would take a lot of experience to know whether it would work, or how to make it scale or sync with other types of management for higher levels of management. Maybe after someone has had a string of management successes at a project level they could be voted up for multi-team management, etc. And new management hires, would have to be vulnerable to being not voted in as managers the next time around, which would put a lot of pressure on them.
TLDR: Management should be a flexible role based on each project's needs like any other team role.
I can easily see a good manager withholding crucial information because they didn't realize it was crucial (or think that the development team would have time to take it into account), a developer accidentally shipping a broken build late at night one time, or a salesperson selling something that doesn't exist (but getting a better understanding of what customers would pay for as a result).
One mistake does not mean that you are overall bad at your job.
My manager when I was in design engineering was really really smart and would help me solve technical problems. My boss on during the embedded Linux project knew how to Get Shit Done. He was more people savvy and taught me that navigating a large bureacracy is a skill (even though it shouldn't be). It's tough a lot of times knowing which approach to take to gain organizational buy off to allow technical teams to progress forward.
I will note that my Get Shit Done boss has vouched for his direct reports and has won for us on many occasions.
I believe all aspiring and current managers should heed Peopleware.
In summary of Peopleware:
"Almost all project failures are due to sociological problems"
"Most managers are prone to one particular failing: managing people like modular components."
Many managers of technical people are not technologists, they're professional managers, and have no clear skill sets. There's not one useful thing they can do incredibly well that not everyone could handle. (This the ONLY reason you can make $100k in the US by just writing code, by the way, many people can't handle, nor want to handle, programming in C++).
They do have "Managerial Experience", and that gets them hired, even if they suck.. bad.. Even over the incredible technologist.
In their defense however, I would say the very good non-technical technical managers I've worked with, they know nothing about tech, but are so smart and savvy that you could throw complex stuff at them and they know exactly what you're talking about. They protect their people from political bullshit, defend them to outsiders when needed, sometimes hear out the occasional programmer temper tantrum, and schedule the work. That's where they add value.
That being said my boss is a non-technical manager who does a great job of making sure, internally, we are all communicating when we should be (but for her we just wouldn't know what each other are doing for the most part). She brings to our attention work that falls through the cracks. She makes sure we have the resources we need, mobile devices to test on, laptops when we need them, the latest and greatest software tools; photoshop, zendesk, salesforce, browserstack, ect.
She facilitates hiring new team members or even create new positions if we as a team express a need. This is not fun by the way she has to interview and bring in people constantly, which 95% of the time we end up rejecting.
Honestly she is there to support us and champions us every chance she gets. Our client support is far better having a manager directing our team, which translates to value for the company.
Granted I'm sure not all managers work in that way.
A good manager knows his people, their skill sets, and how they work. He knows what work he can give them, and how much and what kind of supervision they need.
Like this; Ann needs only to be given a goal, and guidance. Bill works best with a daily walk-by. Charles needs constant and close supervision.
He will be able to tap dance with _his_ manager, explain what his people are doing, and why, and run interference as needed between 'management' and 'politics'.
Most of all he knows _people_. He may not know exactly what Bill is going on about when he talks about 'fsck' but he can tell when he's being bullsh*tted.
A bad manager can't do any of that.
1. Out for themselves
2. Trying to manipulate credit and blame
3. Trying to manipulate hiring
4. Trying to manipulate compensation and promotion
5. Trying to get between makers and customers to leech money from both
6. Creating artificial problems to 'manage'
7. Roadblocking and gatekeeping
If someone said that in order to be allowed to produce products for a customer you have to pay ten levels of management millions of dollars to oversee things that don't need to be overseen, you would call that racketeering.
I think managers are being scapegoated as you say. I'd dare any company to get rid of their management and see what really happens, not just pretend to like Zappos.
Hopefully this is a fashion that will blow over like all the rest so people can get back to trying to work together to create something useful, rather than trying to blame others.