Geeks With Blogs
Joe Eames Arbitrary Randomness

I'm going to say this a few times.  Look for it.  Local Optimizations do NOT equal increased productivity.

Everyone wants their development to succeed. 

The policies of a team are an important element to successful development.  As teams gel together, decide on things like pairing frequency, WIP limits, check in policies, testing practices, Done Definitions, etc, they have the opportunity to change behaviors that otherwise would detract from that success.

One of the big advantages of these policies is the ability to do something that can seem counterintuitive from a myopic viewpoint, but will actually result in increased performance in the long run.  WIP is a great example of this.  As a developer, if I'm done with a story, and because of a WIP limit, I can't hand that story over to the QA engineer, I have to either sit on my hands, or help clear out their queue.

Now maybe I'm not good at whatever task I'll have to do to contribute.  So it seems inefficient.  But if I just keep piling on work to the next person in the line, the only thing I will be doing is causing a log jam.  Software chock full of untested and unapproved features isn't releasable.  If I help out, I'm probably less efficient.  And I'm probably not going to do as good of a job.  But local optimizations do not equal increased productivity.  Just because I'm going faster doesn't mean the team is, and can often mean the team is slowing down.

Automated testing is another great example.  It takes time to run those tests before I check in.  I can get more work done if I don't bother.  But local optimizations do not equal increased productivity.

Sure that last example should seem silly.  But the moral of the story is no less true. 

So next time you're balking against a policy that seems to hold you back personally, try to truly consider if ignoring it will make your team more successful.

And while you're at it, say this to yourself, "Local optimizations do not equal increased productivity."

Posted on Monday, October 10, 2011 9:41 PM | Back to top

Comments on this post: Local Optimizations in Software Engineering

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © joeeames | Powered by: