[color=#282828][font=helvetica, arial, verdana, tahoma, sans-serif]
[background=rgb(250, 251, 252)]It's true annoying often. I've just left two jobs in quick succession because the starting pay wasn't great and when it came time to discuss end-of-year performance, people said "Oh yeah, well you've done great but we're giving you nought-point-nought percent because you're being paid above grade.
[/background][/font]
There's is a grain of truth in original rant. Namely, to progress, a developer needs to develop a bit of business savvy.
When taking up a job, especially after a few years in the field, it should be natural to estimate growth potential and also accept hard truths. Some companies simply cannot realize promotions or advancement. Their business model, the funding, the org chart simply have no such route.
It's not a sign of a dead industry, obsolete company or non-profitability. But if one were to go work at a bakery as baker, career options are fairly straightforward: first year you'll be a baker, second year too, third, 10th. If owner happens to croak and we don't sell out, you might eventually make it to manager in 20 years.
[color=#282828][font=helvetica,arial,verdana,tahoma,sans-serif]
[background=rgb(250, 251, 252)]Yeah, well we needed someone as good as you, but we couldn't get a senior slot / E8 slot / whatever and the policy says that anyone above grade can't be given payrises... Ah, no, well corporate has imposed a restriction that we can't move people up from E7 to E8 until we've hired some more E5s / there's a promotion freeze on / yeah, we've just sort of decided that everything senior and above needs management training; we could send you on that and see whether you could get promoted in a couple of years?"[/quote][/background][/font]
That's annoying, but at same time, consider the alternative - no rules, no bounds, dog eat dog promotion. Again, developers won't advance, the manipulative friend of a boss will rise through ranks, trampling seniority and anything else.
Most if any IT (format IT industry) doesn't need good developers. If they rely on people, they will fail due to bus principle. So they need to arrange their business processes just barely under the level of average incompetence.
They're incredibly glad that due to overabundance and overqualification of many applicants they can save money by hiring vastly over-competent technical staff, but their business needs to go on even after then leave (not when).
It may look ugly on a surface, but when faced with running a business peak performers are nice, but at the end of the day one needs to be sure that even the bottom of the barrel will get the job done.
Very few companies that provide hard salary, not just lifestyle experience (lower salary for interesting/engaging work) or those that do not have money printing machines (Google and such) can afford to accommodate wide range of talent and interests.
There is a type of company that can get around, but it's not perfectly suited for pure developers. These are the ones which allow and support biz-dev from everyone and help with experimentation at business level (new products, services, ideas, conventions, ...) so that those grow into viable business venues. Pure coders tend to struggle, since it takes a lot of discipline to steer development via business and not technical decisions.