Too often I’ve seen that the only way to give someone a good pay rise in the world of IT, is to promote them. Now this is all good and well, when you’re promoting them in the way that enhances their career in line with their interests. A good example is promoting a Junior Developer, to a more senior level.
Where the system fails down is where you end up promoting someone out of the role that they enjoy and excel at. An example of this might be taking a Senior Developer and ‘promoting’ them to Technical Project Manager. On paper that might look great – they have a great understanding of the technology, they have all the attributes that you’d want them to pass on to other developers and they’ve proven they can deliver.
It doesn’t seem to consider that they now need to manage risk registers, project finances, stakeholder engagement, vendor management and pre-sales support… But that is typically what a Project Manager will be expected to do.
Now the very aspect of their job that they enjoy and did well – the delivery of high quality code – makes up less than 20% of their working week.
It’s like taking a top rodeo rider and promoting them to stadium manager.
Instead, look at what serves your interest and theirs best in the long run. If you’re operating an environment where you can’t pay someone more unless they are doing something very different (e.g. developers having to manage people or have direct responsibility for a sales target), you need to look at that environment. Don’t start pushing square pegs into round holes.
Good developers are rare enough to find, without having them become process drivers. That’s not to say that they can’t or shouldn’t be encouraged to lead others – but that doesn’t have to be management over leadership or mentorship.