The biggest issue is that it presents status as if it can be conferred independently of power, or as if we can change the dynamics purely by changing the way we think about this.
Managers have power for many reasons - they generally do have a significant influence over subordinate’s career prospects, and they have access to all kinds of organizational information that ICs simply can’t obtain, at the very least because they can usually spend time in conversation with other managers or in meetings with people at higher levels in the organization.
Engineers obtain power through indispensable or highly valued domain expertise or institutional knowledge.
Both forms of power are real and confer status.
If you move from management to engineering and your power as a manager is not replaced with corresponding power as an engineer then you have been demoted in status, irrespective of how the organization claims to value people.
Organizations that want to deny this, even with the most positive intentions end up gaslighting their employees. I.e. saying things like “Our organization doesn’t see these moves as a demotion”, when manifestly the individual’s power and status has changed in a way they and everyone else can directly perceive.
At a bare minimum a manager can summon their underlings, they will come and listen because they depend on him for promotions and have to make a good impression.
Try to get your teams or coworkers to do some tasks as an engineer. You will quickly realize you have no power.
Then do the same thing as a random employee. See the difference in how much of your team doesn't show up and absolutely nobody from the other team across the corridor comes.
And then do it not as a random employee, but as the senior employee who isn't technically anyone's manager but who is known for having saved the last 3 major projects by pointing out pivotal details and coordinating with other teams, and observe that everyone who's worked with that person shows up regardless of the org chart. YMMV, but let's compare apples to apples.
Too bad it's only a handful of people.
Well, maybe less than a handful because most of the people you saved in the past 3 years have moved on to another company or another role. They're not here for you anymore.
However the manager got that power instantly since the minute he joined, by virtue of the position. It's not an apple to apple comparison indeed.
What's really fun is when you can make a bunch of managers super nervous by mentioning "You know, we should re-org this." and this can trigger all sorts of shit.
What you describe sounds totally dysfunctional. If someone is calling a meeting, I assume it's for a good reason from their perspective (even if I think the assumptions they're making are dumb or something).
If the meeting is something where I'm needed, I'll attend, whether it was scheduled by the newest hire or the CTO.
If it's not, I won't, etc., etc.
If you're an IC that is providing clear & visible value to upper-management you likely wield more power than you think.
My assumption is that upper management doesn't want to admit they've made a mistake in hiring their subordinate managers. And all of this just goes to reinforce the existing power structures.
Avoiding situations like this is why we praise failure. When someone says “I made a mistake, this is what I learned, and this is how I will avoid making the same mistake” I give them much more respect then when they are just accepting bad outcomes.
Edit: And when I work with someone for longer than a year and they haven’t claimed any failures I assume they are either covering them up, not noticing them, or not engaging in risky enough behavior.
Managers should also be in charge of morale and motivational management. Some understand this and are good at it, others don't and aren't.
Respect, too. I've lost count of how many times I've been stuck waiting for somebody in the network group to grant me access to some resource I need to do my job until somebody that they actually respect (that is, a manager) tells them that they have to.
Though arguably the manager should have arranged for an easier process if this happens more than a few times.
There’s a difference between needing to ask for access to shared resources and asking for someone else to do work. So many corporations silo there teams so deeply that PRs from outside members aren’t even considered. Collaboration isn’t given anything more than lib service.
If you're legitimately concerned about internal adversaries you start by finding and catching them. Once you've set up effective mechanisms for doing that you can start to introduce stricter controls around sensitive data/operations based on what you've learned about how your internal adversaries operate. You use a light touch when doing this, because you understand that every extra control you put in place introduces inefficiency into the organization.
I feel like at very senior levels, you can't really say "it's not my job". You're looking out for the whole organization, not just your direct team, and it's your responsibility to help everyone move ahead - even the ones who don't report to you.
If their job is to manage access, it slowly morphs into "controlling access" and then "wanting justification in granting access" which is not the same thing. There's no benefit to someone pointing this out for a long time. Eventually (hopefully) this perversion is identified as the cause of why processes went from efficient to gridlock, grinding a large company to a halt.
If they're on the network team, it's literally their job description to make sure everybody has the network access they need.
None of these are directly relevant to the power imbalance.
Apparently this is how Valve does things. I've heard Gabe Newell say in an interview (that I can't find right now) that often times the management role is given to the newer employees. They see it as a big honor at first, but by the end of it they're pretty happy to go back to engineering and let someone else deal with the responsibilities of management.
There's certainly SOME PEs that go deep in some areas but the majority I've worked with are broad owners of technology in large organizations. The difference between the two roles often has to do with what balance of time you want to spend influencing others for broad goals vs. building up jr. folks to accomplish your team's goal.
In either case your authority is derived from whether people "under" you want to work with you. People who can't get a set of people to go a certain direction won't last long in either role.
I've heard that if you abuse the dog, you can get charged with assaulting a superior officer.
People refuse promotions all the time because they don't want the role/responsibility and prefer other stuff besides money. Doesn't mean it wouldn't have been a promotion.
To be clear, that's not necessarily bad.
Imagine your boss coming to you to congratulate you on your promotion, and then mentioning that your pay will be reduced by 10% because now you're management. How'd you feel about them calling it a promotion?
There. Fixed it for you.
The real issue is that there isn't one, single right answer about what role is right for everybody.
It is not the case that being a manager is strictly better in every way for every person. That's the assumption that people need to let go of.
Its not an assumption, its a fact that managers everywhere on average get paid more than IC.
Unless you are working for a non profit or some cutting edge change the world stuff. Why would you work for less.
Because I am more than comfortable on my engineer salary and being a manager would make me miserable.
As an interviewer, seeing somebody whose last job was in a management role apply for an IC position is a warning signal for me. Do they just apply for that position to get a foot in the door (especially for a move to a FAANG), and will they immediately angle for a move back to management?
So this is generally an area where I would ask follow up questions (and probe a bit harder in the technical interview, to assess whether any rust has crept into the technical skills). It's not an automatic red flag; we've hired former managers for IC roles and it worked out, and leadership ambition can be a positive in any role, but it's worth some exploring.
The big problem is that it is the VPs and directors who are getting together and deciding what everyone should be paid. And, lo and behold, somehow, they almost always decide that VPs and directors should get paid more than database engineers.
Leaving aside whether the different positions are better/worse, easier/harder, etc, the higher you go, the more influence your decisions have. The engineer, if he does his job well, might be responsible for a few features and best case, be responsible for part of the revenue, and worst case, waste the time of a few engineers. The director, being responsible for perhaps a whole product, is responsible for a large portion of the revenue, and can waste the time of several dozen people if he doesn't do his job right. The VP, responsible for lines of products, can waste the time of hundreds of people. And so on up the chain. As an engineer, implementing the wrong feature probably won't get you removed from your position. As a VP, choosing the wrong product line can definitely get you removed from your position. And this is in addition to the increasing need to be able to negotiate with internal and external stakeholders to get increasingly larger scope of things done the higher you go. It's high stakes, high reward, and that's why the compensation is higher for those who can demonstrate that they can make a significant dent in the bottom line.
In theory. In practice they'll blame someone else and use the information they control the flow of as proof. Politics matters more than ability to improve things overall. The Director who gets promoted is the one who saves the VP's backside in the previous example and not the one who increased revenue five fold.
People rarely demand what they are worth since they usually value security over maximizing income, but if you are familiar with the numbers, then you are in a much better negotiating position.
People should always keep applying to jobs, even if they don’t intend on accepting them just to keep a pulse on the value of the labor they are selling.
I can't get past the gut feeling that essentially the model hasn't changed for thousands of years: wealthy owner, boss with whip, wage slaves being watched over.
I mean I imagine a group of people who are actually competent and intelligent working together. Some people would have more seniority and power, but everyone is actually a useful worker there involved in the day-to-day work.
I feel like most managers I have had have spent the majority of their efforts trying to pretend that problems don't exist and reduce the amount of actual useful engineering work in order to push _anything_ out faster and cheaper. Or just basically telling people to hurry up.
That's why I think we had the Boeing crapshow. The guy at the top was actually good at doing what management actually is for most companies, like I described above. He avoided doing real engineering and got a product out. And then hundreds of people died. And still they tried to blame the engineers.
It actually comes down to a class struggle for me. Parasites without integrity have managed to work their way to the top while feeding off of the honest workers below.
Sorry I know it's kind of extreme but I am just being honest.
- you need project management. It is an administrative work.
- you need people management. You can leave that to HR, they will do a very poor job, so it's better to have a person from the team fill that role, the more senior and experienced the better. This is admin work
- you need to simplify large organizations into smaller, manageable teams that can focus on items they can swallow. You need team leaders (for the 2 reasons above) and good communicators to keep the team in sync with the rest of the company
- when you have many teams you need "teams of teams", that is one or more management levels.
In any army you don't have management, you have a chain of command. You have generals with a strategy and a vision, you have officers that lead portions of the army, you have NCOs that lead small teams and you have specialists or riflemen that do the grunt work. They all have a role and in most cases you find the higher the rank, the higher the competence, otherwise nobody would follow in battle an incompetent officer (or even shoot him in the back, it's easier in a battle than getting rid of a bad manager in the office).
This hierarchical organization came from real needs and stays there because the need is still there. You can argue some hierarchies gets corrupted, in theory all do, but a hierarchy is generally better than no hierarchy whenever the group is large enough.
In smaller teams everyone talking to each other and building a shared vision can be quite sufficient. It's indeed common to have startups that have very flat organisation, they might have a designated CEO that's in no actual way above the others. They can be plenty capable of producing amazing results despite the small team size.
However such a small group can't handle larger challenges, like designing and building a commercial jet, they will need many more workers. 1000 workers can't just come together and agree on a shared vision, even ignoring the square law of communication paths just giving each person 10 minutes to present their view would take weeks. Hence, in the very least we will need some communication hierarchy to allow workers to do their job while still synchronising with relevant other teams.
However, just communication is not sufficient, coordination is also important, if the jet is going to have the appropriate range, fuel tanks, engine efficiency and packing density needs to be designed to provide that range. Again, this would take quite some time if everyone should be involved in the process.
This is mostly in the leadership side of course, but covers those who are attentive to the trade off between security and deadlines. It's not reasonable for the individual engineer to be solely responsible to make that tradeoff. In particular, a sloppy engineer might think security is not important at all, and another engineer might think that no risk at all is acceptable to the point where nothing can ever be produced to achieve their standards. It's leaderships role to make sure that standards are aligned between engineers so we don't get a ten year delayed jet with some key parts made out of brittle plastic.
Now, managers can also have a people management role, and tom me those are the ones responsible to keep me as a worker happy and productive. They are also there to detect when some area is understaffed and find solutions to such issues, eg. talking with other teams for assistance, recruiting, decreasing scope, etc. If they weren't there, this job would fall on each individual worker, who would have to go out hunting for support instead of focusing on their actual tasks at hand.
What the Boeing leadership did (not an engineer) was actually to insist that the engineers NOT engineer a new aircraft meeting the new requirements but instead to kludge together something with the minimum changes based on the outdated design so that they could save money and avoid thorough testing.
The reason I use strong language is because the extreme failures of leadership dictate a realistic and honest and strong reassesment. The part that was inflammatory was when those outdated aircraft with oversized engines crashed into the ground and killed hundreds of people.
Certainly management happens in those areas, but I believe that as your career progresses you would naturally be expected to take on more management activities - there isn't a dual track in quite the same way.
In more recent times the waters appear to have become muddied somewhat, with the appearance (and glorification) of administrators, project managers, 'CEOs' of various kinds.
The people in those roles should influence those things, sure, but not “own” them, under some faulty idea that management doesn’t lead or own strategic and technical roadmaps or execution.
An engineering manager is someone who takes inputs from their immediate team or staff, as well as cross-functional stakeholders like product managers, directors, staff/principal engineers, and more. Then you synthesize that into team or org investments: projects, roadmaps, staffing, resources, tools.
An engineering manager is not someone who “just executes 1-1s and fills out HR feedback cycles.”
They are more like a staff engineer or architect who takes an expanded point of view to include team dynamics, career growth, budgets, strategy and resources into the solution design process.
This often just is a promotion above staff or principal IC roles because it usurps and supersedes a lot of that work while also involving additional new work managing career growth, hiring, training, resource investment, etc.
I’d put product manager and engineering manager at the top of the promotion pyramid (excluding director / VP / executive roles). Staff and Principal ICs are next, then the rest of ICs.
First line managers rarely have the power to simply fire on a whim. There has to be cause, and it needs to be evidenced, and there will be multiple people involved in the decision.
If you're a more senior engineer, you may report to a manager of managers, and line managers may be your peers organisationally, and probably not paid as well as you are.
Engineers also get to make a different kind of decision to managers; and it's often the longer term, higher leverage, more strategic kind of decision. Line managers are much more operationally focused and rarely have the bandwidth or tasking for strategic decisions.
Doing this well requires,
- requiring internal service suppliers to be (internal) customer driven. Too often however things we'd never put up with an external supplier we'd pay money for are tolerated and even protected by management. Internal suppliers are required for use. It's hard to fire them.
- cross functional management: reduce silos. Again my area and your area might be "clean" but users of both of our services are often left to die in the crummy alley way between our groups. That's a major source of frustration for engineers.
- promote openness and honesty: there's too much happy talk and PC correctness at the office.
- supply chain management: engineers are often confronted by too many point solutions that don't integrate. See above points. Managers need to cull and combine supply chains time to time.
- be customer in not supplier out. Older companies often have organizational norms where what can be produced is more a function of what internal politics allow or company culture tolerates than what customers want. Managers need to be on top of this.
- top management needs to give TLC to middle management perhaps the toughest job. Here they (middle mgmnt) cannot micromanage while they are held accountable for broad corporate goals like lean organizations, top line growth, reduce expenses, and better expense control. They neither are hands on nor are too far from the real work to be too abstract.
- teamwork (see schutz's human element the best single read on this) namely that ridgid individuals are the single fastest way to break teams. Today's work depends more than ever on good teams.
When managers do above well it's a pleasure to work with them. It's a difficult task.
That is power.
Simply make all such decisions open, transparent and democratically elected - in other words have employees vote.
We live in a world where we value democracy but spend our working lives in autocratic dictatorships.
Yes Coase and efficient allocation, but really I think information revolution is changing that equation.
Democracy in companies now! Struggle brothers !
It's basically worth nothing at net now.
And it was the great poster child for brilliant management decisions - that take any industry and run it using GE managers and allocate capital the GE way and it will win.
Turns out not so.
This is the lesson of history - great Kings and Emperors really do make great world beating decisions. But anything less than great leads to disaster whereas parliaments don't do great but they do keep growing and managing well for centuries.
We need to stop relying on great CEOs and kings and look for ways to run a company well.
PIRC has lots of research on the central founder risk to long term value.
but just ask this - imagine Elon Musk retires tomorrow. Do we want to hope we hire his clone or do we want a strong driven community of engineers to keep knocking out battery improvements for 2 decades.
I know which one i want my money in, and which one will make better headlines.
Agreeing on a problem is not the same as agreeing on a solution.
Just to ask, what solution have humans found to replace dictators and kings apart from (weakly or strongly) elected parliaments ?
Rome had two consuls (or three), but I am not sure that's a big step beyond one.
I just think we need to find the right ways for democracy to evolve not just chuck it in the bin :-)
Can you find even one example of where it has? The closest I am aware of is Mondragon, but Mondragon has almost no direct democracy - voting is for people rather than decisions.
Perhaps we can take heart from the media - https://www.ft.com/content/afe3386e-d3bb-11e4-a9d3-00144feab... - The Guardian's editor was appointed following an indicative vote from staff.
But I would suspect that appointed leaders and elected policies will be a much easier sell than the other way round. Any leader can happily say they always agreed with a policy forced on them. It's much harder to say you agree with them firing you.
And I shall have to do some more research. Thank you for pushing
Although Trump could then claim that 11M card-less Mexicans who have not left the USA in November were actually voting for him, which would give him California in the Electoral College.
In the end I do not see a way to imply someone's vote - one needs to actually count their vote in the normal way.
I respect your position but I remain convinced that some form of democracy is needed in corporate life.
It’s also worth mentioning that there are democratic workplaces.
They are called cooperatives.
Another example: https://en.m.wikipedia.org/wiki/John_Lewis_Partnership
Relevant questions seem to be - why are they not more successful or widespread?
Also, have you considered working for one?
Relevant questions seem to be - why are they not more successful or widespread?
The co-op store (similar food john lewis) sprang from the mid victorian co-operative movement where different models where tried out by wealthy philanthropists who essentially gave back huge amounts of their wealth to their workers
I think that last sentence shows why it is not more widespread - perhaps we simply need to force companies to become co-op/ partnerships at a certain state of growth?
But this seems interesting for the actual last sentence
A manager at a previous company kept saying that his role was to support engineers and that management was a separate track, that he wasn’t my superior (probably from some internal training BS). He acted completely the opposite way. He obviously wielded more power by having more information, and, to add insult to injury, played tech lead as well.
Suffice it to say, over the years almost all the original ICs have left his team, and he’s still wondering why he can’t get the team to run.
I sucked it up and worked as an IC for while and realized that, after 20 years, I have little interest in writing code for a living any more. I truly enjoyed the strategic and personal growth aspects of managing, so I left that company and have only taken manager roles. I find managing to be much more stressful, but supporting my people through these trying teams has been a highlight of my career.
I moved back to IC when they finally posted an opening to backfill my job. I went to my boss and said: "I can be a mediocre manager or a great engineer, you choose."
Later on there was a big reshuffling of the department, and I was asked if I wanted to be a manager. I said yes. More reshuffling thinned my team down to 2 reports, and I kind of oozed my way back into IC by just doing IC work for people when I wasn't managing.
All of these moves were promotions in both pay and title.
One thing you learn by being through a few annual cycles at your business is how it really works. For instance, things like performance reviews, pay increases, promotions, etc. This knowledge will serve you in any career.
In every organization I've ever worked in, project management was very different than management management: project managers never ended up actually "managing" people as in hiring, firing, budgeting, setting direction for, etc.
You have people who were managing several (5-80) engineers and technicians at a manufacturing plant, refinery, or other operational location, move to corporate and become an IC in various capacities. Some become advisors to senior mid-level, or VP-level management, or take on more commercial IC roles. They'll do those roles for a couple years and then rotate back into management in either their old orgs or the new org.
I know of quite a few teams where there is a high level manager and an equal level IC who report to the same director. They're both responsible for the same scope of work, (and this is oversimplifying) just one is responsible for the tech and one for the people.
My contributions are 50% personal, 50% "team acceleration" (ie: ensure your teammates are able to get things done quicker including pairing, code walkthroughs, documentation, last minute team changes to ensure a project succeeds)
That is, a manager can "create more than any individual contributor", but most of them don't.
Simultaneous promotion and demotion.
The fact of the matter is this, management _is_ a promotion, because you get paid more and you gain access to more powers. If it were _not_ a promotion within the company, no one would take it up.
Management is a simple deal, you give up power _outside_ of the company for power _within_ the company. It is far easier to join another company as an Engineer than it is as an Engineering Manager.
However, I agree that it should not be. It should not be there to create a sense of hierarchy. This is why, I believe that you should rotate your managers _within_ the team. Back at my old company, we had people who would go into a Team Lead position for a certain project, and then someone else would take over.
Pay was already high, so no one really wanted to take up lead because it meant more responsibility.
This is how power needs to be treated, you should not have it for too long. This is why we have term limits.
Disagree. It's a different job, not a harder or easier one. It's just a lateral move. Some people are better at managing people and projects, and some people are better at doing engineering. A lot of managers become managers when they realize they're a medium tier engineer and they're honest with themselves and realize the future is stagnation. These managers tend to be the better managers! They have more empathy for the tradeoffs that are occurring.
That being said, where this is partially true is that it's certainly easier to move up the ladder as a manager than an IC, in my experience. There's just more jobs to be had.
Also managers can’t force anyone with any experience to work longer hours through force of will. The people who have power in an organization get it through building relationships and building a reputation.