Yes and No. The answer lies in the startup development stage.
… the “NO” part,
Startups should NOT use outsourcing …
… at least in the early stage of their “evolution”.
In the early stage the startup is just finding its company culture, basic routines and core values. Also, early stage startups are in the ever-changing product focus loop, and telling someone how to develop their product might be too much of a hassle. You want to keep it close.
In general, early stage startups should avoid using outsourcing, since:
- It raises management overhead – Focusing on teams in different locations and with different working habits will create unnecessary overload.
- It diversifies company culture – It is very difficult to get the outsourcing team to adopt your company culture. Period. The outsourcing team might slightly adapt, but the reality is they are mostly affected by the company culture where they actually work. In addition, the adoption of your company culture is especially difficult when you are still figuring out what your company culture is.
- Ever-changing product focus – Early stage startups change their product scope all the time. That means you would be spec’ing the s**t out of yourself, especially if you have to document every scope change to your outsourcing team in India, for example.
- Feeling of control – Although this is not an issue for experienced CTOs, it is highly important, more so if it is your first, second or third startup. You need to feel that you are in control of your business and product development. Outsourcing to the other side of the world will keep you wondering “what will I get in the next sprint, if I’ll get anything at all”. It’s more of a soft issue, but important for the self-confidence of a young startup entrepreneur.
The story changes when you have released your product’s first versions, raised another round of investments, and need to scale up your team. Only then should you start thinking about outsourcing, since scaling up development teams can be the biggest growth stopper.
… so comes the “YES” part,
Startups should definitely consider using outsourcing in their GROWTH stage!
Main reasons for that usually are :
- You need to satisfy your investors growth expectations, and it might be impossible to hire that many developers organically from local area. Finding a good outsourcing partner who could provide you with good procedures, great talent and enough people to set up your teams and grow your startup.
Reality check – If you manage to hire a really talented outsourcing company, then you might send a harsh reality check to your in-house team. Is your own team really good, or are they just a bunch of “lifestyle startup hipsters”?
- You onboard clients very fast and it jams your pipeline. Every day the client onboarding is delayed you lose money and potential word-of-mouth recommendation. This is where an outsourcing team could help you with client customizations and onboarding.
- Your backlog gets annoyingly long and you know you could earn more money if you would finish these projects in time. But you do not have resources for it. These kinds of tasks are usually very suitable for outsourcing teams, since usually these can be separate projects.
- You need niche skills for limited time – Should you really hire a team of full time developers if you need that skill for only 6 months? Probably not, and it’s more reasonable to outsource this to someone who is a specialist in that field and can do this project.
- You need flexibility – It’s great when you raise money and grow your teams, but it’s not so fun anymore when you have to scale down. What would happen if you have only in-house teams? Simple, you would either burn a lot of cash and hold on to your team, or create a panic if you start firing in-house developers. With outsourcing startups can be more flexible.
All this helps you keep your in-house team’s focus for core product development. Of course you can efficiently use an outsourcing team to develop your core product also, but that’s’ another story and I promise to write about it in the near future.
“My recommendation would be that companies with over 20 in-house developers, should keep 1/3 of their development staff in outsourced teams”.
ps. Actually, startups should use near-shoring instead of outsourcing, but that’s also another story which I will write about.
If you liked this article you might also like this one: Avoid these 5 mistakes in Software Development Outsourcing.