An easy way to keep your developers productive

by Michael McClenaghan 2010-04-17

Tin Can Telephone Software developers are a tricky group. They're smart folks with lots of education. They're typically highly motivated to do a good job. These are the kinds of folks who have a blurry line between job and hobby.

But they will kill you as a project manager. Slowly.

Don't believe me? Try getting a developer to commit to a deadline. Assuming that you can get the commitment in the first place, the developer will typically disappear for quite a while. This is called going black.

Then, miraculously, they'll pop up just before the deadline with a variety of reasons for not being done.

  • They've been working on Bug X or Defect Y and haven't been able to do your work yet, or
  • The feature turned out to be a lot more complicated than they originally thought, or
  • They're assigned to more than one project and spent their time working on the other project.

No matter the reason, the bottom line is that the feature isn't done. And the deadline is looming. This is the game.

The Game

I've been a developer. I've played this game without realizing it. I'm not really sure why this game occurs. After all, nobody wins. Maybe it's because estimating is so damn hard. Or possibly the developers don't control the environment that they're coding in. Regardless of the reason, the game exists.

But, like water flowing downhill and encountering a boulder, the key is to come up with a way to keep moving forward.

What you need to realize is that the developers are not trying to screw you. You just need to know a simple rule about developers: the longer a developer is allowed to work on a feature, the less likely it is that they'll be able to deliver it.

Which leads to the simplest possible way keep your developers productive: talk to them!

Talk To Your Developers

Every morning, meet with your developers as a group. Have each of them talk about what they're working on that day and any hurdles that they're facing. The hurdles are your job to resolve. The developers are there to code. You're there to make sure that they can do their job.

In agile circles, this meeting is called a stand-up. Even if you're not trying to adopt any agile methods, adopting a ritual of daily communication is your way to stay in the loop on what they're doing. But remember that you're not there to micro-manage them. You're there to ensure that they commit to work and then you're there the next day to follow up on how the work went. Think of it as a series of micro-projects.

By maximizing your communication, you minimize your risk.

There's Nothing Like Face-to-Face Chats

One final tip - resist the urge to automate this process through some type of daily email or other remote check in. It won't work. You want more communication; not less. And the best way to get communication is to, well, TALK to your team.

Does this feel like babysitting? Maybe. But when you deliver your project on time you'll have the luxury to sit back and debate that point.

blog comments powered by Disqus