In part three of our series, we’ll be discussing exactly what characteristics you should look for when you look for a high-quality software outsourcing partner.
Here are the top three criteria I recommend:
The criteria to successfully screen your outsourcing vendors are divided into two categories: technical and business.
Technical criteria include tech stack and methodologies. Look for expertise with the specific stack you need for your product -- examples are Java, Microsoft .NET, and LAMP. Determine if your potential team can team adapt to your software development methodology, such as RUP, Agile, and test-driven development.
Business criteria include cost, of course, but also the number and size of projects performed for other clients. Is this firm big enough (or small enough) to handle your software projects with the importance that they deserve? To you, a project needing a team of 10 engineers may not be small, but try getting even the time of day from a large outsourcing company that’s taken on your project, but typically bags projects needing a hundred engineers or more.
You really need to go deep into particular details to confirm that the outsourcing vendor has the experience you need. Make sure they have successfully completed software projects for other clients using your target technology.
It’s pretty easy to find outsourcing vendors that specialize in one or more of the five common technology stacks -- Microsoft .NET, Java, LAMP, C/C++, and COBOL. Some will specialize in just one of these, but it’s also common for software outsourcing vendors to have a track record with two or three.
When you ask about technical competence, don’t settle for an answer of “No problem, we can do that!”. The vendor should describe software projects completed for other clients in which your required technical skills were used. They need to convince you that they really understand the technology -- and won’t be learning on the job.
You should consider the overall size of the vendor in terms of the number of engineers they employ as a factor in your decision. Too small, and the vendor may not have enough engineers to keep your software staffed at the level you need. Will the vendor have additional resources “on the bench” if you need to grow or to quickly overcome a sudden loss of talent due to normal attrition? However, if you choose one of the large outsourcing firms in India, you may not get the attention you deserve. You may experience the swapping of people on and off your software project, poor communication, and lack of responsiveness to your questions. These large companies are trying to bag the deals requiring hundreds of engineers.
Consider the number of engineers you need to develop your software and whether the vendor has experience dealing with the same size project. Most software is developed by small, agile teams of between 5 and 25 engineers. Fewer than 5 and your success will depend heavily on the qualifications, skill, and experience of the individual engineers.
Many people who outsource think they want 24-hour development around the clock, like India offers to the US. Of course, India is an excellent outsourcing destination, and a majority of outsourced software development from the US is performed by Indian companies.
There’s one catch -- time difference. The time difference between the West Coast of the US and India is 13.5 hours (12.5 during US daylight saving time). It’s a little better for the East Coast, enabling possible overlap between the East Coast morning and late afternoon in India (8am EDT is 5:30pm in India).
However, if you prefer an overlap with conventional workday hours, you may favor another location. For example, countries in South America are close, to and even share, US time zones. This provides you complete overlap with the workday in most parts of the US. Meanwhile, countries in Eastern Europe can have some overlap with the US morning and significant overlap with the Western Europe workday.
In our next part of our software outsourcing vendor series, we go into more detail on how to successfully choose your vendor. If you missed out on the previous two parts of our tech series, you can view “Pt 1: How to Select an Outsourcing Vendor in Three Steps” and “Pt 2: How to Create Your List of Outsourcing Vendors”.
Stay tuned for part four of our series...