Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

After a recent restructuring happened in our corporation - I have got a new line manager. He is generally ok and not as sneaky as the previous one. By "sneaky" I don't mean he was an evil manager - I just refer by this term to someone who keeps most of the information to himself and doesn't share with other team members in order to be the only "go-to person" - you get the idea.

But nonetheless I had managed to maintain quite a good relationship with my previous manager - and I had been quite productive.

My new boss is more open, which is a good thing, but I really hate one his quality - he likes to race the coders - by giving the same task to a different developer in order to fix the issue ASAP. As you may have already understood the information does NOT flow freely in an environment like ours. So the person who my manager was talking to 10 minutes ago might be starting work on the same issue I am working on now. It happened a few times, and every time I overheard that there might be someone working on the same issue - I did go and ask my manager - who owns the issue - but he usually was very evasive in his answers.

So my question is - how to stop my manager from doing it? In our small team of half a dozen developers I am the most senior one and I am usually spared from the racing but when it hits me it really gets to my nerves.

And one more thing: I am not implying that my manager is a bad/evil boss, neither I believe in that the world is or should be fair, I just want to find a way to make him stop racing me. One thing at a time.

share|improve this question
6  
Don't you have a tracking system where there is one owner for each task ? –  Jonathan Merlet Aug 25 '11 at 13:03
5  
Maybe you should tell him about pair-programming... –  TGnat Aug 25 '11 at 13:05
8  
The best way to tackle your boss is to hit him at an angle –  Woot4Moo Aug 25 '11 at 19:18
    
Is there a prize for winning the race? Does the competition stay fair and help bring the best out of people or is it more like "Mean Girls?" –  JB King Aug 25 '11 at 20:43
2  
I had a boss that did this. When he assigned me something, then I heard him assign the same thing to someone else, I asked him point-blank "do you think I can do the job? If so, why give it to some else - that says to me that you don't trust me." I'd like to think he stopped doing it, but he left the company too soon for me to truly assess any changes in his behavior. –  StevenV Aug 25 '11 at 21:03

5 Answers 5

First question is : why does he do that? Is it because he likes to compare different answers and pick the best one? Is it because he likes to see who can do it the quickest? That's rather important to tackle the behaviour.

I understood from the "racing" part it's the latter. Then a simple calculation can show him why this is not exactly the way to go.

Say he gives task A to coder A. He starts working and fixes the task in an hour. He also gives task A to coder B. That one starts working on it as well, and after 45 minutes gets to hear to problem is solved and he can go on to the next task B. He solves that in 1 hour, and coder A has been working on that one as well for one hour.

Apart from the problems that can arise when two coders mangle with the same part of the code, he got the task A fixed in one hour for the cost of 1h45 minutes, and task B in another hour for the cost of 2 hours.

Even if coder B would have fixed task A it in 1h30min, it would still have been cheaper. Especially because the 45 minutes from coder B are completely non-productive, and so lost money. Say that coder B would have fixed it in 1h30min, coder A could have solved task B in the meantime as well: 2 tasks fixed in 1h30 minutes for the price of 3hours, versus 2 tasks fixed in 2 hours for the price of 3h45minutes. Which one is more productive then?

To get more into manager speech :

  • racing will likely frustrate the coders that are working on something for some time and notice that it has been useless.
  • racing also will cause the impression that whenever you get a task, somebody else is working on it as well. So why hurry? (in case the coders are getting bonusses on accepted code, the racing will likely lead to faster and hence less secure coding. Opposite effect, same argument)
  • racing is not cost effective, as it gets less done in the same amount of time for a higher price.

If your manager knows something about programming, you can say that his approach is serial, and parallel goes faster.

share|improve this answer
4  
+1 for "why does he do that?". Maybe you don't have all the information and he has a reason to do this (good or not ? that's another question) –  Jonathan Merlet Aug 25 '11 at 13:03
    
Ususally when you need something done as fast as possible, cost is not a factor. Of course if one coder does it in 45 minutes the other person should be told to stop unless you want the safety of a second solution shoudl the first one pan out. Sort of a hedge to the bet. –  JeffO Aug 25 '11 at 20:50
    
@Jeff O : I show you that this doesn't result in getting things done asap, in contrary. You get the first thing done as fast as possible, but all the rest inevitably will be done slower. So: more cost and less speed, seems like not the most economical thing to do. –  Joris Meys Aug 25 '11 at 22:13
    
I'd say the approach is "serial," not "serialization." –  Matt Ball Aug 26 '11 at 1:34
    
