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.

About 7 months ago I made the switch from a 5 year permie role (as a support developer in C#) to a contract role. I did this because I was stagnating in my old role. The extra cash contracting is really helping too.

Unfortunately my team leader has taken a dislike to me from day 1. He regularly tells me I went out contracting too early, and frequently remarks that people in their 20's have no idea what they are talking about (I am 29).

I was recently given the task of configuring our reports via our in house reporting library. It works off of a database driven criteria base, with controls being loaded as needed. The configs can get fairly complex, with controls having various levels of dependency on each other. I had a short time frame to get 50 reports working, and I was told to just get the basic configuration done, after which they will be handed over to the reporting team for fine tuning, then the test team.

Our updated system was deployed 2 weeks ago, and it turned out that about 15 reports had issues causing incorrect data to be returned. Upon investigation I discovered that the reporting team hadn't even looked at them, and the test team hadn't bothered to test the reports. In spite of this, my team leader has told me that it is 100% my fault.

As a result, our help desk got hit hard. I worked back until 2am that night to fix the highest priority issues (on my wedding anniversary!). The next day I arrive at work at 7:45 am to continue with the fixes. I got no thanks, but keep getting repeatedly told by my manager that "I fucked up" and "this is all my fault".

I told my team leader I would spend part of my weekend working to fix the remaining issues. His response was "so you fucking should! you fucked it all up!" in front of the rest of the team. I responded "No worries." and left. I spent a decent chunk of my weekend working on it. Within 2 business days of finding out about the issues, I had all the medium and high priority issues fixed.

The only comments my team leader has made to me in the last 2 weeks is to tell me how I have caused a big mess, and to tell me it was all my fault. I get this multiple times a day. If I make any jokes to anyone else in the team, I get told not to be a smartass... even though the rest of the team jokes throughout the day. Apart from that, all I get is angry looks any time I am anywhere near the guy. I don't give any response other than "alright" or silence when he starts giving me a hard time.

Today we found out that the pilot release for the next stage has been pushed back. My team leader has said this was caused by me (but the higher ups said no such thing). He also said I have "no understanding of the ramifications of my actions".

My question is, should I break contract (I am contracted until June 30) and find another role? No one else in my team will speak up in my favour, as they are contractors too and have no interest in rocking the boat. I could complain to my team leaders boss, but I can't see that helping, as I will still be stuck in the same team. As this is my first contract, I imagine getting the next one will be hard without a reference.

I can't figure out if this guy is trying to get me fired up to provoke a confrontation (the guy loves conflict), or if he is just venting anger, or what. Copping this blame day after day is really wearing me down and making me depressed... especially since I have a wife and kid to support).

share|improve this question

closed as off-topic by gnat, Dan Pichelman, GlenH7, psr, MichaelT Jul 19 '13 at 0:09

This question appears to be off-topic. The users who voted to close gave this specific reason:

  • "Questions seeking career or education advice are off topic on Programmers. They are only meaningful to the asker and do not generate lasting value for the broader programming community. Furthermore, in most cases, any answer is going to be a subjective opinion that may not take into account all the nuances of a (your) particular circumstance." – gnat, Dan Pichelman, GlenH7, psr, MichaelT
If this question can be reworded to fit the rules in the help center, please edit the question.

Is your team leader a permanent or contractor like you? –  user2567 Mar 18 '11 at 10:02
@chang - The actual profanity used by the supervisor wasn't required to describe the conversations the supervisor and the user had. At the very least less vulgar language could have been used. –  Ramhound Jul 18 '13 at 13:47
So how did this finally play out? –  John R. Strohm Jul 18 '13 at 14:20
If the procedure is to create reports, tune them, and test them, then who's job is it to make sure this procedure was followed by each team? If a supervisor isn't making sure each step is being completed, then they messed up just as much by not verifying that the procedure was being followed. –  Bratch Jul 18 '13 at 18:37
Fortunately for you, "As this is my first contract, I imagine getting the next one will be hard without a reference" is probably way wrong. As long as you're a competent self-marketer, other work can be found easily and without hiding your past. –  Jason Swett Jul 18 '13 at 19:56

11 Answers 11

up vote 14 down vote accepted

This story sounds very one-sided. I'm not taking sides in this, but your depictions are very hyperbolic, and you've already made your determinations--"the guy loves conflict" (how do YOU know what he loves?). If none of this is your fault, then why are you busting your hump to fix it? Something about your narrative just doesn't smell right, so I'm going to list what I see:

  1. A worker went from perm to contract (rare).
  2. Updated system got deployed with issues.
  3. Contractor was blamed for those issues, contractor works overtime to fix those issues.
  4. Contractor asserts reporting team and test team didn't QC reports
  5. Contractor does not deny writing the reports and/or writing buggy/inoperative reports.
  6. Contractor is receiving abuse from team leader on a daily basis (regardless of the truth of the claims, abuse is unacceptable in any case).

So here's the reality of it all. You signed a contract. It doesn't matter if you don't like it, if you're unhappy, or if the big, bad man is calling you names and hurting your feelings. You're expected to be a professional and fulfill your contracts so do it. If you walk out on this contract, regardless of the reason, you will be very lucky if you even get a "next" contract. The fact that you did not fulfill this one will travel with you. Keep in mind that even in a big city contracting is a very incestuous world and your name will travel around as "Oh, yah, he's the guy who walked out on {X} after he screwed up their system." You do not want that stigma following you even in a passing reference.

Last year I took a course in understanding behavior in the workplace that talked about the "Stories we tell ourselves". In reading your narrative, it's very clear you've made some preconceptions about this person and the people around you and what they're thinking/feeling. Consider where these preconceptions come from. You used to work with these people every day so you are familiar with them I'm sure. What are your assumptions about them that have led you to these preconceptions? How can you eliminate these assumptions in order to assess the true nature of what is going on? This does not mean that your assessment is inaccurate, but I think given the hyperbolic nature of it, you might want to reflect on it and give it reconsideration.

This person appears to be the project lead, but I highly doubt he is the individual responsible for your contract. If his behavior is inappropriate, you should address this behavior with him directly. If that is to no avail (as it sounds like), then you should address it to his immediate supervisor (with his knowledge). If you are still unsatisfied with the response, then you need to address it with the individual responsible for engaging in a contract with you in the first place.

Lastly, if you are truly not to blame for this (and in a situation like this, there is no 1 person to blame, you are all at fault really), then responsibility needs to be directed where it belongs. If the testers didn't test, then you need to address this with both the project lead and the QA manager/supervisor. If the reporting individuals never looked at the reports, then you need to bring that to the attention of the project lead and the Reports manager/supervisor. It sounds very much like you wrote the reports and they are defective. However, you are NOT responsible for bad code making it into production. That is the responsibility of the QA team, Reports team and build management.

So here is my advice to you:

  1. Be a professional and finish this contract out as best you can. If you continue here in a congenial fashion, awesome. If you don't, you can move on to the next one at least with the knowledge and reputation of having behaved responsibly, ethically and professionally.
  2. Make time to hold those responsible for the release of untested code accountable for it. Set up a meeting with QA/Reports/Project lead to address how to avoid releasing untested code next time. Do NOT address how it occurred this time with the exception of identifying communication errors. It should not be a blame-storming session it should be a prevention session.
  3. Address your project lead's behavior. If he won't modify his behavior, address it up the chain. If he's behaving this way to you, likely he's doing it to someone else. In all cases, stop being a candy-ass (sorry for the harsh language, but that's how it is) and stand up for yourself. Address the problems and act on them.
  4. Even if you are the coder on this project, unless you are absolutely to blame on this and are ready to admit it, stop with the excessive overtime. Put it a little overtime, but do not give any extra effort that they are not willing to put in themselves. Consider this: You are a contractor and no longer beholden to the company's success or failure. You fulfill a contract. The permanent employees should be imminently concerned with the success/failure of any given project. If they are not putting in similar overtime, then it is a clear indication that this is not really all that big of a deal. Stop killing yourself just because one butthole is making you miserable. Put in the reasonable expected effort, but do not exceed anything they aren't willing to put forth themselves.
share|improve this answer
I went from Perm to Contractor in 2 different organisations, I wasn't clear on that. I know the guy loves conflict because he has said to me (a few months ago) "I thrive on conflict". As far as blame goes, while it is not totally my fault, it is at least 50% my fault. I shouldn't have assumed the testers would do anything other than a basic test. At the end of the day, regardless of time constraints or other excuses - I am the guy who did the original work. Thanks for the advice. –  cbang Mar 18 '11 at 12:54
@cbang - That's completely understandable, and I take a similar "pride/responsibility" in my own code and projects -- a sort of "the buck stops here" approach. But at the same time, if you assume all of that responsibility you're truthfully denying someone else the opportunity of correcting a potential problem on their end. This wasn't any one person's fault, it was a collection of errors - errant code, lack of checking by report team, lack of qc testing, possibly lack of checking by the build team. Give these people a chance to correct or identify problems in their processes too. –  Joel Etherton Mar 18 '11 at 13:04
Whaaa? Perm to contract is rare? Care to elaborate on that? It seems like a logical progression to me. Perm->Contract->Freelance. Perm can be a bit of a dead end job setup in my market, so going from perm to something more "independent" doesn't seem so rare and strange. –  Bobby Tables Mar 18 '11 at 13:13
@Bobby Tables - Perm->Contract->Freelance is actually statistically rare. It sounds awesome and everyone fantasizes about it, but in the end, MOST people prefer their dead end jobs to being independent. Even more rare is doing it within the same company. Typically when someone leaves a perm job at a company, they go somewhere else entirely. Even when they go to a contract position, most of the time it's with a parent contracting company or similar service. I'm not saying it doesn't happen, but it is not the common case. –  Joel Etherton Mar 18 '11 at 13:19
In my city government departments (and private organisations) have rules stipulating a minimum length of time you must complete away from the company before you can come back as a contractor. –  cbang Mar 18 '11 at 13:23

In situation like yours, I would stay until the end of my contract and not renew (if proposed).

Some thoughts:

my team leader has told me that it is 100% my fault

He doesn't look like a team "leader" to me.

the test team hadn't bothered to test the report

You don't look like a team "player" to me.

share|improve this answer
Did you mean ' You don't look like', instead of 'you doesn't look like? –  George Stocker Mar 18 '11 at 13:02
I probably wasn't enough of a team player at the time I configured the reports, which was 3 months ago. I've built an excellent relationship with the reporting team since then. They are good people, but very overworked. –  cbang Mar 18 '11 at 13:06
@cbang: thanks, that a proof we can't judge you on your past, but only on who you are today. Finish your contract, then move on. Working with a team leader like that is really not what you are looking for. –  user2567 Mar 18 '11 at 13:11
@George Stocker: yes, thanks for the virtual edit ;) –  user2567 Mar 18 '11 at 13:11

If you have a wife and kid to support, you probably don't want to break contract early, but focus on doing a good job and learning what you can while lining up the next job.

It does sound like your team lead is overreacting to your performance, but you could also try improving this by trying to manage his expectations. It's likely that he forgot he asked for something basic, and after not hearing anything from the other groups for such a long time, assumed that you did a stellar job, only to be blindsided later, which could reasonably make him feel betrayed, when it was all a communication mishap.

The next time if he says to get a basic configuration working; then get it working, send him an email, and say that it's very basic, and it's up to the other groups to validate that your fixes work. That way if things break later, you can send him your old email as a reminder that you completed what was asked of you. Your email also gives him a chance to respond with something like, "Good to hear, but please do more testing in meantime with more complex configurations".

All that being said, it sounds like your team lead and you aren't going to be getting along with all the bad feelings. Try to stick it out and improve things while looking for something new to start in June, and hopefully you can at least get a reference from some of your team mates, if not from the team lead.

share|improve this answer

Alright your contract ends at June 30, This is your first contract and Pilot release is nearby so i will suggest you to keep going through the hell.
Your manager and Team lead sound like morons who don't know anything else except putting blames on others. I think as project's release is nearby they will try to take credit and work and this will distract them from you so don't quit this experience will make you more stronger. In case you quit you will be known as quitter (in your first contract which makes it even worse)and believe me that wont help.
Please don't mix your professional life with your personal life as you stress will come out on your family which can ruin your life just relax and enjoy.

share|improve this answer

How long does it take on average to find a new job in your career in your country? If you have savings to cover yourself and your family you should leave immediately because I do not think this kind of people like will change their way of treating you after the release and they do not seem to me smart people to work with any way. I never talk to any of my team this way never.

Actually on a similar story, one of my team members did mess up some reports and took very long time to finish them and the manager of service department reported this to top management and I was asked to fire him but I defended him and took the fire all myself and supported him and he ended up as good and reliable developer.

If you have enough money to cover your expenses till you find another job you should leave and do not care about the release as they do not care about you. Best of luck.

share|improve this answer

Check your contract. Most contract roles allow for early termination without penalty and usually with a fairly short notice period (7-14 days). In that case, and if you can survive with no income for a while, then you honestly have no reason to stay.

Contract roles pay more for a reason: the company only needs you for a specific task and you'll be the first on the chopping block if they need to reduce head-count. That's a two-way street, though. If they can fire you at the drop of a hat, you can quit at the drop of a hat.

The biggest problem is that if you quit, no matter what you say, the team leader will probably take it as validation of his opinion that you simply weren't up to the task and weren't good enough for the team. It'll also mean you cannot use that company as a reference for future jobs (and they're going to ask "why did you terminate your contract early?").

