72

A few months ago, I was temporarily (until the end of this year) put on another team. There is one other developer, and we've been struggling in our day-to-day interactions from day one. He's not used to working with someone else, nor to teaching/explaining code, nor to peer-reviews or working with git and merge requests. The entire team is just transitioning to working Agile/SCRUM, and he seems reluctant to make that change.

We both seem to be struggling with a generation gap. At the same time, I probably have been wrong by not addressing this earlier and just deciding to suck it up for a few months, leading to a bigger blow-out than immediately addressing every small thing would have done.

A few weeks ago, despite my best intentions to just sit this one out, I blew stuff up (we had a row about adding dead code to the code base and some scope creep, both of which I was refusing to do), leading to him and his work being scrutinized by other developers and managers.

I've spent quite some time that week having talks with him, the scrum master, other senior developers, managers and product owners. Overall, I came out relatively unscathed, and I don't think this has damaged my career in any way, nor do I feel threatened it may at any later point.

But I've burned some serious bridges with this co-worker it seems. I get the impression he's trying really hard to find some fault in me, some flaw that he can use to 'even out' what happened between us. Something he can use to create a situation like I did that week, but in reverse, with me being the one being scrutinized by managers and other developers. The last straw for me was when he accused me of doing something that version control shows I had no hand in. I've already again contacted my manager and let them know about this; they advised me to keep track of incidents closely and make sure everything I do goes through the issue tracker and version control.

This week, I learned that plans have changed a little, and I'm stuck with this co-worker for another month. This means I have a few more weeks of working together with this co-worker to go through, and I'd really like not to have to work in a way that creates alibis everywhere. I'd like to be able to work without having to look over my shoulder every moment, without him giving me the impression he's seeking revenge.

How do I best manage those last few weeks of working together with this co-worker, so that there will be no negative influence on the impression people have of me or of my career?

  • 4
    @JustinCave in a way, I was not disappointed. In another, I'm still mad at myself for breaking my resolution of 'just sit it out, don't meddle in it, it's not really your problem'. I've added the details of what our argument was about, hopefully that'll clarify the situation a bit. – Tinkeringbell Dec 18 '18 at 19:32
  • 3
    @JoeStrazzere Yes... I did try to make clear this was solely about the work, not him as a person, and expressed my regret at the way things went (I have not apologized for the outcome though). I don't really see how I can apologize for something managers and other senior developers seem to find good coding practices, but if you know one and think that may likely solve the situation, that's likely to be an answer? I'm personally not sorry for refusing to add dead code or have yet another scope creep delay the delivery of functionality. – Tinkeringbell Dec 18 '18 at 19:36
  • @Tinkeringbell You're asking about the impression of other people, but you haven't mentioned WHO sees these actions. If the only ones seeing these accusations are you, him and your manager, then yes, the below answers of being perfect should be fine. I think the answer changes a lot if he's doing the accusations in front of coworkers, or complaining about you behind your back, which none of the answers address. – Mars Dec 19 '18 at 2:19
  • @Mars Until now, it's been the manager, me and him, yes. One of the things that I'd like is keeping it that way. – Tinkeringbell Dec 19 '18 at 17:53
84

The only thing you can do is to do your work as normal, following all the proper procedures of your company. Limit your communications with this co-worker to only what is essential for this project and make sure that all of it is in writing. If you follow this path, the co-worker should not find any faults to expose.

64

Documentation is your friend.

In a scenario like this, the best thing you can do is clarify any potential point of uncertainty between you and this developer in writing ( email ). You won't have to do this for long obviously, but if you feel as though they may come after you in some subtle way, it is only prudent to attempt to protect your self.

Also, be sure to keep your manager in the loop on any interactions that have the potential to become a land mine. This way you can attempt to avoid having any additional departments becoming involved ( HR comes to mind here ).

I know this will be a bit of a documentation pain for you, but it is the best way to protect yourself.

  • Many companies use Skype / Skype-for-Business. Chat is a valid means to document interactions. It's okay to interact that way, but be careful when you start a conversation on Skype you should 'follow up' on it to document your mutual decisions. – Kevin J. Rice Dec 19 '18 at 22:42
  • If it's been a pain the OP would likely have not done adequate documentation, and if he's let stuff slide in the past, as suggested in the op, there will be damaging documentation (i.e. lax code reviews) this co-worker can use against him. Reactionary documentation is simply not good enough- you have to keep everything up to date at the time aim for consistency. The last thing you want is your co-worker finding a smoking-gun- taking care of it after the fact is a stretch (and conspicuous). – Izzy Dec 20 '18 at 12:12
38

I'll put in a vote to try to clear the air by apologizing if only for the results if not the underlying dispute.

It sounds like you ended up causing your coworker a fairly large amount of grief over a relatively minor technical dispute. It sounds like you were technically correct. But you can still apologize for the results because it sounds like the impact is grossly disproportional to the underlying issue. You say that it hasn't damaged your career which implies that it has (at least potentially) damaged your coworker's career over something that's a pretty venial coding sin. From your coworker's perspective, it could realistically look like you were looking for a reason to throw them under the bus from the time you came over to the new team and you finally found it. That could well be causing them to expect that they need to look for something that you've done wrong if only to protect themselves.

