Outsourcing is a great temptation. We have all had those emails that say hire some technical person or programmer for pennies on the dollar. Outsourcing can be a great money saver and opportunity for your company, but if you are not careful it can also be a huge disaster if you don’t know what you are doing. Ask anyone that has done outsourcing over the years and you will hear many horror stories. Some will say they will never do it again. The ones that swear by it will also tell you they went through a long period of adjustment until they understood how best to make it work. Here are a few things you need to know to make it something worthwhile for your company.

Pick a country

Every country has a different socioeconomic structure. Each country has strengths and weaknesses, and all work and interface in a different way. We have run teams in India, Russia, China, Indonesia, and the Philippines, and each and every one is completely different on how it functions. Which ones are good at which, is a whole other article, but we suggest you do the research into each country before you choose.

Reputable firms

Knowing who is a reputable firm and who isn’t can be quite difficult in outsourcing. There is a lot of money to be made for companies that outsource, so there is a lot of fly by nights and scams out there. Some companies that say they have 100’s of developers are really just one guy that will just take a commission from pushing you to another outsourcing company. You need to get references, as well as talk to previous clients. Beware that there is also a lot of pressure from these companies to get good reviews, so talking to more than one actual customer is a must.

Hire direct

Another option, though technically not outsourcing, is hiring someone directly. This also has its pros and cons but just like hiring locally at home, you can interview and judge work, and if they do not perform you can fire them. With standard outsourcing, you might have different people working on your projects and just be dealing with a manager.

Specific team

If you hire an outsourcing company, make sure you know the team that is working on your project. You need to know their name and also have direct access to them, and not just the manager or project coordinator. A common trick is to have the A team of high-level programmers work for you in the beginning, and then downgrade you to B level or even C level programmers, as they use the A team to rope in a new client or a higher paying job. Make sure you know the team and who does what.


Never assume they understand what you want. We have found that Russian teams are the best for making reasonable assumptions and having intelligence for what you might be trying to do, but even then, make the instructions uber-detailed. Pretend you are talking to an idiot, even if they are not an idiot, you have to make instructions like they are. When you make instructions, you need to make it all in excruciating detail (another reason we suggest hiring a local project manager, especially one that has worked with overseas teams before). For example, you can’t tell them “smoke a cigarette”, you have to tell them to get a pack, take the cellophane off, open the pack from the top, remove a cigarette, hold it between their fingers, get a match, strike the match, apply it to the end of the cigarette that doesn’t have a filter, etc. etc. We know that seems ridiculous, but trust us it will save you many headaches until you have learned to work with them over time.

Too cheap

If what you are paying is too cheap, then it’s probably not going to be as good as they tell you. There is a lot of competition out there for good workers in the outsourcing companies, so the better players generally get paid better, hence the price you get charged will be higher. That’s not to say that you can’t hire people for half or even a quarter of what you would pay for in the states, but it means that you also need to be very careful

Lack of oversight

Another big disaster is lack of oversight. Do not assume that they know what you want and will deliver it on deadline. One of the problems we found with many of the Indian teams is they do not like to say no, or say that they don’t understand. So it is extremely important that you stay on top of them and have very frequent update reports and milestones. If you are hiring a lot of people in outsourcing, you probably should have a outsource manager on staff locally. It seems like a wasted expense as you have a project manager overseas, but it is important to make sure that someone works with the overseas teams and managers every day, even if its only part time.

Not everything

Not everything can be outsourced. Many things can, and many things can’t. You have to use your own judgment on this. While you can have a call center that deals directly with the customer, we suggest that anything that isn’t customer service should have no direct access to the customer. If you run your accounting overseas (though we do not suggest this) you do not want a customer talking to an account payable agent that’s overseas.

Project management tools

Emphasizing the staying on top of things, it is important to use good project management tools. If you are not familiar with them yourself, make sure that person you assign to manage your overseas effort is. Trust us, you need a project manager here as well as overseas otherwise you are going to spend all your time on the phone.

Paying slow

You might be able to pay some vendors late when you are low on funds, but we suggest you make it a priority to never pay your overseas people late. They might downgrade you to less talented workers or even refuse to do business with you. A good team is always in demand. Imagine if you are using an outsource company, and have many workers there, answering calls, doing graphics, etc. And because you don’t pay regularly, they all quit at once and go work for someone else, how much will that damage your business? We have seen it happen.

Video conference

You can do most of the interactions with emails and chats, but we suggest that you do an initial video call, and have a video call at least once a month to put the name to face. It also is good for them to get to see who they are working for and will give better performance


Unless it’s not obvious to you, you can’t really micromanage overseas workers. You can try, but you will never be doing anything else. This is again the benefit of having a local project manager, feel free to micromanage him, though it won’t do very much to speed things up.


Just like local employees, overseas workers like getting a bonus. It will help you keep their morale up and make them more enthusiastic to perform well for you. A bonus overseas will be significantly smaller than one you would pay a local worker, and it will be appreciated just as much.

You can save your business a lot of money with overseas workers. For example, you can hire a graphic designer in the Philippines directly for about $300 a month full time. From an outsourcing company, it will be more, but they will take care of the management, or hire another one if you don’t like the first one. You can grow your business with a much cheaper budget, but unless you want to spend the saved budget on aspirin and psychiatrist visits, read what we said above, and make sure you do your research.