A brilliant software engineer may have the talent to become a great project manager but may also very likely make a piss poor project manager. It depends much more on your given talents than it does on how long you’ve done anything. Don’t let yourself get ‘promoted to your level of incompetence’. Instead, if you’re good at what you do, look for more lateral movement: ie, better pay, better pick of the projects your work on and the technologies you work with.
If I were an IT/Development manager (which I am), I would certainly not want one of my best engineers being promoted away from what he/she does best. But I’d certainly be willing to give them money and quality of life improvements to keep them doing what they’re good at. That’s what you should aim for.
Promotions to different positions that require different talents because of ‘natural progression’ reasons almost always end up becoming an abysmal failure.
In my company at least, vertical growth comes from 1 consideration:
- Does the person possess the talents (not knowledge or skills, we can teach them those things) that we value in a person that will fill that role.
It should be noted: If someone is consistently doing terrible at their job (even with training and help from management), and they don’t have the talents to be very productive in another position: they’re fired; very quickly. We see this as an error on our part of the selection process and we strongly believe that someone in this position is doing an injustice to themselves to stay at that job and would be better served being fired and finding a job that suits their particular talents better.
On the flip side, we find that people who are great at what they do and are rewarded for it are much happier in their work and are much more likely to not want to move to a different position.
For instance, in another department we had a telemarketer who was quite poor at the job, but had the talents desired to manage that department. She was promoted to be the inside sales manager and the whole department’s bookings increased significantly (and consistently) as a result – likewise, staff retention in that department is at an all time high. Additionally, it should be noted that this new manager doesn’t (yet) make more than some of the people she manages. People are paid a wage that reflects their work performance.
If any employee needs something to make them better at what they do (new desk, new keyboard, new phone, new headset, books, software, whatever) it’s almost always no questions asked, it’ll be ordered by the end of the day
Career growth is a bit different from career movement. Growth in a developer position means we will buy you any learning resources (books/software/hardware) that will make you a better developer. Or management training/books/etc. to make you a better manager. Our philosophy is that you can’t ‘outgrow’ your position, but you can get better at it – and rewarded accordingly.
[via http://stackoverflow.com/questions/1586819/career-growth-for-software-engineer-project-product-manager-vs-architect ]