views:

1543

answers:

13

Programmers as a group have a not exactly ill-deserved reputation for thinking little of others work/opinions and thinking a great deal of our own. I know that, I see it in myself all the time, and I consciously let such things slide on that basis when I see them.

But...

I'm in the unfortunate position where I'm working in an environment with dozens of things I strongly disagree with*, not one or two. Further, because I'm a relatively new hire and 10+ years junior to my colleagues who've created their working environment over 20+ years (inbred? oh yes) I'm making zero headway getting my point across. The stock answer being "it's fine" or "this is how we do things here".

So my question is: what can you do to try and change such entrenchment?

Should you talk to management if no-one is listening? Should you try and make big statements or subtle pushes? And when should you give up?


* A few examples (but only a few, I'm trying not to be whiny) because I know you'll want 'em

  • There isn't a project manager in the company, nor even rudimentary PM software
  • There's no bug tracking software
  • Software testing is "reputation based", involves excel and a few hours of the phone staff time
  • Future plans include replacing IIS and ASP.NET sites with apache and C dll's


Quick Edit: I'm not insane people, I am looking for other work, but everyone knows what the world's like right now, so I'm trying to approach this in a "make the best of things" way. I'm also concerned about how my reasons for leaving are going to sound in my next interview.

+16  A: 

You should leave. I know the economy is in the tank and all that kind of jazz, but there are just too many things going wrong in this environment. From your position of limited power you just can't expect to fix the firm. Job moves are usually good. I've made a mistake or two in employment choices during my 14 years, but usually things have gotten better through moves, not worse.

Find a good company to join. Don't fix the one you are in.

David Leon
+1, why was this voted down?
Paul
If they haven't even started using bug tracking software in 2008, I'd consider the effort required to bring people up to speed to be too great. At this point, it's worth covering yourself: the more time you spend there, the more dated your skillset becomes.
Greg D
-1, The OP is asking for specific techniques to help him in the situation he CURRENTLY IS IN. Getting him to leave may help his career in the long run, but it doesn't address the question at all. Leaving may not be an option, and there's value in developing the skills to affect change like this.
BQ
Leaving is passive agressive, especially if the desired outcome is to change the situation in the current position. He should first seek to change his environment through official and/or unofficial means before resorting to leaving. This never solves anything.
Anderson Imes
Passive agressive? Surely you jest. You must be trying to use an old buzz phrase or something. If you have stumbled into the wrong employment situation, the correct action to take is to find a good employment situation. 'Nuff said.
David Leon
Shouldn't he try to improve the environment he is in, even if he's looking for work elsewhere? No work environment will be perfect, and any experience improving your current environment will be helpful later if you need to do it again.
Ben Gartner
+2  A: 

You're definitely in a difficult position, because it's difficult to make strong statements about how you think things should be done without offending the people who've set things up the way they are. (Even if it is really dumb and you disagree with it.)

Honestly, since they are all quite senior to you, you're going to be working uphill to convince them to see things from your point of view. That doesn't mean that you shouldn't try, though! The best thing you can do, really, would be to make a comment to a project manager to the effect of, "I have a concern about the way that this is being done, and this is why..." If you lay out your concerns with strong backing evidence (so that it doesn't appear to just be personal preference), then you've done about all you can.

Unfortunately, if it falls on deaf ears, you're kind of stuck. You can try and subtly influence things "in the trenches", though.

UnhipGlint
in my specific case I have no PM's of course, but the point stands generally
annakata
+31  A: 
  1. Find an ally.
  2. Start small.
  3. Don't feel bad about setting up 'skunkworks' development software like PM/tracking systems.
  4. It shouldn't take long for your group to become known as "those guys who have low bug rates/ know what they're doing"

If you are really the sole voice, this company might not be for you.

