When we’ve hired freelancers in the past and paid them per project, we had some problems with them doing the bare minimum and not doing any touch-up work after the payment has been made. For this reason, we’ve been reading into paying our next engineer/developer a retainer, so we can be sure that there is incentive for them to constantly improve the product, just as we are. What are the benefits and disadvantages of this payment structure for an engineer?
I have been in this business for 15+ years. The only way to pay is per hour. I have a whole white paper on this - just go to our website.
However, I think the real issue maybe choosing the right people to work on your project. Selecting a key vendor is really important. Try to think about these things:
- do their other customers look like you?
- have they done projects like yours?
- do they publish their customer surveys?
- do they have a good processes for developing products?
- do they outsource themselves?
- do they have reference designs that will help you?
- do they work collaboratively, and can your work collaboratively with them?
There's not enough information in your question to give you a definitive answer, so instead let me tell you how we operate:
We don't hire freelancers. I'm sure there are responsible, quality freelancers out there. But all of the ones we have hired either create unnecessary drama, leave the project at 95% complete, or simply vanish on us.
When we need short term work we hire contractors from contracting firms. If the work product is not quality, or the contractor proves difficult, a reputable contracting house will make it right.
Through this process we discover the really talented folks - these are the people we hire from the contracting house and put on salary. As a result I can honestly say that my salaried staff are all absolutely exceptional people.
"Retainer" means "guarantee of resource availability" but it rarely works out that way, unless it is use it or loose it. None of us like having developers on the bench waiting for retainer clients to decide they need someone. If it's retainer with a roll forward clause (e.g. 10 hours a month but if you don't use you don't pay) then when your developer is needed - you'll get a fractional resource, because he's not sitting on the bench waiting for you to call.
Given that you work for a huge outsourcing firm I'm wondering why you are asking this question?
Really depends what the engineer is responsible for and the actual psychology of the person.
Without further details, its still safe to say your assumption is correct.
A freelancer will produce more consistent results when hired contractually on a retainer agreement.
The reason for this is as simple as you put it, that the incentive for continued improvement and extended support will be there.
However its just as likely that you will encounter issues also. For those that don't take a technical responsibility seriously, a retainer agreement is an easy way for consistently monetising not doing much work...
For freelancers that are better organised they should be able to supply you with an estimate for the services you require - with some break clause or room for revision depending how a projects scope develops, or if needs / requirements change.
What will reduce the quality of your retainer relationship - is how much time the freelancer can actually dedicate to your organisation on a consistent basis. Likewise, they may have the time - but if they are also dedicating significant resources to other clients, you may get less than 100% from them for the time that they do allocate to you.
In any case I would have to disagree with Steve, hourly billing has its place - but for longer term projects, or those that you prefer to have some guarantee of commitment and consistently, a retainer relationship is seen as a significant investment of trust (by a freelancer ...) though... to be fair haven't read the white paper Steve cites - may come back to edit this reply if I subsequently change my mind .