You need to weigh all these things up. When is your contract up for renewal? If it's soon, then it's probably better to stick it out.

share|improve this answer
+1: For "Check your contract". –  Jim G. Mar 18 '11 at 13:28
What Jim G. said. +1 for "Check your contract." –  John R. Strohm Jan 22 at 23:47

Before you do anything else, get your team leader into a room and have it out with him.

He may be venting for other reasons. Perhaps he's under pressure from the higher-ups. Maybe he feels that it is his fault, and is behaving this way to try and mentally shift his own sense of guilt. Unless he's directly benefiting from this behavior (in which case he's a manipulative bastard and this can't hurt), he possibly doesn't realise the effect it's having on you. To do this effectively you have to get into the mindset of genuinely wanting to help him. It sounds like you're not taking things personally, which is a good start.

You obviously want to stay, at least partly, so tell him what it is that you value about the job. If there's any aspect of his leadership that has helped you, anchor that, too. You can talk about a desire to make a systemic change to prevent this happening again, since a risk of that magnitude shouldn't fall down to one person (risk is the PM / team leader's domain and he should have taken responsibility for that, but don't lecture him because it won't help). Explain the impact that his behavior is having on you. Use concrete examples of things he's said or done. Talk about how you'd like things to work in the future, and the kind of professional relationship that you want to build with him. It may be that he has other constraints which you don't know about - can you help him out with any of those?

If he reacts badly to that, then you know that you can no longer work with him. Stick around for the release - that always looks good on your CV and will show that you care about the contracts you take on - and then find a new job.

share|improve this answer

Even if you terminate your contract, or stay there, I suggest to take some assertivity courses, or read some books and practise at least. As this is long run, you will probably not use these skills in the current job, but one day you will appreciate it.

Nobody should treat you this way, but you shouldn't let them in the first place.

share|improve this answer
Normally I would arc up and argue my point, but I haven't bothered in this case because nothing I say will change his mind. We'll both get fired up, and I'll likely say something I will regret and/or get fired. If I didn't have a family to support I would tell him to stick the job up his arse. –  cbang Mar 18 '11 at 12:43
@cbang - By not standing up to him, it basically says to him that you fear him, which is what he wants. Whether you deal with this via management or privately, you need to deal with it, even if it costs you your job. –  Joe Internet Mar 18 '11 at 14:35

My recommendation would be to arrange a private meeting between yourself and team lead where you try to work out the issues you have. You start by laying out how you feel and how you see things in a constructive manner (no blame). When finished, ask your team lead to give their view on the events. Even if you get nowhere, finish by saying 'Look, we need to work together for the next x months, let's find a way to make this work' and talk about changes both of you can make to improve the situation.

Final food for thought: if you're worried about getting a reference from this contract, without improving the situation exactly what kind of reference are you expecting?

share|improve this answer
Regarding the reference, I would be asking for a reference from my team lead's boss - the program manager. He seems to be much happier with my work. If I break contract early, I will leave him in a difficult spot, as he is short staffed already. Leaving early would really get him off side. –  cbang Mar 18 '11 at 12:35
I don't think the private meeting would help... saying "we need to work together for the next x months" would probably have him respond with "no, you need to do what I say for the next x months". Maybe he just needs more time to cool down before I try this approach. In hindsight, I may have made him look bad to the higher ups. –  cbang Mar 18 '11 at 12:37
Ah. If you've done that, it would explain his behavior. Maybe an apology would help? –  Lunivore Mar 18 '11 at 19:32
(I should add - "explain" != "excuse", and the apology is to help fix the situation, not necessarily to make him feel better!) –  Lunivore Mar 18 '11 at 21:18

I would have a quiet word with your team leader's boss or the HR department. If the abuse he gives you is as bad and as frequent as you assert, there's a good chance you're not the only one he's bullying. Stand up to him. He's hiding behind the fact that you may not have done your job as well as you could. You do not need to accept bullying no matter how poor your performance may be. Constructive criticism, disciplinary procedures, or even termination of your contract; yes. Bullying; no.

share|improve this answer
Being fired probably would have been better than being made to feel worthless each day. I'm not the only one who has been on the receiving end. I've heard other young developers have too. –  cbang Mar 18 '11 at 12:57

You're a contractor now. If your contract stipulates that your manager may verbally abuse you on a daily basis and generally make life unpleasant then unfortunately you have no one to blame but yourself for signing it.

But I'm guessing that wasn't the case, so, if your job is truly making you depressed, you simply need to check your contract to determine how to cancel the contract early and follow that process.

Don't listen to other answers here who naively seem to think your professionalism is somehow tied up with seeing out the contract or standing up to your abusive manager. It is also laughable to say that canceling a contract that is actually causing you health problems is going to negatively impact your future career prospects.

At least where I come from, every organisation has a legal responsibility to provide a respectful and healthy work environment. Your contract is a legally binding mutual obligation between the involved parties, it's not a one way street. No sane, decent future employer would have a problem with you getting yourself out of what sounds like a shit-hole.

I'm also a recent permanent to contract developer. My current contract says that either party may cancel the contract with 1 weeks notice for any reason, end of story. If I found myself in your situation and got no acceptable response after requesting an improvement, I'd happily cancel the contract, and tell the abusive manager to go $#$@# themselves as I walk out the door.

share|improve this answer
+1: If the out is there and you have good reason, then taking making use of it isn't a bad idea. I do disagree with your final statement, though. That sort of thing can easily follow you in the search of the next contract. –  Joel Etherton Mar 19 '11 at 12:54
"My current contract says that either party may cancel the contract with 1 weeks notice for any reason". Was it hard getting them to agree to this ? –  Radu Murzea Jul 18 '13 at 12:15
@RaduMurzea, that clause is unusual. Normally, there's no notice requirement at all: either party can walk away with ZERO notice. (It is usually the Company that exercises the no-notice clause.) –  John R. Strohm Jul 18 '13 at 12:33
I find one month to be standard and have done for 30+ years –  Mawg Jan 23 at 14:14

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