Jimmy
tech team of 7 people, I really am the only one, but maybe I *can* recruit
annakata
Agreeing with Jimmy here - if you don't want to leave, that is...
Marty
at the moment I believe this to be the best response generally, but I'd still like to hear answers about talking to management and when to accept defeat
annakata
I like this and what Paul says - picking battles is key, and don't find at every opportunity. And good luck, either way.
peacedog
I agree, influence by your character/ethic and results - it's a hard fight but if you think its worth it and you pull it off - you will change a lot of minds.
BPAndrew
+8  A: 

Last time I was in that position, I carefully prepared arguments, and set them forth in the most professional manner I could. By the time I had managed to leave the company, I figured I'd had zero influence. I don't know how to manage your situation, but I know I wasn't successful.

If you get a chance to work for a company that's better run, take it.

David Thornley
+1  A: 

Sounds like you're answering your own question. Leaving at the moment might not be a good idea, but it never hurts to keep an eye open for a better oportunity.

Paul
+24  A: 

Two big things:

  • Pick your battles.
  • Manage by fact.

The first one is very simple: even if there are lots of things that need to be fixed, pick a very small number (1, 2 or 3) of simple, fixable problems and concentrate on fixing those problems first. If you spread yourself too thin you won't get anywhere. If you spend all your time fighting, you'll never fix anything. Pick carefully, since with each little fight you win, you gain the ability to tackle larger and larger issues, but with each loss you lose your reputation.

The next is to stick to the facts. The worse thing a techie can do it to resort to games or politics. When you're dealing with issues, it's best to get all of the facts, verify them, and then stick to them. No emotions, no intuition, no politics. If you want to put the strength behind what you say, then you have to be above personal attacks, which means that you have to have a rep for sticking to the facts and getting them right. If you're bluffing, or guessing then it will eventually come out, and you'll lose all of your credibility.

Sometimes it takes a while, but if you're patient and consistent, over time you can gradually fix a huge number of different issues in your workplace.

Paul.

Paul W Homer
In my own experience, surprisingly few people respond to facts. Responses like the ones described in the question imply an emotional incentive to keep the software group in stasis.
Greg D
I'm trying to keep the question general, but in my specific case there *is* a palpable aura of obstruction and negativity as GregD senses. I feel the company needs serious new blood, but there's a lot of self-interest here.
annakata
People can't argue with facts, so if you don't make it personal they have no reason to dig in. If they're not responding, it probably because your not really presenting facts or you're giving them some other reason to disagree.
Paul W Homer
I think you're being considerably over optimistic about human psychology - facts have never been a problem for politicians or priests so far. Homer Simpson: "Pfft! oh sure, you can prove anything with facts..."
annakata
Yes, but only because they've lost their reputation and you no longer trust them. Think carefully, is there someone you know, whom always tells you the truth, so that if they lied you'd never know it? That's how you want other people to see you, that way they'll listen (without making it personal).
Paul W Homer
Downvoted, since if the current power structure is not based on technical merit one needs to be a skillful politician to change it from within.
Totophil
Upvote, you don't just "do politics" or "do facts" everything is political. You do politics but via facts this is the win in this scenario. Politics _without_ facts is dangerous ground because what is your explanation for being sneaky otherwise?
Quibblesome
+17  A: 

Try looking at it from the other perspective. To them you are:

  1. The stereotypical "new guy" with less than half thier "career experience" and "none" of thier "business experience" with that company.

  2. You want to completely change a "working system architecture" without concern for the business or technical considerations that created it.

Try to keep in mind, "they know a lot more about the system than you do." Approach them from that perspective, and try to understand what business or technical situations led to the current system.

Just the fact that you bother to ask and listen to them give you the history will make them more open to your suggestions.

Ron Savage
totally right. for an (in his eyes) successful professional, you're arguing no more than a bunch of buzzwords.
Javier
good points, thanks
annakata
+14  A: 

