Now is not a good time

 

Meet Bob.

Bob is the Development Director a company that offers a Software-as-a-Service product with customizations built for clients on a project-by-project basis.

Bob was there from the beginning. Actually he is the only one remaining from the handful of programmers that started the software. That fact alone pushed him into the position he is in today, managing about 50 programmers. He’s standing among the other directors is very important to him – he wants to be seen as the guy who gets the job done, no matter the absurd deadlines. Of course “done” is relative, if you don’t care about quality – everything that happens after “delivery” is the client’s problem.

Bob’s philosophy is simple: “If it worked until now, we MUST keep doing things the same way!”. It doesn’t matter that things that barely worked with 5 programmers are literally ripping the code apart now. Although his background could be defined as using technology to automate activities, he is surprisingly blind to the opportunities of improving his team using software.

So they keep using manual source control by writing the changed files and lines in notebooks and then manually merging them.

So they keep having just one development database instance where the developers make their changes and run their tests at the same time. Of course, because nobody removes their unused stuff on one side and changes being made directly in production, only about 30% of its schema is equal to the production database.

Apart from his philosophy, Bob has his excuses ready whenever somebody tries to convince him to improve the way development is done:

“We have these projects in progress and they must be delivered on time”.

Makes sense. The problem is that this is forever true. When new projects arrive, Bob conveniently forgets about the time required for improvements and keeps doing the same old again.

Why does Bob do that?

“Because we have to keep the pace of deliveries”.

Actually Bob “pace” is too slow. Extreme case: if Bob stops everything for a month in order to implement a practice that would give him an 10% improvement in delivery times, he would recover his investment in one year. But he lost his long-term vision. Imagine that he had done that 2 years ago. Now he would have extra income equivalent to one month’s work. Let me rephrase that: Because he didn’t act in time the company is losing thousands or millions at this moment.

But it’s not Bob’s fault:

“The salespeople make commitments to the clients and we have to deliver, even if there is not enough time”.

Salespeople will always try to do that. Whatever it takes to make the sale, even if it means cutting the delivery time in half. It is the development director’s job to maintain the balance. And see the point above. He could deliver faster.

If Bob HAS to act,

“We’ll do it gradually. Baby steps. This will take a loooong time”.

What this means is “We’ll pretend we’re doing it so you’ll stop bothering us”. He’s not committed to improving the way work is done. It results in one or a few “pilot” teams experimenting other ways of doing stuff, without adequate measurements in place to check for success. Management support lacking, the teams rapidly lose their way and revert to the old practices or they are told to do it because there are no “visible” improvements.

And then, he can always use this:

“We hired cheap people and they are not capable of learning new practices”.

So you looked for inexperienced people, that’s OK. You didn’t look for the dumbest, did you?!? Even if they are dumb, they learned the current practices – why wouldn’t they be able to learn new ones? Unless… you DO TRAIN your employees, don’t you?

And what if change comes from “below”? Bob has a zero-tolerance policy for programmers that do not obey his “religion”.

The result: the smart people look for other opportunities while the company loses its competitive edge. Of course it’s not Bob’s fault… seeing farther than tomorrow’s deadline was never his job, was it?

PS:

There is a happy face in the post, so nobody should get annoyed. If, despite the happy face, you still are annoyed by this post, you probably ARE Bob.

This entry was posted in Agile. Bookmark the permalink.

3 Responses to Now is not a good time

  1. Jesus says:

    This blog rules !

  2. Todd says:

    Happy face… Always work. No matter what you do put a happy face and you will feel better

    My new boss is Bob… He makes me feel like Todd. (Todd has no opinion… Todd is sad…Todd is looking for a new job… Todd is thinking about leaving)

    Nice post…

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>