> Two Tracks / Becoming a manager is not a promotion
To any young engineers who may be reading this, this is social fiction. If someone can fire you but you can't fire them, you better believe you're not on parallel tracks.
EDIT: it's not just firing. Managers know your compensation, but you don't know theirs. They'll all work to split their team into multiple teams so they can say they ran a group; the good ones will soon become managers of managers, and then managers of managers of managers. They'll sit in on senior meetings, work on strategic decisions, and you'll watch them rise further and futher in the company hierarchy while you're enjoying your "parallel track".
I think a lot of responses to you are missing the point. Managers have more autonomy and more control.
You may get paid the same while working as an individual contributor, at least for a while, but over time your power in the org suffers a slow decay.
For example, you may not be able to direct your work towards that which generates the most revenue, people you passed on in the interview process suddenly appear next to you and you're required to mentor them, projects that seem dumb get assigned to you from on high without your input, compute resources appear or disappear from under your control, etc.
It's like death by a thousand cuts. And in my experience, the only way to actually get paid on this track over the long term is to create something so valuable that you are the single point of failure.
At least for programming, the only real 'Individual Contributor' career track that makes any sense to consider is one where you're a lead developer, that is you still code, but you manage a team of other people as well.
An IC can definitely have and maintain more control than managers, they just need to produce visible value to the company.
I've seen multiple ICs with more power than their direct manager. They are basically immune to being fired because higher-level leaders understand their value and respect their track record.
Were those higher-level leaders managers? I mean I agree with your exact statement, but in my direct experience, the higher-level leaders tend to be less and less engineers.
Unless there is some power of the purse-strings, the two-tracks thing is always going to be biased in favor of the managers.
That's the beauty of working in a tech company compared to a non-tech company. Every single manager in my org is a former engineer. Every single manager above them is a former engineer. Heavy majority of directors in the org are former engineers.
I feel like that's really gonna depend on what part of the tech sector you're working in.
In the world of early and middle stage startups, you're probably right. However, in massive tech companies or more legacy-type tech companies, it seems like you're a lot more likely to find managers who are trained as managers and not engineers (MBAs, etc.)
I agree with you in general. However, my specific experience with this comes from working at one of those massive tech companies. And there are definitely orgs within the company that fall under the "MBA-types-running-the-show" umbrella, but, I think, I just got very lucky with my org.
Yeah, the experience probably varies a ton across the industry and even within orgs. I'm sure most people around here who've been in tech for a while can tell stories about both types of company.
> they just need to produce visible value to the company
Many specialists don't get this opportunity and require certain character traits to go out of their way to make it known. If they maintain a key product but don't need to interface with group of people often, then they get ignored for "employee of the month" and other accolades that would translate into more clout
At my last company, I went through three managers in the 3 years I was there. The last guy in there, I was comfortable enough in my position to make a statement. At the time, I was getting into the office around 10 and leaving at 3 or 4, basically whenever I felt like it.
The first few days, I stayed until a couple minutes after he left, to let him know I supported him. Then one day, I walked out with him. He looked at me and said, "but you got in at 10." I looked right back at him and said, "I know. I stayed late the last few days in case you needed me." Then it was back to old habits.
He was going to need all the help he could get to manage the political situation. In the end he couldn't cut the knot, he left not long after I did.
Something about this comment really unsettles me. I can’t tell if it’s thinking that what was a “statement”, if it’s the underlying attempt at some lame kind of power play on a new member of your team or if it’s something else entirely.
What I'm reading in it is that the poster is a lot more comfortable in their position than the manager, knowing the manager is under a lot more stress and pressure than the poster themselves. After you've seen a few managers start and leave you kinda get the picture.
More or less. It wasn't intended to be malicious. I made it known I was there to support him in his Herculean task of moving the needle with his department with this wholly intransigent political environment. But I'd already spent some 2 1/2 years building up goodwill and clout in the company and there wasn't going to be any bowing and scraping.
Any ideas he had were welcomed but at the end of the day, they were going to throw it all out anyway. I was hoping they'd let me build the new platform, but they picked a consulting company to build them a Magento solution. To recognize my efforts, I got like a year and a half of half-salary to get on the phone if they ever needed me.
The brutal reality is that a single individual contributor cannot, and should not, contribute as much value as a team of people.
I strongly believe in technical tracks and I've seen them work. Every place I've worked had technical positions that are peers to managers, at every level. They worked alongside managers, and did not report to them.
Progression on both managerial and technical tracks requires skills in leadership. Whether that is people leadership or effective technical leadership, the principal's are the same. You need effective communication, clear articulation of ideas and an ability to influence and lead.
If you focus solely on your technical skill and implementation ability, then it is going to get harder and harder to progress. At a certain point an exceedingly skilled individual starts adding less value to the team they are in, unless they can demonstrate real leadership.
I think the difference is between organizations like square, and those that aren't.
I work at an organization like square. My manager could probably fire me. Not today, but should he desire he could manage me out, at least of his team. I have the autonomy to move elsewhere.
But I am working with ICs right now who have more organizational I influence than my manager. Certainly he decides the priorities for his direct reports, but these ICs influence the priorities for our organizing as a whole, much more strongly than my manager does. And he certainly can't fire them.
So sure, my manager is senior to me, but that's because he's senior to me. There are equally, and more, senior ICs in our org who he has to defer to in practice.
Yeah. These are all things that happened to me as an IC over the last 13 years. I'm jaded.
The best thing you can do, if you find yourself replacing whole teams of people due to your experience , is to start your own company or be the CTO of a company.
That sucks though, it's high risk, low reward. The safer bet is to just be a manager.
> to start your own company or be the CTO of a company.
In which case you’d be a manager. There’s no getting around the value multiplier of making other people more valuable. Even traders and movie stars have a ceiling as compared to the people that run hedge funds and movie studios.
Sometimes. I've seen orgs where middle management was not allowed to delegate enough, either by culture or by tools. The net effect was a schedule full of catch-ups and backlogs full sign-offs without much actual input into what they spent their days doing or thinking about.
I'm guessing that working as an engineer at one of these orgs would have been far worse. (Unless it's one of those rare cases where management's so tied up in its own bureaucracy that the tech team gets to run itself.)
I've seen it go both ways. Being able to change teams or projects without a lot of drama seems to help a lot.
Good engineers are always hard to hire, bring up to speed, and retain. Especially ones who want to deal holistically with the existing team and system instead of narrowing in on certain approaches.
Show me how long an engineering manager can live within an organization that where their senior ICs don’t support them. It’s basically zero. Yeah you can fire the senior ICs who won’t take your word as gospel but that’s not exactly a great strategy. You as an EM need to rely on your senior ICs to do both of your jobs. It’s a team sport. And yeah if your EM kicks you to the curb for no reason, no doubt, they’re next.
OK, they can fire me. There are other coding jobs. They move up the chain and have to sit in meetings taking on greater responsibilities while I sit back and code for years, increasing in position and compensation without really having to be more accountable for the success or failure of the business. They probably make more than me, but I just shut down at the end of the day and run around with my kids.
There are far more ways to measure success in life than your paycheck or where you fall in an org chart.
I agree completely. If that's the choice you made in life and it makes you happy and fulfilled, I'm genuinely happy for you. But you can only make that choice if you walk into the situation with your eyes open. I don't like being bullshitted.
Upvoting this. Being a well-paid individual contributor who can work a ~40 hour week is amazing. I was a manager in another industry before I learned to code and I'm grateful I don't have to do it anymore. Having to put under-performers on a plan, being on the hook for work not done during a staffing shortage, trying to keep people happy when there aren't any raises or promotions to offer... if some other engineer wants to take that stuff on and get paid more for it, more power to them!
Your pay as an IC will plateau. It may plateau at a nice comfortable level but plateau it will. It’s a log curve not an exp curve. Younger professionals in the first 5-10 or so years of their careers are just seeing the extreme left of the log curve, where it’s steep, and conclude they’ll get 50% raises forever. Trust me, you won’t.
50% raises are a sign of company growth and a competitive market. Once a business is well established, growing slowly, and there are enough developers to go around compensation will settle down.
We're in the first few decades of Internet technology companies. This is the industrial revolution all over again. If you look at the first factory workers in the early-1800s, and the first steam engine engineers, and the first factory production foremen, they were quite well paid relative to other jobs. Later, when rural folk saw what was happening and moved to the cities and mill towns for work, and the supply of workers boomed, the wages stopped growing (and actually fell). The factory owners made hundreds of millions in today's money. They built towns for their workers to live in (Bournville, Rowntree, Port Sunlight here in the UK). Now Google is looking to do the same sort of thing. Its all playing out in a very similar way.
Give it another 20-30 years and things will look very different in tech.
The maximum upside of the management track is definitely higher but the chances of achieving it are far lower. If your span of control is 8, that means only 1 in 8 of your managers will become a manager of managers and 1 in 8 of those will become a director and so on. Unless you're in a hypergrowth environment, the other 87.5% will struggle to move past the first management rung for a significant chunk of their career.
It also means less job security should one find oneself out of a job for whatever reason. A company needs about 1 manager per 8-10 ICs, and 1 second level manager per 8-10 team managers. Logically, that means there should be about 10% as many first level manager positions as IC positions, and about 1% as many second level positions as IC positions.
This depends on your org. Also there are individual contributors literally and individual contributors who function like a force multiplier and, although not managing, provide a lot of value beyond just their commits. I’ve seen this with wizard architects and sysadmins who just a percentage of their time is great on a project.
“Force multiplication” is an intangible. If your salary depends on it, you’re depending on someone in management noticing that you’re “multiplying the force”, and that you’re willing to leave. It happens, but it’s rare, and usually occurs when people are great negotiators, or such an OG with the founding team that they’re like part of the corporate logo.
For most people, salary correlates with measurable influence, and there’s nothing more measurable than head count. So maybe you’re right about certain orgs, but I wouldn’t advise any young turks to bet on it.
Basically, every nerd thinks they’re gonna be Jeff Dean...but there’s only one Jeff Dean, and his job is taken.
>>> For most people, salary correlates with measurable influence, and there’s nothing more measurable than head count. So maybe you’re right about certain orgs, but I wouldn’t advise any young turks to bet on it.
Basically, every nerd thinks they’re gonna be Jeff Dean...but there’s only one Jeff Dean, and his job is taken.
The point to take away here was measurable influence.
Just as in how sales people can be on commission but no one puts fifty developers on commission the ability to measure is as important as the metric itself
“Force multiplication” is an intangible. If your salary depends on it, you’re depending on someone in management noticing that you’re “multiplying the force”, and that you’re willing to leave.
Most managers don't set their own salary, and are dependent on someone else noticing and respecting their "contribution" (like "headcount" metrics) for their compensation consideration. It is entirely possible to be sidelined as a manager, just as it is anywhere else.
Everyone should have clear, communicated, consistent, meaningful, deliverable, pragmatic metrics that they are subject to in their evaluations.
The “former role is free”? Google is huge and has thousands of managers, so it’s only “free” in the sense that they’re hiring some managers. There’s still only one Jeff Dean.
Jeff was an IC. He no longer is. Under the naive assumptions that many people in this thread are making, that means the IC position he was in should be available.
It's not. I leave why as an exercise to the reader.
Yeah. My boss is a half-coder, half-manager. He can fire me. He gets paid more than me. On the other hand, I don't take my laptop with me on vacation. He feels that he has to. I never feel that.
Completely concur with this. After 10+ years in engineering management, rising through the ranks, I'm at a stage where I don't want to solve people problems anymore. I want to get back to coding or solve problems as an IC. Most companies will need only a handful of VPs, Directors and Managers but almost all companies will need software engineers. As a manager, one has to sacrifice becoming technical and competitive in the market or be the best in their field. Even if they are a really good manager, different companies have different expectations of their managers. Google might want pure people managers whereas LinkedIn might want managers that write code 60% of the code. It's just not worth it though some perks are really nice.
Will Durant puts this very succinctly in "Lessons of History" [1]:
"History reports that the men who can manage men manage the men who can manage only things, and the men who can manage money manage all."
In my experience, a management role has typically come with 10-20% more compensation versus a comparable individual contributor role, but 100% more responsibility and accountability. I wouldn't worry too much about parity between the two tracks, focus on what you truly enjoy doing. Besides, the money guys can fire us all ;-)
Entering a market isn't for the faint-hearted. I got interested in buying turn-key online businesses last week. This way someone else gets to bear the risk of bringing a product to market and you can just focus on cashing checks and helping it grow.
The last time I had a supervisor that wielded actual responsibility and accountability was 1992. aka A Good Boss. Every one else just failed upwards or was cannon fodder for those who could (fail upwards).
As a Junior Power Ranger, I had three terrific jobs. Work hard, do well, get rewarded. Good experiences that completely screwed me for the shark infested waters of corporate america.
Career and compensation growth is a function of scaling your output.
The more senior you get and the higher your compensation gets, the greater the expectation is that you accelerate the work of others around you.
Historically, this has been easiest to do through management. If I make a team of 10 each 10% more effective, then I've effectively doubled my (individual) output.
Software engineering is different than most traditional roles. It offers other ways to accelerate the velocity of others; ways that don't require being a manager.
This is why compensation can be decoupled from management in these roles and why parallel tracks can truly exist in this role.
But the tracks remain parallel only as long as you're continually scaling your output. This takes effort and discipline. It happens more automatically through management promotion (though not for managers that never get promoted to lead larger teams).
This 100%. Having been both engineer and manager, I have to say it is much harder for engineers get promoted beyond the senior level, so pay is going to be higher over time for managers.
At first I thought the solution is that it needs to be a step down: becoming a manager entails taking a cut in pay, a lower nominal role, an increased vulnerability if the team needs to be cut. Make people pay a cost in order to switch to this role.
But a large part of me tells me this would just make things worse. The only people who would opt to transfer to the manager track would be those who are really career politicians, who can take credit for every success but blame every failure convincingly on someone else. Ideally with management thinking all the time that this guy is a loyal contributor and not a politician. This is what seems to happen in practice.
So what can you do? Hire only people who are strong engineers and who don't have any ambitions to management? Hire excellent engineers and mediocre management? This last seems to be the approach of many tech companies. Frustrating though it is for the engineers, this explains one reason companies may go for this approach.
Managers have a lot less power in decisions like firing and compensation than you might think. Note that by "manager" I don't mean the entire management unit. Of course executives & directors have influence, but at a standard software company a staff+ engineer will 100% have more "power" than a regular manager (and will be paid a lot more as well).
I know my team manager can’t unilaterally fire me unless I fuck up in a truly egregious way. But, if I don’t keep him happy, word will get to the people who can start the ball rolling to fire me, and then I’m in deep shit.
An interesting situation is when you become known as so invaluable by higher levels of management that this dynamic gets inverted.
Maybe it just feels good but there's something that feels right about your manager working for you, getting you the resources, answers, and commitments from others that you need. And in return they get to boast all the cool shit you make to their boss.
Is it possible you are conflating positional power with earning power? Your earning power is not limited by staying on the IC track in this setup. Positional power is always dependent on where you are in the organization and what your actual job in the organization happens to be.
That’s not true either. Who’s the highest compensated person at Square? Is he a manager or an IC?
The root poster is absolutely correct. The responses that say you can have a great life without climbing to the top of the highest ladder are also correct, but they aren’t refuting what the root post says.
Also, while things look pretty rosy for senior ICs right now, I wonder how many people lauding that path are in their forties or older. It’s one thing to be a respected principal engineer in a strong economy but what about if we hit another recession and your third wave tech company gets bought out by IBM?
If a company claims to have “parallel and equal tracks” ask them how many VP equivalent individual contributors they have and how many manager VPs they have. Ask then what the CEO-equivalent individual contributor role entails.
This gets pretty tricky at some point, because there are a lot of hybrid people. The "standard" image of a VP is someone who has multiple directors reporting to them, and probably 50+ (really 100+) indirect reports. So what about a VP-equivalent with 5 direct reports who are all ICs? That person isn't an IC, but they're also not really a people manager, they're like a really high impact TLM. Do they count more as the first, or the second?
If you exclude the CEO at many SV companies there are most certainly ICs who make as much as people at that level all over the Bay. Certainly that’s true at Square.
That’s probably true, but there are a lot less highly paid ICs at the top than there are highly paid managers. So yes, you _can_ make the same, but your odds are a lot worse.
I don’t disagree with the imbalance or odds. Impact required to be that highly paid an IC usually boils down to “create the thing the company earns a large portion of its revenue selling” which is tough to do, especially more than once.
I’m not sure I understand what you’re saying. Okay exclude the CEO (why though?), are you saying the second highest compensated person at Square is an IC?
> That’s not true either. Who’s the highest compensated person at Square? Is he a manager or an IC?
> The root poster is absolutely correct. The responses that say you can have a great life without climbing to the top of the highest ladder are also correct, but they aren’t refuting what the root post says.
> Also, while things look pretty rosy for senior ICs right now, I wonder how many people lauding that path are in their forties or older. It’s one thing to be a respected principal engineer in a strong economy but what about if we hit another recession and your third wave tech company gets bought out by IBM?
I was with you until the very last part of the very last sentence. In my experience, often times where there is management duplication they will trim management (we don't need _all_ of these engineering managers do we?) but keep performing ICs.
That’s true, probably slightly less likely to be fired than a middle manager, though your salary is going to be a juicy target. But if you do it’s a lot less scary interviewing while middle aged for manager roles than it is for IC roles.
Age discrimination in this industry is very real (notwithstanding the tired excuses we see in every thread on the subject.)
People that are in their late 20s or early 30s need to start thinking about this. Right now you’re the age that the industry loves for “senior” ICs but mid 30s come on fast.
This was a major motivator for me going into management. I don't necessarily like the role more, and overall there are fewer jobs for engineering managers than there are for engineers. Yet as I get older (and I'm not that old either) I feel I have much more long-term job security and stability in being a manager.
I mean.. he’s largely at the executive level and co-invented tcp/ip. He is foundational in the development of the Internet so he sort of is an outlier.
> They'll sit in on senior meetings, work on strategic decisions, and you'll watch them rise further and futher in the company hierarchy while you're enjoying your "parallel track".
If there actually is a parallel track, this doesn't happen. Directors sit on meetings with sr. staff engs and principles - directors think about the resource allocation, principles think about the technology direction. The technical track is just management of and responsibility for larger and larger technical areas.
Take a look at most companies, and compare the quantities of director/VP equivalent engineers to the number of engineering directors and VPs. In my experience, there are many many more of the latter, if only because orgs want to build out the org chart and so there's a natural place and need for those roles, and because there are basically default title bumps that come with the increased responsibility.
Sure. But that's not relevant to the argument being had. Growth beyond a certain point in management being easier, while perhaps true, isn't the same thing as claiming that swapping from IC to management is, alone, a promotion.
the original comment said "you'll watch them rise further and futher in the company hierarchy while you're enjoying your "parallel track"", and the comment i replied to disagreed.
the question was about "parallel track", and i don't see how you can conclude that they're parallel: it seems to me that the IC path is circuitous and takes a lot longer to get anywhere on.
put another way: imagine that you had no preference over the work, were equally good as both IC and manager, and wanted to optimize for career progression. you would _always_ prefer management. and in fact even if you'd make a better IC than a manager, to a large extent you'd still profit more in management.
i agree that it isn't necessarily a promotion to move from IC to manager. but it also _isn't_ a parallel track: by moving, you've moved to a track which is much more direct.
This is my experience as a staff dev in an org with this type of org chart. Staff devs are considered lead engineers with no reports and sit in most of the lead meetings.
I always hear about these people but I never hear about the profile of the places that hire these people to do consulting.
Since you mention "Outside of the top of the IC ladders at the giant tech companies" which is about $600k or thereabouts, I am guessing this means they are billing for about $500/hr-$600/hr? So a week's rate is roughly $20k+. What kind of place is paying software engineer contractors that much?
Oh really, I guess I was misinformed. Figured that was closer to 500-600. I hadn’t heard of anything well above $700k or so for positions like “Senior Staff”
I was responding directly to a comment referring to Staff Google engineers. So in response to your goalpost moving question, I guess the percent would be (total number of staff engineers or higher at Google) / (your random estimate of the total engineering population)
I’m sure we are all very impressed by your insider knowledge of the details of a tiny portion of the industry irrelevant to most engineers. For the rest of us Google Fellow or equivalent is a reasonable way to sum up the entire niche.
It's not equivalent, unless you think that getting a job at Google, Facebook, Microsoft, or any other reasonably large west-coast company is a "niche" that's completely out of reach for you. "Staff" is not some unattainable level that only a few people per company are lucky enough to break into.
There’s the patio11 way of doing things which he’s written plenty about.
But there’s also the more classic knows-where-to-put-the-screw consultant. Something is broken and bleeding money and after being jerked around by underlings for a few weeks some director is desperate to fix it.
There’s are many many companies out there that can be losing tens of thousands of dollars a day or more because something isn’t working.
In my last company it was indeed parallel.
A Team Leader couldn't fire a Tech Leader (or have access to meetings that Tech Leaders didn't). They would work in pairs as leaders of a "Tribe". The company shared the average earnings per position, so we could see that the Tech Leaders used to earn more than Team Leaders too.
Many companies have team lead positions that have no formal management authority or responsibilities. Was that perhaps the case here?
The bottom line is some folks in the company do have firing authority -- or at least have broad say in initiating the process to have someone fired. Rarely are these folks not on the management track or its equivalent.
In theory the Team Leader could fire the other devs in the tribe (even senior ones, just not the Tech Leader). In practice it appears that the Tech Leader has a lot of influence in firing a dev. In case of disagreement, the last word, I assume, would be from someone higher up (the CTO).
If a C-level executive officer would be involved in a decision to fire a low-level developer, am I right in assuming the company was quite small? As companies get bigger, firing power and other forms of authority cannot stay concentrated only in the executive suite -- it's just not sustainable or scalable.
It had around 500 people, I believe around 90 developers.
There was a Engineering Manager too, I believe that would be the final word actually.
But see that I am talking about "last word"; if a Team Leader and a Tech Leader disagree in a decision to fire someone. If both of them agrees, it doesn't scale up
I spent a lot of time in big4 consulting and it’s got a lot of high bill rate specialists in addition to normal partner people.
It’s not true that manager know your salary, nor that they can fire you. Managers there controlled projects and investments but almost no one knew salary unless you were HR. Raises and bonuses were always in percentages and only your local mega partner who didn’t actually manage you knew real numbers.
Profitability was based on averages and bands to discourage minmaxing profitability on projects as that was detrimental to delivery and to clients. Markup and overhead was so high it was pretty difficult to be unprofitable.
So maybe in some orgs there’s strict boss type ladders. But there are many orgs where parallel is real.
My boss does an evaluation of my performance for the purposes of HR, but he doesn’t really manage me and I don’t think he makes more money than me. Our IC roles go all the way up to Director level without having any reports.
> My boss does an evaluation of my performance for the purposes of HR, but he doesn’t really manage me and I don’t think he makes more money than me. Our IC roles go all the way up to Director level without having any reports.
I think it will be hard to find another job at director level without any reports. I have witnessed the struggle of my friends with this exact setup.
That depends on how you define "manager". In our company, managers serve empowering function and don't have firing powers. They take full responsibility for growth and progress of the people they manage. They can report issues with people they manage to certain parts of the org, but can't solemnly pull the trigger.
We are also significantly smaller than Square though, with 40+ employees. We want to keep it this way up until sustainable, then figure out something else. We don't want managers to ever be able to single handedly fire people.
> That depends on how you define "manager". In our company, managers serve empowering function and don't have firing powers. They take full responsibility for growth and progress of the people they manage.
Who does have firing powers, and how does one get there without being in the management track?
I worked as a dev manager at a large org and definitely didn't have firing powers. It involved a process with HR, and following a pretty riggid pip-ing process, paperwork, etc, so that there's accountability at all levels.
I'd be curious the size and type of company the OP is talking about where managers get that much power?
I didn't mean to imply that managers can single-handedly fire whomever they want. But empirically good managers can get bad engineers fired, but good engineers can't get bad managers fired nearly as easily (if at all).
Not always. Managers sometimes like the people on their teams, and don't want to fire them. That's when someone else notices the team needs shaking up, or overhears conversations that are unsettling, etc. Also step-over meetings, too: that's when a manager's manager (or higher-up) will have a meeting with someone the manager is managing....good orgs have all these types of playbooks.
"Managers sometimes like the people on their teams, and don't want to fire them."
I remember early in my career meeting a very senior and experienced manager from another company on the same project who said he intentionally didn't become too friendly with people in case he had to sack them - which I thought must be a miserable way to live. NB I have sacked people for poor performance and laid off people I considered friends (and who are still friends).
I haven't heard of a modern tech company of any size that allows a team lead / direct manager of ICs to unilaterally fire a report without some decent amount of process and involvement from others.
Currently only the C executives, mostly because we are so small and this is a very solemnly an issues. We have not let go a person for more than 2.5 years. As we grow more, we will change it too, but will try to keep it very friction heavy so our employees are not worried about someone frivolously firing them.
Just wait until you get to 10000 employees. You must delegate at that point. A manager might not fire someone by themselves, but since the involvement of HR is generally limited to executing the decision it might as well be.
The way we implement this, you cannot report to a manager who is the same level as you. A sufficiently senior IC with an entry level manager gets transferred up the org chart upon promotion.
In my experience that leads to the organisation hiring more people at the upper ranks of the management track, and the end result is that management becomes the easier path to promotion and most of your senior staff are managers, not ICs.
If you have a team of engineers rangining from L3-L7 (on Square's scale), and you want to hire a new engineer you'll interview, and then decide on a level based on the person's skills & experience. Probably you knew up front that you were targeting a 4/5 or a 6/7, but generally, you don't go looking for a L7 IC, you look for an experienced engineer and then put them at the level that is appropriate.
But if that same team needs a manager then your policy is that they need to be a L8 or above (otherwise you'll need to do a big reshuffle to move all the L7 ICs out). So now you interview looking for a L8+ EM, and you hire the best person you can find, and you make them a L8. Maybe they're at the lower end of the L8 scale, and you know this role will be a stretch for them, but that's OK because it's good to stretch people into new roles and you think they'll step up.
But, you would have made a different decision when deciding what level to give an IC. My experience has been that for ICs, companies (rightly) err on the side of caution and if they think that the new hire is on the lower end of the scale they'll bring them in at the lower level, and let them prove themselves.
So if you're asking Is this engineer a N or (N+1)? you'll be more likely to bring them in at N. But for a manager, there are incentives to bring them in at N+1 so that they can maange the members of the team who are N.
And now your standards for an (N+1) IC are higher than your standards for (N+1) EM. And when it comes to promotion time, the new hires form part of the benchmark. And your existing Level-N EMs are performing just as well as your new N+1 EMs, so they're good candidates for promotion. But your existing Level-N ICs are really only performing at the same level as your new Level-N ICs, so things seem to be balanced.
I don't think there are any easy solutions to this problem. If you have a policy of ICs reporting to higher-leveled EMs then you create a system that makes it easier to be promoted on the management track. But if you have ICs reporting to a same-(or lower)-leveled manager, then you have a perception (and possibly an reality) that being a manager gives you more organisational power than the same level IC.
the good ones will soon become managers of managers, and then managers of managers of managers.
Perhaps the most successful managers (sometimes) are the best at pushing their own agendas and making themselves look good, as your comments may imply. I’m sure the Peter principle comes into effect here when that is the case. The best managers in the most functional organizations must align more with your final comment.
I agree with informational advantage and sort of self patting on the back thing but it’s also that average manager is a lot better at politics than average IC. Because it is literally their job. So a lot of power imbalance comes from that imo
It’s also much easier to get promoted as a manager M1 to M2 vs senior engineer to staff engineer. Managers automatically have a lot of impact across multiple teams, but it’s much harder for senior engineers to demonstrate that.
Having been a Senior IC and a Manager at a couple of big companies, I agree that that promotion is probably easier as a manager, but I worked with orgs/teams that had multiple senior staff/director-level ICs, but only 1 senior manager, director, etc. M1->M2 is possible managing a single team, but often M3 isn't. As long as the senior manager/director is there, you're not going to get promoted.
On the other hand, I've worked hard to get IC's on my teams promoted up and out of my team because good directors rely on their Sr. Staff/Prinicpal engineers so there's room for them to grow (even if it's difficult).
Right. Companies - which means "managers" - operate on the weird assumption that "programmers are smart enough to model our arcane business processes, but not smart enough to figure out the implications of those processes for themselves".
If you are at level N in a company and (capable of) operating at level N+1, then your choices are to wait and hope that is recognised by your completely fair, impartial managers and you get promoted, or interview elsewhere and take your career path into your own hands. The second option is more reliable and likely to result in higher comp too!
My experience at most tech companies (Amazon, Google, etc), to become a manager you need to demonstrate that you have the technical ability to perform at senior(ish) level IC before you become a manager. i.e. You go from L5 IC to L5 Manager. Not L3/L4 IC to L5 manager.
To any young engineers who may be reading this, this is social fiction. If someone can fire you but you can't fire them, you better believe you're not on parallel tracks.
EDIT: it's not just firing. Managers know your compensation, but you don't know theirs. They'll all work to split their team into multiple teams so they can say they ran a group; the good ones will soon become managers of managers, and then managers of managers of managers. They'll sit in on senior meetings, work on strategic decisions, and you'll watch them rise further and futher in the company hierarchy while you're enjoying your "parallel track".