Promotions are a myth told to people to get them to work harder, aren't they? They're quite rare and usually come with moderate increments. Whereas the best way to increase your salary is to move jobs. Salary is only vaguely linked to job title.
(I was once promoted en passant, when my first employer wished to inflate the number of Senior Developers assigned to a consulting proposal...)
I agree. Unless you are in an environment where there are very specific pay scales for fairly specific positions and levels, with lots of chances for advancement (e.g. Google or the like), expecting a significant raise at your current job is unlikely unless you have a lot of leverage. Put another way, you've been giving the company the extra work for free. People (and companies) don't like to pay for things they're used to getting for free. That just feels like an unnecessary expenditure, so is resisted.
I would say the vast majority (greater than 99.99%) of raises come from the threat of quitting. That can either be an active threat (where you approach management for a raise to set expectations) or a passive threat, where management wants to make sure you aren't looking around for better opportunities, and those opportunities will often pay more than they have to raise your salary to keep you, which makes retaining you after you've shopped around much more expensive.
Large companies that realize losing institutional knowledge is costly put in programs to make sure there are good expectations on what is required to achieve the next position and what the pay-scale range is for the next position (which also helps fight racism/sexism). You see this at Google (and I'm sure many other large companies), who had identified this as a problem that needed to be solved.
People are promoted and given new opportunities based on business needs, not performance, beyond some table stakes level. Overtime is not what gets you promoted.
Is that actually true? A good coder or sysadmin who is willing to work overtime is more valuable as a coder or sysadmin than as a team lead or something, where the nature of their work demands less overtime.
I have a coworker who works harder than anyone else on the team, he's the most productive and knows the codebase in depth. I can see him getting a nice bonus, he deserves it, but I don't think he will be promoted. For one, my boss just hired someone more senior and I think his plan is to move that person into management. The other thing is, it would kill our team's productivity to lose our best programmer, he's too useful in his current role.
I think a lot of people expect this to be the way it works, and perhaps it should be, but it's not the way business thinks. They see it as you volunteering free labor and that's pretty much it.
If you value your worth based off what label an organization slaps on your paychecks, sure. If you are getting better and better at your job, you can tell your company or other companies you require $x.xx salary, or want to move into management, etc. Why wait for them to promote you?
"Fact"? When you're already willing to work for 2/3rds of your market rate? No, you've advertised your commitment to being stuck in the trenches while new people are hired over your head until you burn out.
>people on HN don't want to work their way up, then want it handed to them
Yes. How terrible would that be. How terrible would it be for someone to have a title / position commiserate to their skills, not how good they are at office politics.
Regarding point number 2 - A promotion has to get handed to you in some way or another, regardless of how hard you work for it.
I just don't want my career advancement to be up to the arbitrary whims of someone in a position of authority, that's all.
There are many ways to work your way up that don't involve giving all of your free time away to someone else who may or may not decide to promote you for it.
Promoted to what? A manager? I guess in a more hierarchical organization you get to be Programmer III instead of Programmer II and maybe get a higher salary?
What about those of us who don't have strictly defined roles like that? Where I work you're basically just a programmer. Experience has always seemed to count more for me than an arbitrary title.