How do I deal with an explosive worker?
July 14, 2011 12:25 PM   Subscribe

I got out of a freelance client meeting last night and I'm still shaken up about it. A coworker was visibly furious with me, and I'm still not understanding what the hell happened. I want to know what my next moves should be.

I've had a long time dream client off and on for about 10+ years. 2 years ago he hired a backend web programmer for a new project. Site's just now live, but is still clunky, so all 3 of us need to work together to clean up. I'm in charge of UI and front-end development.

I work a day job and can meet during lunch, nights or weekends. The issue of my availability has never brought up to me as a problem. The client's always been understanding. The programmer is full-time freelance who prefers to work from 4:30am till 'whenever his wife comes home.' After his outburst last night of how disrespectful I was, he (prog) laid into me how impossible I am to get a hold of, how dismissive I am, and how it's such a pain to get in touch with me since I can only meet at nights. (I'm prompt with my email replies, and he's on my chat window. Never told him I was too busy, etc. In fact I feel he could be more prompt with my emails). When I was surprised and said, he could email and IM me anytime he wanted, his problem became that if he chatted me during my day job, sometimes I wouldn't have a file until I got home, or that my work computer had restrictions, etc. This doesn't happen often, by the way.

Last night we met to discuss about who's doing what, since this guy had apparently been late with his duties, and the owner's pressing on him. The programmer had been blaming me, saying I'd broken all kinds of stuff. (When I asked what that was, no reply.) So last night's meeting was supposed to be an hour long, and we had a bunch of stuff to go over. When this guy talks, it can be a drawn-out process. In the past I'd spent 3 hours on the phone with him at a time, because I would try to explain something that's not working, and he'll spend the time debugging the problem and won't let you move on to the next explanation. For example, last night, I told him that the navigation section of the site on the live site did not reflect the development site, and could he please update it. He attempted to problem solve and see why that was right on the spot. We waited 30 minutes while he compared files and we had already been there 2 hours. We'd just begun to scratch the surface of the meeting. I asked him if he could debug that on his own time. This is when he got furious.

He was scary to look at. His voice was wavering with fury, he had all sorts of physical ticks where he would stretch his arms into my space, like he was going to explode out of his seat, so I had to move. He slammed his books shut, saying things like, "I'm the slow person. I don't know anything" when I'd try to talk diplomatically about the problem. The owner had to calm him down and sort of 'talked nice' to him (as one would to a child) to calm him down. The prog is a guy in his late 40s 50s.

Otherwise, the owner just sat there. The fact that he didn't speak up for me makes wonder if I did something wrong. He's hard to read, and I"m sure he cares most about the project's success foremost, and I understand that. But I came out of that just shocked and unsure what the hell to do next. I'm going to do my job, and let the chips fall where they may, but I can turn this into a positive and productive thing, and I'm unable to see what that is at this moment. Please help me see what that is.
posted by anonymous to Work & Money (22 answers total) 2 users marked this as a favorite
Fire this guy. If you can't for some reason, by no means should you allow him any contact with clients.
posted by kindall at 12:28 PM on July 14, 2011

Oh wait, this guy is an employee of the client? Looks like he's trying to cover his ass for things he didn't get done by blaming it on you and has anger management issues besides.

Tell the client you won't work directly with this clown.
posted by kindall at 12:30 PM on July 14, 2011 [33 favorites]

It sounds to me like the guy works for the client and that you have no control over him.

Tell the client that you have done all you could with this guy and that his actions of late have spilled over into abuse and that you are no longer in a position to work with him directly. Ask what options there are. It's possible that the small business owner does not want to fire this guy because s/he has little info about what the guy has been doing - if the guy is protecting his turf, he may be the only one who knows how things work.

In running a business, you need to have boundaries. It sounds like this guy has gone over yours and that he is not being reasonable or polite. Ask the client how you can continue to work with the client, in light of what's gone on. Say that you really value their business and that you had worked together well for a long time, but that you just can't be in contact with this fellow anymore.
posted by acoutu at 12:37 PM on July 14, 2011 [5 favorites]

The other guy is the arsehole in all of this. It doesn't matter if what he said was true, how he acted was incredibly unprofessional, especially in front of the client. I presume that what he said wasn't true, and I would hope that your long-standing relationship with the client would have demonstrated that.
posted by Magnakai at 12:38 PM on July 14, 2011 [1 favorite]

I agree with he advice above. It's ultimatum time.
posted by hamandcheese at 12:39 PM on July 14, 2011

