Over the years I have outsourced hundreds of projects and hired over 100 freelancers on dozens of different tasks. From my experience, you can never rely completely on feedback ratings from major freelancing sites, such as: Elance, oDesk, Freelancer (previously known as GAF), Guru and Vworker (RAC).
The feedback review systems of these sites are all easily gamed by unscrupulous contractors, especially from developing countries, like India (their elaborate tactics will be discussed in another article on how to avoid offshore outsourcing scams with great online profile ratings).
The Need for a Wise Hiring Process
Recently, I’ve had lots of trouble and headache finding web developers to program a custom CMS.
So I decided to finally nail down a step by step hiring process for ensuring a successful web development outsourcing experience, mainly aimed at big projects with budgets of $5000 or more. These tips are also perfect for mid-size projects around or under $1000 if you don’t mind doing that extra ‘homework’ involved.
Who is This Good for?
The best outsourcing tips below will apply to hiring PHP web developers, app programmers, graphic designers; as well as most other freelancing works that can be done remotely, like research, writing, SEO, marketing and many more jobs that require good technical knowledge and experience.
If you are new to outsourcing and this is your first time interviewing freelancers overseas, you will avoid many pitfalls and costly mistakes I’ve made. For those ‘veteran entrepreneurs’ or who work in the HR department I hope you still find these advices useful, as I breakdown the hiring process into logical steps to optimize for screening effectiveness and to save time (based on the 80/20 rule):
1. Online Reputation: Background Check
Search for freelancer’s name +complaints (without quotes) in Bing or Google.
Example: if the company’s name is Fullestop, search for “Fullestop complaints” without quotes. If you see more than one complaint result do not even bother checking further and just delete their proposal, bid or quote. Popular results (if any) are usually user (client) submitted reports from sites like: ComplaintsBoard.com, PissedConsumer.com and BBB.org.
While it is possible these days to have competitors creating rumors and faking bad scam reviews for a good company in attempt to damage its business- that is indeed a rare case. As the saying goes “there’s no smoke without fire”, this is true most of the time from my personal experience (after having hired over 100 different freelancers over the past 3 years).
You will have a much higher chance of finding someone who will complete your project by hiring a contractor with ‘clean online reputation‘ than risking your time, money, stress, frustration and most of all – a failed project on companies with suspicious reviews. Trust me, it’s not worth it!
2. Expertise & Experience Evaluation
Is the contractor capable of doing what your project requirements demand? A quick and dirty way to ago about this is to ask for freelancers to mention in their proposal whether they have done similar projects in the past, and if so, to specify exactly what they have done for previous clients with similar jobs. Then go and verify every single point they mentioned, especially contact people for references! If they can’t provide sample of any similar work or have given misleading information, simply choose another provider.
If your project demands unusual skills or feature never before seen on the web, then simply figure out what sets of skill and experience will be required from the contractor in order to accomplish the task at hand. Then check if their proposals are tailored written for your job and address the necessary skills.
It’s crucial to do this step, I can not stress over it enough! You’ve save a lot more time and frustration down the road by investing in good effort at this screening stage and do your homework properly.
The Real World Challenge
However, it’s a little more complicated than it seems, as you generally have to possess at least some “basic technical know how” of your listed project to verify. But no one ever said you had to be an expert in what you’re trying to accomplish, indeed the opposite is true – many internet entrepreneurs I know posse zero programming knowledge and yet they run very successful online businesses!
If you don’t know anything technical about your project and it is a big one (or at least not a small one – presumably over $1000) here is what you should do first:
For example, if you plan to hire a web developer to create an eCommerce site to sell widgets, it will be a good idea to the list the project in very generic terms first on different freelance websites and ask for workers to suggest a programming language and platform (aka framework) that they will use, along with explanation of Pros and Cons of their chosen technology. This way you will quickly get expert advice absolutely Free and see where the pattern is going. And the best part -it will be an objective evaluation from a pool of experts, and not a subjective quote from anyone.
If you simply ask one person about the best way to develop your project, s/he may just decide to use certain technologies or skills s/he specializes in or knows well, disregarding the fact that it may not be the most suitable choice for realizing your idea. Depending on how complex your project is, this can result into anything from slight delay, unsatisfactory work quality to purely done or completely failed projects with damaging side-effects! (like a software that seems to work but is full of hidden security holes and log errors for example)
After you’ve received enough of "free expert advice" to make a solid judgement of what you need, now it’s time to re-list your job – only this time around, be more specific about your requirements and be ‘laser focused’ about whom you will hire.
Back to our example of an eCommece website selling widgets. You just figured out that this website is best done using, let’s say, PHP programming language on a Drupal CMS. So, instead of mentioning the eCommerce website selling widget, change the title to the kind of person you would hire to work on it, like: “Senior Drupal eCommerce Developer Needed”, then only explain project details to those who qualify.
3. Read Profile Reviews
Don’t be too persuaded by high profile ratings, especially if what you see are gleaming, almost perfect profile reviews from a big company. This also applies to skill test results. I have fallen to this trap many times over and over myself.
The problem here is, most freelance ratings systems can be easily gamed, also adding to it the fact that big companies will usually redo the tests (most sites allow this) until they get the highest score.
Even if they achieved very high skill test results honestly, it does not guarantee that they will ever assign the same person who did the test for your project. Most likely, it's their senior or best person (that may have worked for them in the past, but not now) who took the tests just to show off the company's ability, but when you actually award the project, only junior level employees are assigned to do your task – you always get what you pay for!
4. Schedule a Call Interview
By calling the prospective contractor you can make certain of at least three things:
- Do they sound confident about project completion?
- Do they appear to be honest and trust worthy? (very important)
- Clarify all questions you or the freelancer might have before finalizing the terms
Ask specific questions and observe carefully how the contractor responses, you will be able to tell a lot about a person by just carefully listening to the way they talk.
5. Do a Small Test Project
Assuming that you have a medium to large project, consider taking out a small part of it as a test project just to 'test the water'. While this step will not ensure that you project will be completed 100% even with satisfactory tests, at least you will quickly be able to judge for yourself the competence of this new potential contractor.
This is your opportunity to confirm whether the provider "truly walks the talk".
6. Watch Progress Closely
I have heard many horror stories from people who fail to manage a project correctly and have had first hand experience on this. Never assume that just because you have money and have outsourced you deserve the right to sit back and relax! (it’s a perfect recipe for failure, btw).
Outsourcing done correctly is just like hiring and managing employees, if not actually more work involved. This is especially true if you decide to hire freelancers from developing countries, like India (which , from my experience, for web programming you should avoid at all cost if possible), China and South East Asia. Most of the time you have to literally "baby sit" them as there are usually lots of communication issues.
7. Fire and Re-Hire Quickly (if necessary)
While this may sound harsh for freelancers, a good rule of thumb I found is this: keep record of everything that happens during the first 2 weeks. Anytime a contractor fails to deliver on their promise or your gut feeling tells you something is wrong – consider adding it as one strike against that freelancer. Once there are 3 strikes during that period, consider firing and re-hiring again.
I know, it may appear as if you’ll have to do a lot of work just to find the next person again (and indeed, it is – the whole process of background check, screening, reviewing and interviewing…), but in my experience, it has always proved to be a much better option than wasting more of your time and ultimately get nothing done. The best thing you can do at this stage is to minimize further damage for all involved.
Hire slow, fire fast is truly a great advice I came across through Tim Ferris's blog.
The most important thing you need to know when finding freelancers is whether they are HONEST and CAPABLE of doing your job. On the other hand, from freelancer’s point of view, I would say they want to work with a client who is REASONABLE and WILL PAY.
So think of it as a two-way, reciprocal marketing approach. Good contractors are usually experienced and not easily available, if not already full of work load from past repeat clients.
It is these people that you need to find and hire. The problem is – they aren’t easily available, and whatever you has to offer must be appealing enough for them to switch and pay attention to. By appealing, I mean either one or all of these:
- The project is interesting to work on
- You have huge benefits to offer
- Budget is big and the pay is great
To sum up – the most important criteria you need to consider when outsourcing work are:
- Look at the bidders' client retention rates - the higher, the better
- Keep an eye for projects marked as cancelled or completed without feedback – the signs of a sketchy profile.