5 ms·
How To Keep Your Best Programmers
- einhverfr 13y agoOne of the basic ideas of distributism is that of subsidiarity, which I think is applicable in the workplace as well. The basic rule is this: Whoever does the work owns it and gets to make as many decisions regarding how to do the work as possible. This is how I run my open source projects. The big issue is that of the less talented taking ownership of tasks. Give workers freedom to do their jobs right and expect good things from them.
- yummyfajitas 13y agoThis doesn't work in all organizations. There is a big risk that some workers won't do their jobs right given the freedom to do so. In a nicely compartmentalized organization/application this isn't a huge issue - worst case, one compartment performs poorly, the people running it are replaced, and a complete rewrite of one component is performed. This can be really bad in a more monolithic organization/application. Bad work in one component (e.g., a poorly designed database schema) will leak out into the rest of the system. Because others are building things on top of it, it will be extremely difficult to rip out and replace.
- derefr 13y agoSounds like the big risk is in choosing to have a monolithic architecture.
- einhverfr 13y ago> There is a big risk that some workers won't do their jobs right given the freedom to do so. Find new workers then. The principle is you do the work, you own your work or job, it is yours with a share of the risk and reward that comes with it. > Bad work in one component (e.g., a poorly designed database schema) will leak out into the rest of the system. The solution there is two-fold: 1. Encouraging (though not forcing) getting second opinions, discussions etc ahead of time. 2. Post-review once the component is nearing usefulness by respected peers. "Can we use this? What is the quality?" Is there expense when you have to say "this needs more work" or even "this must be done again?" Sure. However does putting less technically apt managers in charge of the technical decisions cause fewer problems or more ones? You can't just have management and review go away. But management is the midwifery of production, and review of technical peers beats review of managers any day.
- JoeAltmaier 13y agoThe 'programmer laffer curve' may exist, but not for the reasons stated. A good programmer doesn't every 'offer all their experience' and runout. They got that experience somehow; this job is giving them more. They learn and grow, and don't stop having something to offer. I'm leaning toward the 'bored and want an excuse to leave' school of thought on this one.
- 6d0debc071 13y agoI think the theme of the article was less that they have nothing more to offer but that the things they offer are rarely followed up on. They become disillusioned with the ability to get things done. That it's relatively difficult to get promoted into a position of power as much as it is to go to another company and try to get things done there - at the very least you get another throw of the dice with people who might be more inclined to listen to reason.
- skyraider 13y ago>>> it is okay if the talented developer narrative doesn’t necessarily involve the company in five or ten years. That’s fine. I always get queasy reading lines like this. In the US, most employers can fire at will. The corollary should be that any employee can leave at will. There should be no cultural stigma against the latter. >>> humans are not motivated economically toward self-actualization The RSA video that supposedly supports this claim cites research that is only tangentially related to full-time employment. I'm not sure it's as applicable as the video host thinks: I can't help but note that ownership of tasks doesn't come with ownership of the company relative to the value of the tasks. It's all about who started it, or who got big equity. Am I the only programmer who doesn't like being economically exploited (in the formal microeconomic sense)? For me, it's demotivating to know I'm putting forth effort for which someone else is reaping huge value. Asking me to stick around for salary only (and perhaps a few worthless options) doesn't overpower my understanding of economics and make me excited to drive someone else's value creation process.
- vinceguidry 13y ago> I always get queasy reading lines like this. In the US, most employers can fire at will. The corollary should be that any employee can leave at will. There should be no cultural stigma against the latter. If you think about it, there's a pretty good reason for why this perception exists. Human social dynamics. Just like pack animals, we tend to ascribe virtue to the collective and vice to the individual. We've a fairly individualistic society, but still, jumping out of a safe and secure collective for an uncertain and possibly lucrative future is still going to be looked at as somewhat sociopathic. Even if it's the only way to receive fair compensation for your services.
- skyraider 13y agoI understand what you are saying, but cannot see how employees are comfortable with ascribing virtue to large-scale microeconomic exploitation. To me, the behavior of employers towards employees ("here, go create all of our value; go let us economically exploit you") is the sociopathic behavior (and somewhat misanthropic too.. except not really, because founders take the risk and expect a reward, and that's how the economy works). I guess this gets into all kinds of deep economics, but employees either let it happen, are powerless, or most likely, are completely oblivious to their exploitation.
- jwdunne 13y agoI think it's fairly straight forward how to keep any great employee, whether they clean your floors or maintain your $1 million a year generating product. Treat them with respect. This may go as far as allowing them to leave, which seems counter to what we want, but still. "Treat them with respect" is very broad but no matter what angle you think from, it works. For example, employees get bored because they are consistently doing work which is far below their skill level in a vocation which they haven't fully explored[1]. The respectful thing to do would be to either find work that is more challenging for this employee or allow them to move on to greener pastures, giving them great references and even assisting find their ideal role. If they do move on, whoever used to be our second best employee in that area becomes the best we have, who will be closer to what we need in terms of skills, whilst maintaining a great relationship with the previous employee. Also, if I'm overseeing an absolute wizard at what they do and they are far better than me at it, they deserve respect by being listened to when they offer advice when it comes to their craft. They deserve recognition of skill and if something isn't feasible or if there's a better way, I damn well better make sure I do it their way for the sake of my product/service/building/whatever and for the sake of my employee's general wellbeing. Hell, if they're that good, perhaps I can entrust them with a little bit more. After all, we should be hiring people to both do the jobs we haven't got the time for anymore and, at the same time, do them better than us. Telling an employee "do x by this time and you get a promotion" is not respectful either. This will create a bad culture, where cutting corners is rewarded where as doing your best work and offering sound advice is ignored or punished. It's really interesting to talk about theories of motivation, value and what not, I've done this and applying tactics and strategies like this works but it's overcomplicating shit that can be kept simple: treat everyone with respect, treat everyone as you'd like to be treated. It's very motivating going to your manager and saying "look, I need work that's a bit more challenging" and them replying with "understood mate. give me a bit of time and we'll work something out" (and, for brevity, ignoring the conversation in between of what exactly 'more challenging' means). It's very motivating your manager calling on you to give advice on the best course of action, rather than dictating how things will be done. This is simply respect. You should aim to give absolute respect to every person you work with, who works under you and works above you. Hell, you should do this for everyone in your life. Whether they return in kind is irrelevant, just keep at it. Sometimes those who haven't treated you right before will warm to you. [1]: http://upload.wikimedia.org/wikipedia/commons/thumb/f/f6/Challenge_vs_skill.svg/300px-Challenge_vs_skill.svg.png http://upload.wikimedia.org/wikipedia/commons/thumb/f/f6/Cha... taken from http://en.wikipedia.org/wiki/Flow_(psychology) http://en.wikipedia.org/wiki/Flow_(psychology)
- yekko 13y agoPay them far above market.