Call and get a feel for what the owner thought of the meeting. If he has a similar take on this as yourself (he too realizes the prog went off the deep end), then I would literally say: "if you want to keep me, then you're going to have to get rid of him." There's no reason you should have to put up with this shit.
posted by lobbyist at 12:39 PM on July 14, 2011 [5 favorites]

I'm a freelancer and would never dream that I could get away with nonsense like this in a million years.

You're in the position of 'seniority' here. The client has a much longer standing relationship with you, and it's obvious that he's the one who is having to be danced around. There's nothing good that will come of this relationship. Decent programmers are a dime a dozen, so replacing him should not be a showstopper.
posted by chrisfromthelc at 12:40 PM on July 14, 2011 [1 favorite]

Kindall's 2nd post is exactly in line with how I interpreted the situation; he's trying to shift blame for his own poor performance onto you. He's flying off the handle because it's more comfortable to be mad than to be afraid (for his job).

I think you should schedule a quiet, private meeting with the company owner to discuss your concerns. During that meeting, stick to the facts ("I'm having a hard time getting what I need from this guy in order to move forward") and avoid interpretations ("This guy is an asshole.") I also agree that you need to set some boundaries about what you will tolerate. This sounds ridiculous.
posted by jon1270 at 12:43 PM on July 14, 2011 [5 favorites]

Do you have any other contacts that can perform the duties this guy has been doing? Now is the time to put those suggestions forward. If hourly rates are at issue, remind the client how much of everyone's time has been wasted waiting around for real time debugging to occur.
posted by rocketpup at 12:43 PM on July 14, 2011 [2 favorites]

I don't understand what role you have in smoothing this over. You did your work and he's having trouble updating the live (or whatever) site with the code that's on the development site. What else is there, but to say, "well, you have my work, let me know when you get the site updated and we can go over everything else." Am I missing something? NMP this situation.
posted by rhizome at 1:36 PM on July 14, 2011

Can you add a throwaway email via mods?
posted by sweetkid at 1:45 PM on July 14, 2011

Well, you need better tools anyway and they will make it harder for this jackass to nake trouble. Install a Web-based ticket tracker (I like JIRA) and use it for all requests. Install a version-control system (I like Git) and put all files into it. Make the production document tree a repository, and migrate changes only by pulling from a staging/merging repository.

Making these recommendations is the best immediate response to his complaints, and will make pointing fingers much harder for him later.
posted by nicwolff at 1:56 PM on July 14, 2011 [1 favorite]

Just chiming in to second rocketpup. The others are right, based on what you said, the root of the problem is that this guy isn't professional.

But you don't throw down the ultimatum if you like the client and want to keep them. You throw down the alternative solution. Don't tell him, "I can't work like this, it's him or me." Tell him, "You don't have to deal with this guy and neither do I. I can help you find someone who will meet deadlines, not waste your time or mine, and give you a quality finished product."

Always treat your client as a partner and teammate and propose ways to move forward, not dead ends.
posted by envygreen at 2:17 PM on July 14, 2011

I'm with jon1270 on this.

You have a dream client and you don't want to lose him. The programmer is being an asshole but it's in your best interests to stay professional while keeping up the lines of communication with your client. I would meet with the client separately so you don't want have to go up against the programmer again--you want to make sure client knows you have met all your responsibilities without programmer shifting the blame or taking over the conversation again.

I know it's tempting, but I think it's important that you don't bash the programmer too much, because we have no idea what relationship he might have with the client. Unless you know for sure that temper-tantrum-programmer-guy isn't someone's nephew, old college friend or even your client's wife's bff's husband, you don't want to burn any bridges here.
posted by misha at 2:44 PM on July 14, 2011

Mod note: Follow up note from the asker.
Here's a throwaway email address:
posted by cortex (staff) at 2:46 PM on July 14, 2011

The fact that he didn't speak up for me makes wonder if I did something wrong.

I don't think you did anything wrong, but I would say that it is your job to speak up for yourself.

If somebody starts yelling at me that way, regardless of the content, I ask them politely not to speak to me like that. If they continue, I'll say something like "I'm not going to talk to you until you address me like an adult."
posted by number9dream at 4:30 PM on July 14, 2011 [1 favorite]

I'm going to do my job, and let the chips fall where they may

