11 Tips for successful software development outsourcing

Person jumping over a running hurdle

They say there are two sides to every story; one that spreads like a wildfire and the other, the truth. Outsourcing has had a bad reputation all around the globe. Images of people working long hours in sweatshops and at very low rates are the first to come to mind when you hear the word outsourcing. However, this could not be further from the truth when it comes to the Philippines.

Here outsourcing has enabled Filipinos to be part of the upper middle class because talent and skills are recognized and given what is due to them. At You_Source, quality is a non negotiable requirement and we ensure talent is well rounded. We hire the best of the best which allows us to deliver quality projects on time, on budget, all the time. Here are a few tips that should help out when you decide to outsource software development.

1. Invest in your external team just like you would invest in your internal team, or set agreements with your partner that they conduct appropriate training. Software developers always want to learn new techniques and technologies and it is important to stay up to date. A good software developer will start looking for new challenges when they get bored.

2. Communication. Keep the channels open en communicate on a daily basis. If there is nothing to discuss there is a problem as no progress is being made.

3. Invest in an automated CI (Continuous Integration) process. Code reviews, tests and other quality standards can be automated with a fairly low investment.

4. Look for a partner with cultural similarities. This means that not only the team members but also the values of the company are in line with yours. Try to be part of the interview process when possible!

5. Agile is the new standard but also listen to your external team. Sometimes agile is not necessarily the best approach, just because it is hot.

6. Run short sprints, primarily in the early stages. Short sprints cater for fast feedback and quick results. You can change direction as soon as the next sprint!

7. Cost can be a acceptable reason to outsource your development, but should not be your primary reason. You can have access to world class skill sets without the risk of hiring someone full-time.

8. Create a routine people can follow. Routines standardize the process and ensure progress. When processes are standardized, you can easily increase manpower to increase productivity at a minimal cost.

9. Visit your external team as often as possible. At least once a year but every quarter is better. Also have the team visit you and allow them to engage with your users.

10. Don’t throw your problem over the fence and expect results. Software development is a process that requires a good understanding of the problem domain and your users.

11. Make sure to own all the accounts for online services, cloud services and source control. If ever you run into a poor partnership, you are in control.