Perhaps he's playing games. So play a game back. When you hear that somebody else has been assigned the same task - stop working on it. When asked: "Well, you gave the task to Fred. Its a waste of time and money for 2 of us to do it, so I stopped. This is better for the company." See what happens. –  quickly_now Aug 26 '11 at 11:13

IMHO Your manager is wasting resources and time by having multiple people work on the same project. If he's covertly trying to evaluate skill/productivity I feel that there are much better approaches, otherwise it might be valuable to understand what his actual reason for doing this is.

With that said, with any game there have to be players ... if the players won't participate then you don't have a game. If you feel you can approach the manager directly and express that his behaviour is probably hurting the team (productivity, morale) more than helping, he might be inclined to rethink it.

The not so nice answer after that is that as a team you can respond passively to his behaviour by not participating in it. Don't race. Do your job, produce your solutions, but don't race. It might mean that 1 coder on your team will race and look like a superstar to that manager ... that's something you'll have to live with.

share|improve this answer
9  
everytime you get a job, ask around and see if anyone else is doing it - if so, decide amongst yourselves who is going to do it and let them, the other can slack off for a while then submit a "remarkably similar" solution. :) If management wants to play silly buggers, show them the staff can play the game better. –  gbjbaanb Aug 25 '11 at 14:02

Send this question in an email to him. You discribed clearly what the problem is and why you didnt like it.

You also might want to have a word with your colligues. Chances are they feel just as annoyed as you. He will have to listen if sevral employees raise the issue with him.

share|improve this answer
2  
I'd only send an e-mail on behalf and in the name of the team. Don't do that if you aren't backed up by the whole team. –  Falcon Aug 25 '11 at 13:12
3  
@Falcon, I disagree, if he is most senior he should have a trust relationship with the manager. If he talk to everyone else first and send as a group it would seem like mutiny to the boss. –  Pedro Aug 25 '11 at 13:27
2  
@Pedro: I disagree. No one has a trust relationship to a new manager from the beginning. Respect and trust is earned. If it's mutiny, so be it. A boss with such practices hasn't deserved better and you don't want to end up as his single scape goat when talking to him personally. –  Falcon Aug 25 '11 at 13:44
    
I'd try an adult conversation first, in person, so he can measure how far he can go based on the reactions he sees. Chances are the manager will stay for a long time, screw up the relationship right up front doesn't seem a good idea. –  Pedro Aug 25 '11 at 14:12
1  
@Pedro: Right. So I don't wanna be the unlucky guy who went to talk to him, just to find out he's an egomaniac and now thinks I question his lead. If you can talk to him, if he's reasonable, he'll listen to the team as much as to a single developer and won't think of muntiny. If he's not, you'd better be backed up! If his character is not well known yet, I wouldn't risk anything. –  Falcon Aug 25 '11 at 14:52

You are not going to be able to solve this problem indirectly. There are too many possible reasons for why the manager is doing this, and many possible levels of awareness of his own actions, as well as their consequences.

From what you described, it sounds to me like the main cause for this problem is a lack of communication at your company. So, the solution I propose is to have you perform some of your manager's work for him:

Talk to your manager

You might have to do this multiple times. Try to find out what value he derives from the racing behaviour - there are lots of possible causes! Just off the top of my head - Is it efficiency? Is he trying to evaluate his employees? Does he realize that the racing programmers are not collaborating? Is he having trouble making sure that there's enough work to go around and trying to protect the team from downsizing by creating extra work? Etc...

Talk to your team members

Find out if anyone else has noticed this behaviour. Are they ok with it? Do they understand what your manager is trying to accomplish? Find ways to provide him with what he needs, while saving yourselves the aggravation. I'm sure you can all look busy even if there isn't much work, and only one of you is working on a problem. Maybe cooperate to finish work faster if he's trying to go for efficiency instead. And if he's racing you to help evaluate which one of you is the better coder, game the system.

Add transparency to the system

Introduce your manager and co-workers to bug tracking tools and the features that they contain to help track who is working on what, and at what time.

share|improve this answer

I would want to know how this factors into my evaulation. Is it a test? Is this his idea of a good time? If this is truly an "all hands on deck!" emergency excercise then suggest letting people collaborate to solve the problem quickly and with a better solution.

For the next challenge, let him put one person against a small team and see what happens.

Sorry you're bothers by this truly annoying practice, but you may get some relief if this isn't part of your evaluation. If it is, you'll just have to start beating everyone.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.