Table of Contents
Everyone has – at some point or other – thought about outsourcing some of their work overseas. These days it’s easier than ever -and while back of the napkin calculations can show incredible potential cost savings there is of course – the other side of the coin.
When outsourcing overseas for my own projects I have used the services of websites like Freelancer.com and oDesk.com. Many of these sites are similar in that they allow you to post a project to their members – select a winner and then create an escrow type funding situation – where you can fund a milestone for the applicants to begin work and then release the milestone once the project is finished – protecting you the client.
However achieving results through outsourcing is not just posting a project and then selecting an applicant – there are a lot of things that can and will go wrong if you don’t take the advice of those who have experience and have come before you – I don’t have to tell you that outsourcing has many horror stories.
Below I will list 5 mistakes (as well as one bonus mistake at the end) – that I have made and which you can hopefully avoid – when outsourcing.
Let’s start with mistake number one.
Mistake #1 – Don’t leave Bad Reviews
When completing a milestone or a project – most outsourcing sites will give you the opportunity to leave a review for your developer/employee. There’s a simple rule I have and it goes like this – I either leave a 5 star review or I don’t leave a review at all – and – I always use reviews as leverage.
The way it works is simple – when the project is coming across the final stretch I simply let the developer know what will be required for me to leave a 5 star review – and I adhere to what I say.
While you have the choice to leave any review you want – there is simply no benefit to you leaving a bad review. Most developers make their bread and butter from their online reputation and unless a developer does something horribly bad – I would rather just let bygones be bygones and move on.
Should you leave a bad review though you can kiss good bye to ever working with that person again or getting assistance with anything they worked on. This can especially be a probem if you have a developer and you need to ask them a question about their code or something they put together – do you think they will help you if you leave a bad review?
Mistake #2 – Going With Companies
Whenever you place a project online you are most likely going to have a number of bids from companies (as opposed to individuals). At first you may think working with a company would be beneficial – however for most small projects you will run into a number of problems – but to understand these problems you have to understand how outsourcing companies are organized.
What I will say now will not apply to every outsourcing company – not all the points I will mention – but some will. You simply need to be aware of these.
The first issue is the lack of direct contact with your developer (the guy who is actually going to get his elbows into your project – and relying on an intermediary – or project manager). Many times companies in outsourcing destinations hire developers who don’t know how to speak English – this way they’re able to get a developer for cheaper – however the downside is that when something goes wrong you won’t be able to speak to him directly.
Not only that but should the developer leave the company there goes all your IP (intellectual property) – and in many cases you have no way of contacting him to resume the project. No matter how the company may try to present itself – switching developers costs money.
On top of that you are usually paying more because now you are paying for the developer himself, plus the project manager who has to manage the developer – as well as the overhead of the company you’re working with (HR etc.). All of this extra expenses don’t benefit you whatsoever.
Going with a company rather than an individual might be practical if you plan to outsource a project with 20 full time positions – however even in those situations it would be better to find a developer who can also act as the project manager.
Mistake #3 – Not Floating Every Piece of Work
Let’s take a hypothetical situation – you put out a job and employ a developer online to do some piece of work. Let’s say you pay this developer $500. The developer does the job – and completes it to your satisfaction.
Soon – you need something else done on the project.
The first instinct people will have is to speak to the developer that just finished the $500 project – let him know what they’re after and ask them to quote him for this next piece. The developer quotes for the next piece – you create a new milestone and on and on it goes.
I do it a bit differently – I float every project to the open market and simply invite the developer.
So let’s say I have a new project for my developer – rather than asking him to quote on it – I estimate how much it is and then I place the project on the open marketplace – and invite that developer.
Now picture this – the developer gets a notification that they’ve been invited to bid on a project – the project is $500 – and they go on and see that there are all ready 50 bids on this particular project. What kind of leverage for negotiation does the developer have?
Is the developer going to try to charge more? You would then say “Well how come there are 30 other developers accepting this project?”
This is never done in a malicious way – in fact I may act like this is the only way I know how set new milestones – and I make it as a mere formality – but many times you can save quite a bit of money this way instead of asking the developer to quote.
Remember – as the buyer you have the leverage of choice – you should leverage that advantage when getting new projects quoted on.
Mistake #4 – Not Locking the Developer Down
This has only happened to me once – but once is more than enough – I had a developer crash my client’s site. There was disagreement about payment – what I didn’t know is that the client had placed malware all over my client’s site which could be triggered remotely.
SImply put even though I locked the developer out he would go to a certain URL on my client’s site which would trigger the malware – which would in turn allow him to download the website’s database while deleting the database itself (along with some other things which I don’t remember).
What this would do is make the website un-usable and give the developer leverage in being able to demand payment etc. to get the database back.
Luckily I had a backup of the site – and I had to go into the server logs to see which URL’s he was hitting – and then deleting the files linked to those URL’s one by one (he had placed a number of malware PHP scripts which he was accessing).
Now here is something you are not going to like hearing – but there is a high chance – if you hire a developer that they could place malware into your website – just as insurance – in case you don’t pay or release a milestone.
Long story short – the developer should never have the power to delete or cause any issues on your site. The way to fix this is to have the developer work exclusively on a staging site (not a live site) – a staging site could be something like staging.yoursitename.com – basically a website in a subdomain of your main domain.
Creating a staging site and creating special credentials is easy to do if you have SiteGround (I may do a tutorial about this later).
Once the developer has made the necessary changes – depending on the host you have – you should be able to push the staging site live.
Remember – protect yourself as much as possible.
Mistake #5 – Paying Hourly instead of For Results
This may sound controversial – but I don’t believe in hourly pay for developers. Simply put – there are developers who can accomplish what it takes another developer 10 hours in 1 hour. For most people that don’t understand development – paying hourly on a project is insane – simply because you have no idea what you are paying for or what to compare it to.
Even as a developer myself I don’t believe in hourly rates – the only exception is if a client calls me and needs something very urgently.
Simply put – if you need something done – you know what you are after and a developer can give you a quote – which would be based on how many hours that would take. However the way I would treat my developers is the same way I would expect a client to treat me – if I say it’s going to cost $x then it’s going to cost $x.
The web development industry – and in fact the whole I.T industry has a horrible reputation of springing up costs out of nowhere.
That’s why for me – if I need something done – I explain the problem and I say how much I will pay once that problem is fixed. Simple – then I fund the milestone and release it once the problem is indeed fixed as per my request.
Paying hourly is a sure fire way to send yourself broke very quickly.
If a developer insists on quoting hourly that’s fine – but they would then have to estimate how much hours it should take to solve the problem and then simply quote on that.
If the developer refuses to commit themselves to a milestone based on results I have no interest in working with them.
Bonus Mistake #6 – Failure to Scope
This is probably a big one that affects most big projects and it’s very simple – to save yourself unexpected surprises just make this assumption:
Unless you explicitly say what you want and how it should work be prepared to pay extra for it.
Simple as that.
The biggest mistake really is people not taking the time to scope their work – scoping is hard and sometimes you will have a developer who will allow a few additional items but in the end be prepared to pay for every additional item.
While I would love to say there’s a way to setup a scope document where you don’t miss out on anything in the end it’s hard to get everything – especially as the project developers.
The best advice I can give is just to have another site/app and just say that whatever features are on that site need to be on your site. Simple.
Just go through your inspiration site and write down all the features you see – working off an inspiration for the Scope Document can help trigger your mind – don’t try to do everything from scratch.
The mistakes above will hopefully make you aware of issues that can come up during development – I believe the more information you have the better. But the great thing about outsourcing overseas is you don’t have to start with a humongous project – try something small and see how you go – and learn as you go. If done correctly outsourcing can save you a ton of money and give you a workforce without any hassles that can be turned on and off as required – however not following the advice above can also create 2 problems when at the beginning there was only one. Good luck!
Kosta Kondratenko is a web developer working for his company Head Studios. He is a wordpress developer in Sydney and is also an SEO expert that focuses on seo page speed optimisation.
He has over 10 years of experience and loves to write blog posts about topics happening in his industry. He’s passionate about sharing his knowledge and helping others achieve their goals. His clients include a family law firm in Sydney.