It doesn't have to be terribly long. But I would take the coworker aside and say something like

"Hey coworker. I just wanted to clear the air with you. I'm sorry that I ended up bringing management down on you. That wasn't my intention. I should have found a better way to work through our disagreement. I'm sorry."

Of course, even if you're totally sincere, there is no guarantee that the coworker is going to stop looking for reasons to return the favor and throw you under the bus. But ideally, you can convince him that you're not out to ruin his career over relatively minor dispute and de-escalate the situation.

You should still make sure that you are following every last element of your company's coding standards, development processes, etc. and you should make sure that you're documenting your interactions in case something comes back on you. But a solid apology may improve the atmosphere at work substantially.

  • 10
    Yeah, an apology goes a long way sometimes – Kilisi Dec 19 '18 at 11:19
  • 9
    Maybe this belongs in Interpersonal Skills. I have had occasion to apologise when I felt I had not done wrong, but it was the right thing to do. I sat and looked at the telephone, said three times "I am not my father * ", and just did it. – RedSonja Dec 19 '18 at 11:48
  • 1
    * insert any macho idiot you know who would rather die than apologise. – RedSonja Dec 19 '18 at 11:48
  • 4
    @RedSonja There are two kinds of apologies. There's the one that says "it's all my fault, not your's". And there's the other one that says "I can see your grievance and I empathize with it". Often, the latter kind is all that's needed to mend a broken relationship, although it doesn't entail bargaining about who's guilty or not. It's not a fauxpology, however, because it actually acknowledges the grievance. – henning Dec 19 '18 at 17:29
  • 1
    @RedSonja Of course, that presumes the person asking the question isn't a macho idiot. They've already demonstrated they see no wrong in throwing this other person under a well-aimed bus. You. Just. Don't. Do. That. – Rich Dec 21 '18 at 0:22
28

Just follow your manager's advice: Make sure to log all your work through the ticketing software, do the work you're assigned, and that's it. If you are asked to do something, your response should be "send me a ticket". This should be your standard practice anyway, but it should really be your standard practice if you feel your work is under extra scrutiny and you need to make sure you can account for what you've done.

  • In a way, OP can treat this as a really stressful "best practices" training. – Tomáš Zato Dec 19 '18 at 11:59
7

Be sure to discuss this with your manager, and ask how they want you to approach this. In a nonconfrontational way, ask why you're being made to work with the guy for the extra time.

By now, everyone who would be making that decision ought to know that there is friction between you, and it will interfere with your ability to get things done. The question, then, is why. It could be that there is an absolute need for additional work to get done, and this is the only way to do it. If that's the case... well, sometimes companies ask their workers to do unpleasant things. Buckle down, keep yourself covered, and tough it out.

It's possible, though, that they're building a case against this guy, or that they're trying to use this as a tool to push him into accepting what they need him to accept, or both. He's resistant to change, he uses poor coding practices, and a recent event just revealed some major issues with his behavior and/or attitude. As a result of that event, you're being called on to work with him longer. That at least suggests that things might be moving behind the scenes.

Admittedly, at that point your best answer is still to buckle down, keep yourself covered, and tough it out, but if you can understand the goals and expectations that management has for you, you'll likely be able to do it better, and may find it easier to get through.

On the flip side, it might be worthwhile to at least try to approach this guy from a place of compassion while you're here. He may have rage on the surface, but underneath I bet there's a lot of insecurity right now. If you can figure out where he's coming from enough to offer him some sympathy, it might help smooth things over. (Admittedly, it might also enrage him further. A lot of it depends on how well you do the "figure out where he's coming from" part.)

1

In addition to the other answers, you could apply for some annual leave. If approved it'll serve to both protect you (can't make mistakes if you're not working) and relieve you from the stress of having to create alibis everywhere.

  • 3
    This is avoiding the problem but the problem will still be there when the OP gets back. And by that time people's attitudes may have hardened even more. – StephenG Dec 19 '18 at 11:53
  • 2
    This essentially is saying "run from the problem", which in this case in not good advise. – Mister Positive Dec 19 '18 at 14:15
  • If the op has a month of time off they can avoid the problem completely – reggaeguitar Dec 19 '18 at 18:17
  • @StephenG Respectfully I disagree - the OP says the problem will persist for 1 more month, they're asking for advice on surviving that month – Scoots Dec 19 '18 at 19:07
  • I see where you're coming from, although I do think the OP is better to deal with it positively and try and mend fences rather than leave a bad impression behind. You never know when in the future you may end up dealing with some of the same people again. – StephenG Dec 19 '18 at 19:37
-1

Another option: Give them what they want.

If they're looking for serious fault, there's potential appeasement in voluntarily taking some petty blame. "I'm sorry about how this happened, I could have saved you from this if I had been firmer in standards before this happened or introduced this better." As well as "I could have made it more clear to everyone involved about how minor an issue this should have been."

You could also exercise his desire to find fault in you by requesting he reviews all your code - he'll get his fix for telling you off over some petty issues and you'll still be safe as houses. Of course, any demonstrably unfair actions your co-worker takes during a review can be used as evidence against this co-worker.

Try your best to keep them, and yourself, above board.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

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