If you have to produce a well-reasoned argument, and successfully convince all peers that your argument is in fact well-reasoned, and comprehensive, and handles all concerns of all involved or potentially involved, and that all opposing arguments do not meet these criteria… it will take ages to get all stakeholders in agreement, and even when you do, you get a horse designed by committee (a camel).
Projects with no owner consistently end up in the same rut — always planning but never doing. Bikeshedding.
So you need the owner. But for someone to own the project/task, he needs to be in charge of it — he needs power. For what is power if not the ability to make a decision and have others follow through on it?
In arenas without defined power relationships, but manage to produce useful work, it’s usually the case that the power relationships still exist; they’ve just been made implicit. You see this in geopolitics, in your high school group projects, in Valve, etc. Determined not by corporate hierarchy, but instead charisma, money, social networks, physical/military strength, etc. Most of which is reflected by the corporate hierarchy anyways.
Businesses just make it explicit, and consider it valuable enough to attach higher pay. You might make the argument that managers don’t deserve higher pay than an individual contributor, but it’s clear enough that a manager has much higher potential impact than an IC — if you manage 100 resources, making them 10% more efficient than otherwise, you’re doing the effective work of 10 ICs. But in my head, a resource-managers role is primarily to make his team more efficient — by optimizing processes, clearing blockers, umbrella’ing against shit from on high, reporting upwards, to guide the overall direction of all involved — not to dictate the every individual activities of his underlings.
Also the Linux Kernel clearly has a power hierarchy, and while that power hierarchy doesn’t dictate what you work on, it does dictate whether your work can hold any value (by getting included into mainline). The difference just ends up being in the fact that it really doesn’t cost anyone anything for you to continuously do work that’s ultimately rejected every time, whereas for a business it obviously does (in the format of your salary). Obviously you can fork if you want and make it perhaps valuable… but you can exit the hierarchy just as well in business by quitting.
> You might make the argument that managers don’t deserve higher pay than an individual contributor, but it’s clear enough that a manager has much higher potential impact than an IC — if you manage 100 resources, making them 10% more efficient than otherwise, you’re doing the effective work of 10 ICs
Maybe. Supply and demand is always at play. If any manager can make 100 developers more 10% more efficient, but only a few people who have any ability to be a developer at all, then the developers are worth more. Numbers are relative to supply - my company has discovered we have to get ICs better raises than their manager at the lower levels as our great developers were becoming managers. We can get managers from lots of different entry level areas, but not enough engineers.
> If any manager can make 100 developers more 10% more efficient, but only a few people who have any ability to be a developer at all, then the developers are worth more.
Then you'd expect fewer developers, and fewer managers overall. Unless you hit some really low threshold (e.g. 5 developers, so the same manager is only worth 50% an IC) where the cost of manager doesn't "pay back" in developer-headcount-reduction, it'd still follow the same strategy.
And of course, the amount of "pay-back" you get from a manager would naturally be how one derives their value, and thus their paycheck.
But IC --> Manager as the only promotion track is completely unnecessary, and generally a mistake. That's just intentionally driving into the peter principle (promoted to the level of their incompetence), because you've simply left no other way to go. Usually you have the alternate track for IC's expanding into larger/more abstract/more important domains, but not head-count; technical/solution architects and what-not.
But the story hasn't changed -- if you assume the role of the manager is to make their resources more efficient, then a manager's value scales with the number of resources under him; an IC does not. It will always eventually make sense for a manager to be more valuable than an IC, and this only holds false at low headcounts.
I mean... if you get your managers "from lots of different entry level areas", then you get exactly what you paid for.
Any tech manager even remotely worth their salt should be able to function as a senior+ IC if necessary. If that skillset is lacking.. maybe you want to rethink your hiring. You'll likely never see the effect of a good manager if you don't.
As for your argument that developer scarcity somehow makes managing worth less - the opposite. If you can hire a single person that can effectively give you 10+ devs without having to hire those 10+ devs, you want to hire that person.
And for the "ICs need better raises, or they turn managers" - uh, no. But you do need to offer parallel development tracks, with comparable advancement opportunities. (In reality, IC & mgr raises should be roughly similar in terms of percentages. If you value managers, at least)
Management is not related at all to tech ability and there is no reason for a manager to have tech knowledge. Tech knowledge avoids some of the worst things i've had managers do, but my best managers have been completely non technical.
If you have to produce a well-reasoned argument, and successfully convince all peers that your argument is in fact well-reasoned, and comprehensive, and handles all concerns of all involved or potentially involved, and that all opposing arguments do not meet these criteria… it will take ages to get all stakeholders in agreement, and even when you do, you get a horse designed by committee (a camel).
Projects with no owner consistently end up in the same rut — always planning but never doing. Bikeshedding.
So you need the owner. But for someone to own the project/task, he needs to be in charge of it — he needs power. For what is power if not the ability to make a decision and have others follow through on it?
In arenas without defined power relationships, but manage to produce useful work, it’s usually the case that the power relationships still exist; they’ve just been made implicit. You see this in geopolitics, in your high school group projects, in Valve, etc. Determined not by corporate hierarchy, but instead charisma, money, social networks, physical/military strength, etc. Most of which is reflected by the corporate hierarchy anyways.
Businesses just make it explicit, and consider it valuable enough to attach higher pay. You might make the argument that managers don’t deserve higher pay than an individual contributor, but it’s clear enough that a manager has much higher potential impact than an IC — if you manage 100 resources, making them 10% more efficient than otherwise, you’re doing the effective work of 10 ICs. But in my head, a resource-managers role is primarily to make his team more efficient — by optimizing processes, clearing blockers, umbrella’ing against shit from on high, reporting upwards, to guide the overall direction of all involved — not to dictate the every individual activities of his underlings.
Also the Linux Kernel clearly has a power hierarchy, and while that power hierarchy doesn’t dictate what you work on, it does dictate whether your work can hold any value (by getting included into mainline). The difference just ends up being in the fact that it really doesn’t cost anyone anything for you to continuously do work that’s ultimately rejected every time, whereas for a business it obviously does (in the format of your salary). Obviously you can fork if you want and make it perhaps valuable… but you can exit the hierarchy just as well in business by quitting.