Today we lost a member of our development team. It sucks. Really.
The team member we lost was one of those guys that I thought would be here forever, so his sudden (and unexpected) departure was a bit of a wake up call for me. It reminded me that if you have smart people, you need to keep them engaged by giving them smart people problems to solve. The strongest devs on your team aren’t just going to sit at a keyboard all day working on whatever you say just because they’re a nice guy. That will work for a little while perhaps, but eventually even the nicest of guys will start to lose interest if they’re only doing uninteresting work.
If you want your best developers to stick around for the long haul, you really need to make a conscious effort to engage them on a regular basis. This means finding interesting, challenging problems for them to work on. Sure, there’s going to be times where uninteresting work just needs to get done, but as soon as those times are over you need to unleash your people again. If you’re always busy with this boring kind of work, then your going to have serious problems someday, because its going to be almost impossible for you to keep good people onboard anyway, especially once they figure out what they’ve signed up for.
What sorts of things do you do to make sure your teams are engaged?