Editor’s note:This is a guest post by Brian Mosko. Here he discusses how to manage relationships and make the most of outsourcing development work.
1. Judge the work, not the person
Any country is fine to work with. Don’t hold on to stereotypes, and judge based on the performance and submitted portfolio. Yes, there may be some language barriers, but for the most part, it’s normally syntax, so subjects may be in the wrong place. You’ll get the picture. Eventually once you work with someone long enough, you’ll get used to it.
2. All or nothing
STAY AWAY from “milestone” payments for new contractors. I’ve only lost a few thousand dollars with this one, but it’ll help keep you sane. A simple comeback / rebuttal for someone who is new to you is to simply say you’ve had problems with it in the past, and only do milestone payments on the third job, fourth job, etc…. Trust me on this.
The good, the bad, the ugly (Why no milestone payments to begin with?)
The biggest thing I’ve found (and it’s happened several times in personal experience), is that some freelancers will use milestone payments to basically force you to A) stay with them if the work is shoddy, and B) extract money out of you when it shouldn’t be. I understand the whole argument of “well, there are upfront costs” but here’s what’s happened to me…
Contractor A decides to accept a $1,000 job and requests that there be two milestones, both for $500, when the project is both 50% and 100% completed. Work begins and Contractor A tells client “here is 50%, please release the money.” Money is released and then Contractor A disappears, OR, Contractor A changes the terms and says he needs more money, more time, etc. now you’re in a spot if it is the latter because you’re already in for $500, and you have no rights to recall that money because you approved and paid for the work. Now that you’re on the hook, it’s VERY tough to walk away from $500 and cut your losses, losing more time and money on something that was already started. This is when the power dynamic shifts to the Contractor A’s favor.
I’m not saying everyone is like this, and up until my bad experiences I did milestone pricing and had great results. This is just a lesson that I learned and am sharing. Once I’ve built a rapport and a history with a contractor, I am way more comfortable using milestone pricing.
That being said, with Elance’s escrow feature, the contractor is guaranteed payment if he/she completes work as described by the job posting. I’ve been on both ends of this, and they are very fair at deciding the outcome. I would never start a job until the escrow account was COMPLETELY funded, and I would never expect a person to start work unless they had some assurances that they would get paid.
3. Manage your contractor
Keep on them. Both companies and independents on Elance can get sidetracked with new bids, other projects, etc. Don’t be rude, and don’t be annoying, but check on progress. I’ve found that 3-4 days is a good amount of time.
4. Get granular
SPEND TIME ON REQUIREMENTS. I know this sounds elementary, but you need to outline EVERYTHING the project / app / website does. For our first game we did 3 or 4 pages of requirements and got exactly what we wanted and it sucked. We had to pay and keep it because we got EXACTLY what we asked for. Now our requirements are 5-6 pages long and we get much better results.
I’m not kidding when I say granular. For example “Place button here” should be “Place the button above the menu bar, and when the button is clicked the color changes to light grey and the new screen slides down from the top”
That kind of detail can make or break a project. I’ve been there, done that. Plus, if there is ever a dispute, you can reference that and make them fix it before getting paid because they agreed to it up front.
5. Well that was unexpected
Be prepared for longer times and cost overrun. I normally double the time a contractor says and add 30% to the bid amount. This makes sure you have realistic views and your client won’t be upset. Under-promise and over-deliver.
If you put a project to bid, double what the chosen contractor is charging. This makes sure you have a cushion for cost-overruns and keeps money in your pocket. Expect to make 40-50% of the original bid amount, but once you get good, you can increase that to 80-90%.
Why it’s so affordable… Are contractors getting ripped off?
I’ve been able to get top-notch work for rock bottom prices.
You have look at it this way when it comes to per-hour or per-project pricing, especially when dealing with an independent contractor. The differences in cost of living and exchange rate are astronomical.
A $20 per hour job in India/Asia/South America could be the equivalent of a $200 per job in the US. They are making great money compared to their peers, providing for their family, and you get a service completed for a fraction of US market value.
In my opinion, you’re not screwing them. Yes, they could charge more, but a great income and the ability to win jobs based on price alone and keep a steady stream of work is how it all works out.
As far as cost comparison goes, it varies widely, and since I only do per-project pricing, I can’t really base the hourly cost off anything. But for apps and such, I have pretty standard cost structures where I can guesstimate off the top of my head what it will cost.
7. Test, test, test, then retest
Ask for an extended Beta test on any project. This will give you time to accurately test for bugs, and have them fixed. I normally ask for 30 days, but if your client needs it ASAP, then you should use a service like UserTesting and get the feedback quick for a quick turnaround back to the developer.
8. Communication is key
Manage your client. Since you’re not actually doing the work, make sure you keep the client in the loop BEFORE he / she asks. Any questions from them? IMMEDIATELY send off and provide a response quickly once you hear back. This is key. I’ve found you can mitigate almost any situation with good communication. People just want to be kept updated. Make the client feel special.
9. The Good Stuff
Realize that as an outsourcing project manager, you can do this job from anywhere, and when done right, it’s maybe 3-4 hours a day. I routinely work from casinos, beaches, pool side, friends houses, etc. Have fun with it and keep it enjoyable and you’ll reap benefits beyond just the money.
Also read: Why it’s hard for VCs to say ‘no’.