A Few Outsourcing Lessons I Learnt Over The Years


Outsourcing has worked effectively for many companies, and it has helped them achieve their IT objectives. In this strategically growing market, India, China, and Eastern Europe are gaining new grounds.

According to a UK survey report by the Chartered Institute of Personnel and Development and the accounting firm KPMG, two-thirds of British companies intending to outsource jobs offshore prefer India over China. The remaining one-third market is likely to go to China and Eastern Europe.

What makes India attractive is the availability of skilled manpower and low labor costs. There are many global companies that provide outsourcing contracts to India, from market segments that include finance, banking, information technology and analytics among others.

Some well known companies that outsource to India include Oracle, Hewlett Packard, Texas Electronics, Dell Computer Support, Schlumberger and ATT Wireless to name a few. Most of these companies either have their own development centers in India or have partnerships with BPO firms.

Given my decade and a half years of experience in product development, I have worked with many established companies as well as startups. Even after being in the business for this while, I learn something every day about the industry, our customers, my team and myself. This applies to small elements as well as the big plans and development strategies.

During my interaction with people, I find myself discussing many of the lessons I learnt while executing outsourced projects. For those who have outsourced before, it may be natural, but for many others they are inevitable impediments on the outsourcing journey.

With the hope of helping readers overcome some of these obstacles, here are some of my observations and the lessons I learnt on the way:

Are you outsourcing for the right reasons?

Outsourcing for the right reasons is very important if you want your project to succeed. Consider these points below to help you gain larger benefits of outsourcing.

  • Cost effective and simple: One of the prime reasons to outsource is the belief that it tends to be cost effective and easier. Increasing competition continues to put pressure on organizations to reduce cost and drive business growth. The ability to outsource departments, processes, support and maintenance to a dedicated external team can yield significant savings. For example, whether paying a local programmer $200/hr makes more sense when you might be able to achieve the same work for a quarter of the cost from another country. The money you save could perhaps help you build a bigger, more feature-rich system. By Outsourcing to a right vendor you can normally save up to 50%.
  • Focus on business growth: Outsourcing allows you to focus on your key strengths e.g. Business growth rather than focusing on the technical issues of the project. If you select the right outsourcing partner, their expertise will help your company build new business solutions and stay competitive.
  • Access to talented pool of developers/designers: Outsourcing is not always done to reduce costs but sometime the talent pool of resources that you require both in quality and quantity becomes a quintessential reason to outsource.
  • Flexibility and scale: If your business is growing fast, you might need to scale your team as fast as possible to stay ahead of competition. Outsourcing makes it possible for you to scale your business when it needs additional resources and also downsize resources if required. What would generally take weeks and perhaps, months to hire a trained resource, outsourcing makes scaling a quick and flexible process and helps you adapt to any changes you might have to undertake. Has your order bookings risen significantly in the past month?

Are you following a process to hire the right outsourcing partner?

You are convinced on the reasons to outsource but the question arises to whom and how do you identify the right outsourcing partner. Selecting an Outsourcing partner is very challenging but if you follow a diligent process you end up hiring a long term partner and any potential disappointments.

Here are a few steps that you can follow to hire the right vendor:

  • Determine if outsourcing destination is right for you: Seeking the right outsourcing partner will also depend on the outsourcing country you are looking at. This means taking into consideration availability of talent pool, overlap timings, technology infrastructure, and ease of communication. For example a country like India has a big technology pool of engineers coming from 1000’s of engineering colleges who are also adept at communicating in English willing to stretch their work hours or work in night shifts.
  • Find reliable information on service providers: Finding the right offshore partner is a challenging task. Begin with tapping the information sources of industry bodies that will provide you with a directory of service providers. You may also talk to friends and business associates who have done work with offshore vendors and get references.
  • Verify vendor track record: After short-listing relevant firms, figure out their track record, work capabilities, different kinds of customers that they have serviced and the number of projects they have completed. Ask for customer references from your prospective offshore partners.
  • Aligning and managing outsourcing partnerships: There was a time when outsourcing arrangements relied strictly on compliance with service-level agreements. But now, owing to rapid technological transformation, erratic market fluctuations, revolving leadership and heavy customer demands, everything has changed. Experienced outsourcing clients realize that the best partnerships are dependent upon shared expectations, flexibility, collaboration and mutual accountability.

How it actually works

Outsourcing software development is hampered with risks. When you decide to outsource, it becomes decisive to make it a success. Here are some key points that will help you achieve your objectives:

  • Securing the confidentiality of your project: Every outsourcing project must be governed by discretion factor. Although, it is part of the business, it is always helpful to sign a non-disclosure agreement. If anything, it demonstrates that you are serious about your project and are ensuring things are done in a professional manner.
  • Defining clear objectives: At the very outset make it clear with your outsourcing partner as to what work is required. This means list all the functions and features you need to have with screenshots of different sections, step-wise user flow, graphic interfaces and documentation needed.
  • Ensuring and measuring quality: Even though you would have defined objectives you still need to establish what you mean by quality. Understand your team’s and management’s collective expectation about quality and make sure your vendor knows and understands them clearly. This means listing individual details about features, elements and any other specifics of the program that you consider a part of good or acceptable quality.
  • Reviewing work: On outsourced projects evaluating work on a regular basis is more important than actual deliveries themselves. We’ve heard clients complaining that the lack of information bothers them more than the missed deliveries. By assessing the project progress periodically will help you figure out what you specified is what will be delivered and if the project is on schedule. Keep in mind your timeline can get distorted by you offering late and unclear feedback.
  • Interacting with development team: Speak with the developers and share your requirements. This will help clear doubts and set realistic expectations. If the developers don’t ‘get it right’, help them understand what is needed so that you get what you want.
  • Setting payment protocol: It is always helpful to set up a periodic payment plan. It not only keeps things in traction but ensures that your outsourcing vendor doesn’t get irked because they are not getting paid for work accomplished. Besides, timely payments also ensure there’s sustained motivation to get to the next stage of the project.

Outsourcing to an offshore company can be challenging due to distance. However, you need to be patient and understanding and aware of cultural differences. It would help to get on board a local resource and let him handle all the admin / cultural problems. Having said that outsourcing has proven to be more rewarding than a losing proposition.


Clearly, there are tremendous benefits of outsourcing but it has to be managed effectively. Besides, the question is not so much about outsourcing to China, India, Philippines or any other country, as much as about acknowledging the risks and complexities in ensuring you meet your goals.Be passionate about making your software product outsourcing a success, not about your idea or solution.

I have learned these simple things and it makes a great difference to outsourcing. Once you have got a great product completed, you will have all the confidence in the world to do a better job of outsourcing your project next time.

Abhay S. Kushwaha

About the Author

A sales/advertising/marketing enthusiast, Abhay got addicted to the Internet in mid-90s and has kept pace with its evolution and technology. This wide and deep exposure has helped him successfully lead multiple teams at Net Solutions. He's also involved in the (F)OSS movement and writes a personal blog about disparate things that interest him, ranging from science to performing arts.

Leave a Comment