Ghandi said "You must be the change you want to see in the world." That means you need to introduce into your own work every good habit that you would like to see in other people's work. For example, set up a bug tracking database for your own personal use, and continue to use it at all times. Tell people how much it helps you and encourage them to start using it too. Slowly but surely, the viral spread of your good habits will make the company a better place to work.

Oh, and don't forget to keep checking the job pages... :)

chimp
+3  A: 

I'm a big fan of repairing things but this sounds cheaper to replace than repair.

replace == job change.

PS: I bet no source control either, right?

Andrei Rinea
In fact they have no less than *4* different source control systems in place, and one of my other complaints is that I'm required to get latest on the *entire* source tree before I build anything, and I'm not allowed to integrate with VS. It would almost be better if there was no source control.
annakata
wow... that sucks..
Andrei Rinea
o0 wow that's crazy
jcollum
+6  A: 
Totophil
+1  A: 

Facts. All engineers believe in facts and science so this is the best chance of win.

Measure things and find out where problems lie (e.g. rework / bug ratios due to a lack of QA), if you have some stats then seniority doesn't matter it's up to other people to disprove your facts or listen to you. Either way they're engaging with you about these issues which is a plus. Compile the information and find some way of discussing the problems in the open.

Be careful to focus on the problems and not the solutions, otherwise people might just consider your figures to be a means to an end and start ignoring them. Offer many solutions, not just one, discuss the trade-offs and recommend the solutions you like.

Quibblesome
I think you're assuming too much reasonable behaviour of humanity - the major problem I'm personally facing is getting anything positive done in the face of pessimism, jobsworth apathy, and "too busy" crap. That last really annoys me because without better policy it's self-fulfilling.
annakata
Well you have to find power brokers who are having difficulties and put the ideas to them. If you're expecting a complete turn around then you're probably out of luck, you're best bet is changing things one step at a time, little baby steps. Might be better to seek greener pastures.
Quibblesome
A: 

Lots of good answers here. I would prefer Ron Savage's answer, to look at it from their point of view.

In addition, maybe it sounds sappy, but there are unspoken non-technical forces at work that are very powerful, precisely the positive or negative tone of your relationship with your colleagues. There is no reason not to have a positive tone. For example, no matter how they work, are they bad people? If you were given an assignment to find something positive or praiseworthy to say about each of them, I'm sure you could find plenty. If any of them had a personal emergency, wouldn't you go the extra mile to help them, and vice-versa?

When you determine that you're going to have a positive, friendly, respectful, helpful relationship with your colleagues (maybe you have already done this) then progress on mere technical issues is much easier. Otherwise it is basically impossible.

Mike Dunlavey
Assume for the purposes of the question that an initial (say, 18 months) attempt to give them the benefit of the doubt and assume an engaging, questioning demeanour has passed and the subject is now in a position where such investigation has determined that the work environment actually is genuinely insane. Summary: I tried to play nice, I got rebuffed: what now?
annakata
@annakata: I learned this lesson the hard way, by getting fired, followed by taking a Dale Carnegie course, so maybe it's not as easy as it seems to me now. Saying you tried to play nice but got rebuffed sounds to me (maybe I'm wrong) that you kept it on a technical level, rather than on a human level. I'm not saying a positive tone always wins your disagreements, but a negative one is guaranteed to lose. If you can count these people as friends and good references, even while you seek other work, then I think you're doing it right.
Mike Dunlavey
... but I know what you mean. I have worked with people who, for example, considered coding standards among the most important issues, or on the other hand had a total lack of them. No progress was to be made, but nevertheless they were good people. If you are interviewing for a new job, you can say you are looking for what you consider a more professional environment, but never, ever, bad-mouth your former colleagues.
Mike Dunlavey
... because if you do, the interviewer will conclude you are a bad-mouther and will do the same in his or her organization.
Mike Dunlavey
+3  A: 

try No Pants Wednesday

George
so did your account get hacked or what?
annakata
no. I think it's a legit strategy in your situation
George