tags:

views:

54

answers:

5

Hi,

How can we manage a freelance/contractor working for our project?

we are not trying to exploit him, but we need better performance and better coding for what we are paying. as well as respecting deadlines.

+3  A: 

I think you get what you ask for.

So, start by explaining clearly, and in detail:

  1. what you're not happy with (e.g., in what way is their code not up to par? in what way is their performance not up to par?)
  2. what your expectations are (be specific)
  3. what they need to do to meet those expectations, and in what timeframe (set up milestones for checking up on progress)

Of course, if there are things you are happy with, do mention those too. That will help set clear expectations for future improvement. Pretty much standard stuff you'd expect in a performance review. :-)

Chris Jester-Young
A: 

This is pretty simple, isn't it? If contractors do not meet their deadlines and other commitments or expectations, they can be replaced. As a career fulltime employee (so far), I assume that professional pride and interest in the work motivates contractors. If that is not the case for you, there is surely no shortage of people to do the work.

Steve Townsend
Except employee motivation and commitment is exceptionally more complicated than that. There may be very good reasons why the person isn't performing as you'd expect them to, some of which may be your fault not theirs. Deadlines not being met is something that happens constantly in this industry, and not limited to contractors. I imagine a few of the reasons could be the same (ie: unclear or changing requirements).
Michael Shimmins
what if the contractor understand your system and you need months to let others understand it(of course they will), also we have a deadline to give software to our client.
user1111111
Unfortunately deadlines imposed by clients don't change reality. If it can't be done it can't be done. Perhaps you need to start managing the client's expectations that the project will be late too. The first step is to talk to the contractor and explain why you're not happy, and ask them what they think about that. Let the conversation flow from there and you'll uncover what is going on. If there is no good reason and they're being lazy and just not doing what you're paying them to do, start performance managing them out.
Michael Shimmins
@sam If your system takes months to understand, that may be part of the problem.
banzaimonkey
@Michael - if a contractor is still not performing after discussion of a problem, they are gone, surely? We are not discussing an employee here - contractors have different rules, which should be well understood by all to have pros and cons for both sides. On the face of it, the OP is asking what should be done about a contractor who is causing client deadlines to be missed. I think you are too soft, if that is indeed the case. Fire 'em and get someone in who _will_ do the work on time. I do agree that there could be fault on both sides, and that's not likely to be clarified.
Steve Townsend
100% agree that if it can't be worked out then they should be terminated, not saying for a second that dead weight should be towed. My point was really that whilst it could be the contractor being dodgy and just not working, its most likely a combination of compounding factors that both sides need to address. By yeah for sure, at the end of the day if you need to then do it, sooner rather than later and move on.
Michael Shimmins
+4  A: 

I second what Chris said in his answer, but wanted to add that with the exception of how to terminate a contractor vs an employee you should treat performance management the same way.

The best person to ask why a person isn't performing is the person who isn't performing. They may have some legitimate input as to why things aren't working.

An open and frank conversation about expectations and what can be done to get to them should be the first step.

Michael Shimmins
A: 

Here's a link to the Project Triangle: http://en.wikipedia.org/wiki/Project_triangle

You can pick any two of: fast, good and cheap.

But, of course, for the code to be good they have to be a good coder. Maybe you hired the wrong person.

Also, since they're a freelancer/contractor, they may not feel any ownership in their code if they think you'll just dump them down the line.

That's three random, possibly related suggestions. :)

mqsoh
That triangle really pisses me off. Sometimes throwing money at something doesn't make it good and fast. Almost always, sacrificing quality doesn't save money over the long run. It over simplifies resource allocation and project management. Also implies that no matter what the problem, time can always be reduced by adding resources (ie: increasing cost). Often this has the reverse effect. Basically just doesn't reflect reality at all. /end rant.
Michael Shimmins
If someone thinks they can *manage* a contractor into writing good code, then I think that studying that model will help them learn that there are multiple goals that contradict each other.
mqsoh
@Michael Shimmins The triangle is a generalization, obviously, but the point it's supposed to illustrate is you can't have good, fast, *and* cheap, unless you're cheating. It's a sanity check for people want something for free.
banzaimonkey
A: 

Try to make sure your expectations are crystal clear. I've been on both sides of this, and some things can get lost, even if you are communicating regularly.

Brad