« Conservation of Seriousness | Main | Singleton is Incompatible with Unit Testing »

October 12, 2006

Sending People Home

A few years ago, I was helping a team transition to agile. They were in pretty sad shape. When I got there, they couldn’t build their software. Millions of lines of C++ code and every time we tried to build it, it failed.

 I sat with two or three other developers and worked diligently on the build. The team had about twenty people, and sure, they could’ve worked on some other tasks, but really the build is the heartbeat of a project. If you don’t have that fundamental feedback mechanism in place, there’s very little else that you can do that’s productive. In fact, most of things that you can do without the feedback of a build are counterproductive.

 A friend of mine, who was coaching the customer team noticed that I was pretty much ignoring the rest of the developers and he asked what they should be doing. I said “send them home.” “You can’t send fifteen people home!” he said.. and I knew what he was talking about. The team was under pressure, and politically, it would’ve been a nightmare. At various levels of the organization the only reality that could be heard was “these twenty developers are doing everything that they can to get past the build problem.”

It took three days and three people to get the build going. When we did, the rest of the developers started taking on tasks, and making progress, but I still regret the fact that the other developers had to appear busy during the process.  It would've been better for all concerned if they went home.

Things like this fascinate me.  There are some ideas that you can communicate effectively in organizations and others that you can't.  In this case, there was clearly a manager who knew that twenty people couldn't work on the build at once, and that there was nothing productive the other people could do.  But, the fact that he knew it didn't help. 

I think that the real issue is the reporting hierarchy.  Do people at each level have the trust of the people they report to?  If they do, the person closest to a problem can make a call and not be worried about people above second-guessing it based upon incomplete information. 

It's a tough thing to coordinate.  The further a person is from a problem, the more apt they are to think that they see a better solution than the people who are closer.  In many cases, it's an illusion based on lack of information.  This is part of something that I sometimes call social signal loss; it's pervasive in human systems and I suspect that it implies that sometimes you can have too much transparency.

 

TrackBack

TrackBack URL for this entry:
http://www.typepad.com/services/trackback/6a00d8341d798c53ef00d8356b108e69e2

Listed below are links to weblogs that reference Sending People Home:

Comments

I'm a CTO now and have lost a little bit of touch with my developer side :(

What I would've liked to be able to say to de CEO? “these two developers are doing everything that they can to get past the build problem.” and " these other 18 developers are doing everything they can to avoid this problem from happening again".

What this last point means is the tricky part, but some things come to mind like reflection workshops and training.

Bottom line, sometimes is more about how you say it than what you are saying. Remember to put yourself in the other person shoes and be sure that when you say it to yourself it makes sense and goes in accordance to the other person's values.

Verify your Comment

Previewing your Comment

This is only a preview. Your comment has not yet been posted.

Working...
Your comment could not be posted. Error type:
Your comment has been posted. Post another comment

The letters and numbers you entered did not match the image. Please try again.

As a final step before posting your comment, enter the letters and numbers you see in the image below. This prevents automated programs from posting comments.

Having trouble reading this image? View an alternate.

Working...

Post a comment