This seems like the right thing to do. I would just keep doing your job effectively as you have been doing and document everything - for instance, when you finish making a round of requested changes, email the client to confirm; when you deliver something, email the client to confirm. Going above and beyond this, would be: when you have to ask the developer to do something, email him with a polite request/reminder and copy the client. When something's needed from the developer, email him a few days ahead of time like "I just wanted to confirm (your deliverable) will be ready on (date). I've completed (my deliverable), is there anything more you'll need from me for this?" and copy the client. Leave a paper trail that makes it clear you've done your job and if you want to take it on, the extra task of politely nudging the developer to do his job. If the developer wants to get mad about you cc'ing the client on these emails, let him.

If this client has worked with you for ten years, I am sure he has confidence in you. He probably didn't react to the programmer's outburst because the outburst was unprofessional and he didn't think it was worth responding; it speaks for itself, people who have their act together and their work done well don't usually flip out that way.

The positive thing is that maybe you pick up a new skill of how to accomplish good work despite having to deal with flaky, unprofessional people. Basically, it seems like one possible outcome is: the project is delayed because the developer is difficult and not getting his stuff done, and the client is disappointed but knows you got your work done and it's the developers fault. The other possible outcome is, the developer responds to your requests to get his work done and the project gets done, and the client thinks you're extra awesome because you successfully managed the guy.
posted by citron at 5:40 PM on July 14, 2011

My response to the furiousness would be to sit there and look extremely bored. Don't be afraid. Be disgusted and annoyed but don't show any reaction at all, just wait until he's finished with the tantrum. The fact that the owner talked to him like a child shows that he knows what's going on and how absurd it is.
posted by citron at 5:48 PM on July 14, 2011 [1 favorite]

I had a client about the same age as your co-contractor (50s-ish, maybe a little older). He started acting a little more emotional and erratic and even angry than usual, and it turned out he was having heart issues. This not only freaked him out generally, but apparently something about the condition itself affected his body chemistry and emotional state.

You didn't say whether co-contractor-programmer-guy has always been this odd, but if not, maybe something is up with him, and maybe it will resolve itself.

That said (and I grant it's not probable), if you feel comfortable doing so, you might ask your client during a phone call or one-on-one meeting if he thinks you could be working differently or if he thinks you've slowed down the project.

It sounds like the programmer is feeling guilty and insecure, would like to impress the client, knows that's unlikely, but hasn't given it up as impossible -- and he's not good at dealing with this state. This won't sound fun, but maybe if you compliment him once or twice in front of the client it will make him behave more sanely.
posted by amtho at 7:19 PM on July 14, 2011

I emailed your throwaway email with some thoughts, anon.
posted by sweetkid at 7:21 PM on July 14, 2011

This guy obviously has some issues, i.e., it's him, not you. So by all means, CYA.
But lest it be forgotten - for your sake as much as his, and within the leeway you have - be compassionate.
posted by labberdasher at 3:47 AM on July 15, 2011

For what little it's worth, I'll speculate as to the cause of his frustration, rather than his unprofessional expression of that frustration.

You have two people developing this site, one working on the front end, the other on the back end. You can't develop both completely independently, there are a lot of top-level architecture decisions that specify how the front and back ends will pass data between them, etc. But if either the front-end or back-end guy go into this with assumptions about "of course it will work X way" and fail to explicitly communicate to one another that their assumptions are at odds, there are going to be problems.

Given that the front-end fellow has worked with the client for longer, (I'm assuming that "the client" and "the owner" in your description are the same person.) every time those assumptions come into conflict, I would expect the back-end fellow has had to accommodate the assumptions of the front-end fellow. Since the front-end fellow is also designing the UI, it's probably the right decision, but it would have been nice to work these out as early on as was possible.

Any claims that you've "broken all kinds of stuff" would stem from cases where he had assumed that *of course* you would do it X way and you did it Y way. His attempts to debug during the meeting are driven by him not wanting to promise to fix something until he's certain as to *how* he would fix it. And his complaints about not being able to reach you at a moment's notice comes from the scenario where he's in the middle of making something and is suddenly hung up on, "Is this being done X way or Y way?" and being in the impotent position of not being able to finish his work without clarifying this ambiguity, and knowing he needs you to clarify it for him.

This is all kind of based on how, when describing your relative fields of responsibility, you never specified who would do top-level architecture.

Whether you have to keep working with this guy or you replace him with a new guy, it will be necessary to consciously acknowledge these assumptions about the architecture wherever possible, bring them to light, and precisely describe what you have decided.
posted by RobotHero at 1:09 PM on July 15, 2011

« Older So I guess I'll be out of a job, huh?   |   Growing with Autism Newer »
This thread is closed to new comments.