Slashdot Mirror


How Can a Programmer Make Everyone Happy?

Nuttles1 asks: "Ever since I became a professional programmer, 4 years ago, I have struggled with giving my superiors everything they want. For instance, I have a programming supervisor that stresses correctness in programming first, amount of time needed second, features third, but I also have upper management stressing features and amount of time needed first and correctness of programming a distant second. The nature of my job requires pretty strict deadlines so time is not very variable. So, things get done in a way that fits the time allotted. The problem is that I don't make my direct supervisor happy because of the time constraint shortcuts in correctness must be made. The other problem is that, because I perform within the time constraints, they think that the time constraint can either stay relatively the same or that they can be squeezed a little more. Upper management also expects the advantages of having a strict programmatically correct program (code reuse, loose coupling, ease of maintenance) and are at loss when things are less then perfect after the initial release. It doesn't seem like a programmer can come out ahead. I have read many books but they usually have a utopian viewpoint or view time to develop as a variable. In real life, how do programmers handle this situation?"

7 of 174 comments (clear)

  1. How To Deal With It by RealityMogul · · Score: 4, Funny

    Here's the thing, just deal with it for awhile. Make some money, and then leave for another job that has smart people in charge. Wannabe programmers that are in management just screw everything up cause they think that if they follow the one guideline they remember from a 900 page development book they read in 1983 while studying COBOL, that everything will be perfect. Chalk it up as experience, or "paying your dues", or if you're past those points in your life, deal with it or move on.

    Now of course, if you're working on some important systems like aviation, military, or any of the MMORPGs I play, then shutup and get back to work.

  2. Three methods I've used in the past by Marxist+Hacker+42 · · Score: 5, Funny

    After 10 years in the industry, I've got the following three methods:

    1. Do everything everybody asks you to, even if you personally think it's contradictory. Works in companies that have a strong chain of command, but results in code you would never want to include in your interview portfolio. And gets you targeted for first layoff.

    2. Go your own way, but do plenty of software engineering to back things up. Gets you targeted quite often for layoff, but since you have the numbers, you rarely get laid off- this method has resulted in up to two years in the same job for me. Results in code you can be proud in, but you'll never meet a deadline, and that will eventually get you fired, so to give yourself extra time always multiply all estimates by 4 (Scotty school of engineering).

    3. Give up, and offshore your job. Everything gets coded exactly to spec, even when the specs make no sense, and nothing gets done right- but at least you'll end up doing what you're told, until your bosses find out, and then they cut out the middle man (you).

    In other words, I've yet to find a winning method in the situation you describe.

    --
    SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  3. Get them together by dtfinch · · Score: 2, Funny

    A good way to deal with conflicting bosses is to make them agree.

    Or maybe it's just your job to write correct software with lots of good features in a fixed amount of time. Get it done or you're fired.

  4. Hi Peter! by Cthefuture · · Score: 4, Funny

    Sorry, just thought this fits too perfect:

    Peter: It's a problem of motivation, all right? Now if I work my ass off and Initech ships a few extra units, I don't see another dime, so where's the motivation? And here's another thing, I have eight different bosses right now.

    Bob: Eight?

    Peter: Eight, Bob. So that means when I make a mistake, I have eight different people coming by to tell me about it. That's my only real motivation is not to be hassled, that, and the fear of losing my job. But you know, Bob, that will only make someone work just hard enough not to get fired.

    --
    The ratio of people to cake is too big
  5. Always postpone meetings with time wasting morons by mario+contestabile · · Score: 2, Funny

    In moments like these, I recall a certain Dilbert strip, where pointy hair boss tells Dilbert:

    PHB- This project is impossible and can't be done.
    D- It's finished.

    PHB- The project will never work like this.
    D- It works perfectly.

    PHB- There's a spelling mistake here.
    D- That's a number...

    --
    http://superconfigure-supergroove.appspot.com/
  6. Re:hmmm, is there a missing party here? by askegg · · Score: 2, Funny

    Yes - God forbid that you actually help the customer. They will hate you for that. Dodge and weave whereever possible. Delegate where you can and take no responsibility. This sort of internal empire building does nothing for the customer and ultimately nothing for the company. I will be modded as a troll.

    --
    I don't make predictions, and I never will.
  7. How do programmers handle this situation? by Crimsane · · Score: 3, Funny

    We drink.