Avoid Programmer Churn and Bottlenecks

From Programmer 97-things

Jump to: navigation, search

Ever get the feeling that your project is stuck in the mud?

Projects (and programmers) always go through churn at one time or another. A programmer fixes something and then submits the fix. The testers beat it up and the test fails. It's sent back to the developer and the vicious cycle loops around again for a second, third, or even fourth time.

Bottlenecks cause issues as well. Bottlenecks happen when one or more developers are waiting for a task (or tasks) to finish before they can move forward with their own workload.

One great example would be a novice programmer who may not have the skill set or proficiency to complete their tasks on time or at all. If other developers are dependent on that one developer, the development team will be at a standstill.

So what can you do?

Being a programmer doesn't mean you're incapable of helping out with the project. You just need a different approach for how to make the project more successful.

  • Keep the communication lines flowing. If something is clogging up the works, make the appropriate people aware of it.
  • Create a To-Do list for yourself of outstanding items and defects. You may already be doing this through your defect tracking system like BugZilla, FogBugz, or even a visual board. Worst case scenario: Use Excel to track your defects and issues.
  • Be proactive. Don't wait for someone to come to you. Get up and move, pick up the phone, or email that person to find out the answer.
  • If a task is assigned to you, make sure your unit tests pass inspection. This is the primary reason for code churn. Just like in high school, if it's not done properly, you will be doing it over.
  • Adhere to your timebox. This is another reason for code churn. Programmers sit for hours at a time trying to become the next Albert Einstein (I know, I've done it). Don't sit there and stare at the screen for hours on end. Set a time limit for how long it will take you to solve your problem. If it takes you more than your timebox (30 minutes/1 hour/2 hours/whatever), get another pair of eyes to look it over to find the problem.
  • Assist where you can. If you have some available bandwidth and another programmer is having churn issues, see if you can help out with tasks they haven't started yet to release the burden and stress. You never know, you may need their help in the future.
  • Make an effort to prepare for the next steps in the project. Take the 50,000-foot view and see what you can do to prepare for future tasks in the project.

If you are more proactive and provide a professional attitude towards the project, be careful: It may be contagious. Your colleagues may catch it.

By Jonathan Danylko

This work is licensed under a Creative Commons Attribution 3

Personal tools