Kevin Marks “In the end, this means that really great coders will keep getting paid less than they are worth and average ones will keep getting paid more, so the economic benefits of great skill will go primarily to the companies with the best employees and not to the employees themselves.”
I read this post a little while ago and was reminded of it today. I’ve found that sometimes good developers don’t get paid the amount they deserve because the management don’t know who they are.
A while ago I visited a company that was jammed to the rafters with below average programmers being paid wages that the management thought should justify a certain skill-level.
I sat with one of the programmers for the afternoon, and before long it became very clear that most of the development in the 20-person team was being done by two of the other developers, and from what I saw their stuff was pretty good. Which is more than can be said for the chap I was sitting with…
That afternoon, I think I prevented a dozen bugs being put into the codebase by this poor chap who was completely out of his depth, but also amazingly arrogant with it. It was something less than a pleasure.
I reported this back to the MD only to find that I’d been sat next to their highest-paid programmer. I was a little bit taken aback. The chap had the most certifications and qualifications and therefore commanded a higher salary. Hmm.
The two developers that wrote most of the good code? One was an older chap who was seen by the management as ‘not having a sense of urgency about him’ and the other had recently been given a written warning about not commenting his code.
Did you know that these guys are doing the same amount of development as the other eighteen together, I asked? The MD was completely shocked. So what should I do? he asked. Well, I said, I’d ask them.
I received an email from the MD today – four years on they’ve shrunk their team to six people, the two great programmers are still there, and as a company they’re much more productive.
I suspect, though, that as Kevin suggests they haven’t shared out the other 14 developers’ salaries…
1 comment so far ↓
I can only confirm the observation that quite often a small number of core developers carry the burden of a whole team. To me, that’s really the definition of a “senior developer”.
But what does your insight into salaries tell us?:
- formal power increases as you ascend the levels in an organisational structure - i.e., it lies with “management”. One of the most important aspects of formal power is the ability to set salaries and take disciplinary measures (like the written warning you mention).
- people in knowledge intensive professions like software development typically share a very strong belief in merit and freedom. I.e., we want reward be proportional to merit and we intensely dislike control from above that stifles our freedom (and a written warning is a particularly silly control measure). (Agile processes do away with all top-down control measures, because they just don’t work anyway.)
- unfortunately, to see the true merit of a software developer and to understand and share their work culture is beyond most people in management. It’s as simple as that, i’m afraid (and it has too many reasons to elaborate here). Which is why they issue written warnings and have to resort to meta-criteria like whether people “have a sense of urgency about them” or the number of certifications in order to set a salary.
- management is a real problem in software development. (It is typically not in other knowledge intensive professions like scientific research.) Good managers should see their shortcomings in dealing with their software development teams, take a step back and delegate the decision making for many of their responsibilities (setting salaries, disciplinary measures, control) to people within the software development team: typically the senior developers or architects. The MD in your example might have done just that in the end…
Leave a Comment