Dangers of Outsourcing Part 3

by Phil Weslow

When it comes to outsourcing web development and programming , there are advantages and disadvantages to using one company for an entire project. As we mentioned in our last article on the subject, Dangers of Outsourcing Part 2, in order to limit potential losses we would advise your first several projects to be small in scale. There are two main reasons for this…  first, it is often the case that work gets paid for that does not get completed and second, projects frequently wind up costing more to complete than the original agreement price.

Let me describe to you one of the really strange phenomena that occurs in the field of outsourcing. To describe this effect it is best if I use an example, our example will have three characters.

First is company A, the highest ranked tech firm on your outsourcing portal of choice (elance.com, scriptlance.com, etc). Let’s imagine that Company A has 100% positive feedback and 1.5 million dollars worth of completed transactions. Our next character is company B which is the second highest ranked tech firm on whatever site you are using. Company B has 100% positive feedback as well but only 1.1 million dollars in completed transactions. You will be our third character in this fictional tale of woe.

Let’s say that you started out working on a project with Company A and three quarters of the way through, you and Company A have a falling out, and you decide to switch programmers.

So you switch to Company B confident that the worst is behind you and that you have finally found a company that will provide you with “smooth sailing.” Not too far into your relationship with company B, you are likely to hear, “We are sorry to inform you of this but the code that you have provided us from your previous programmer is sloppy and incoherent.” Company B may suggest that you start the project over from the beginning with them, or that converting the mess that they inherited into something intelligible will take more man hours than initially anticipated.

There are several reasons that you might experience this phenomenon, some legitimate some less legitimate. Let’s start with the potential legitimacy of such a statement. The saying “there is more than one way to skin a cat” applies well to programming. There are hundreds of ways to write a computer program that will give the same output for a given input. Some versions of the programming may run faster than others, some may take up more memory, and some may be more likely to crash your computer than others. Most importantly for our example, is the idea that some versions will be written more clearly and concisely than others.

Much of the field of computer programming consists not of writing brand new programs, but rather updating and modifying programs that have already be written. When a new programmer comes on the job, he hopes, prays, and wishes that whoever came before wrote clean, elegant, and easy to read code.  With any luck he hopes that his predecessor has included sufficient notes (“comments” in programming parlance) to make updates and adjustments as easy as possible.

Here is the problem, chances are that the representative your work with from Company B is more of an expert in the field of computer programming than you are. At Feedback Secrets we are big fans of the book Freakonomics by Steven Levitt and Stephen Dubner, and one of the lessons of Freakonomics is that unfortunately experts do not always use there expert status to the benefit of their customers. Since they are the expert you have little way of knowing if the code is sloppy or crystal clear.

What is worse is that usually you will be speaking to a technical liaison, someone who speaks English and is a decent programmer. Their purpose is to take down your specifications and translate them to the hardcore programmers. What makes matters worse is that many of these liaisons get paid based on the amount of money the bill for the company, so the more you pay, the better it is for them.

The programmers from Company A may well have been extremely intelligent and talented programmers, this does not make up for that fact that most likely they are overworked and underpaid. No matter how talented they are, it is most likely not in their best interest to write beautiful code, but rather write something quickly that hopefully gets the job done and move on to the next project ASAP.

Outsourcing your web development and programming work overseas can be beneficial to your company. The point however, is that such outsourcing is not without its pitfalls. By hearing some of the horror stories before hand hopefully you can save yourself some pain and suffering. I would advise you to keep your projects small as you start out, and learn from your mistakes.


Bad Behavior has blocked 54 access attempts in the last 7 days.