Overseas teams are incredibly useful if you are short on time and capital. It’s not difficult to find a software development vendor that can provide you with an excellent overseas team that will be more affordable and flexible in the short run than hiring in-house.
There are times when it can be challenging to know exactly how many engineers you’ll need, in what roles, and for how long. A good software development vendor can provide you with the flexibility required to handle these types of challenges.
However, if you know you need software engineers for a year or more, have the necessary capital, and have the aptitude to manage them, then you should bring as much engineering talent as you can in-house.
What if you currently use an overseas team, your company is stable, and you have a clear understanding of your software development needs? Should you switch?
Not necessarily. If the path ahead is well understood and you only require new features occasionally, a long-term relationship with an overseas team can be productive.
Hiring in-house becomes critical when the path is unclear and your software must evolve rapidly. “Product teams” of engineers and a product manager (and a designer, if you have one handy) to take responsibility for an area, or “domain” of the product(s) work exceedingly well for cases like these. Each team regularly meets with end users and stakeholders to get a thorough understanding of the problems in question, and once they understand the desired outcome, they rapidly experiment until they nail it.
This type of arrangement is easily the most powerful we’ve used in the software industry, and we’ve found that it’s harder to achieve with overseas resources. Such work requires a team-centric, ownership mentality that is difficult to find in an external party. It’s much easier to get everyone moving in the same direction when you are all in the same boat.
So if you’re short on time or capital, and you need flexible capacity for software development, a software development vendor can be an excellent choice.
If instead you have to evolve your product and have the time, capital, and a clear demand for software engineering talent for at least a year, then hiring in-house is likely the way to go.