The Importance of Meritocracy
When trying to get developers of a project invested in what they are doing on a day to day basis, few practices go so far as the establishment of an informal meritocracy in the team.
Traditionally in software, meritocracy is talked about with relation to initially giving a developer a small amount of time and trust to contribute something outside of his or her traditional area. The product of that time is then evaluated by the team leader or project manager, and if that mini-project was deemed to be valuable, the developer is given additional time and trust the next time he has an idea (when time permits so as not to negatively affect the main development project). This process works successfully in open source projects.
Now, I think it would be good to extend this phenomenon, contrary to the usual rules of social correctness in the workplace, to informal benefits in and around the workplace itself. Senior developers should get to work from home more, more relaxed internet surfing rules and even free coffee (if not already standard) so as to get juniors to aspire to be just like them. We are not all rewarded in equal financial terms for the value we contribute towards the project, so why should we all be subject to the same office environment rules? People should associate responsibility, accountability, and good performance with benefits beyond just their salary.
Conversely, employees who abuse the trust given to them to perform their job can have their perks reduced or taken away entirely. Is Gerald Facebooking too much? Fine, restrict him and only him to free surfing in lunch hours and after 5pm. If he’s gives a damn, he’ll soon get the message and shape up. If he doesn’t, well, taking away his perks will hopefully be the first few steps to warnings and then a dismissal, because you don’t want anyone like that on your software team.
I am aware that this kind of thing could get messy with the wrong people around, but then again, software development in general gets messy with the wrong people around! I would concede that an informal meritocracy would work best in a mature workplace where the hierarchy is accurately based on experience, qualifications and merit to the project, however rare that may be!
So let’s drop the egalitarian charade and tell it like it is. All software developers are not created equal, and differing perks for juniors and seniors would be a good thing!
