I've been working with a company at an entry-level engineering position for two and a half years now. The average time before a promotion is two years.
Every single performance review I've had has been exceptionally good. My manager recently had me put together a portfolio demonstrating my work at the next level (my company requires that you operate at the next level before you're promoted, and I've been operating at that level for at least six months now). I put together the portfolio and asked him if it was good. He said it was.
Anyways, come today, promotion day, and the other engineer who started around my time got promoted. He is a good engineer and deserves it, but my work has consistently been at least as good as his work. To top it off, a new engineer who has only been here for a year also got promoted. I didn't.
What gives? And what am I supposed to do? At this point it's honestly offensive that I still have the title of an entry-level engineer, and I don't see the point of working for a team that doesn't respect the quality of work I put in. At the same time, I'm going back to school in a year, so if I switch companies (which would be very easy for me) I have to leave them in less than a year. It's too early to just quit.
My company doesn't do any sort of salary or title negotiation. Everything is done through a very formal process exactly twice per year. There is no way to get a promotion less than six months after being denied one.
WWYD