Updated: November 12, 2024
Contents
- Nailing down the terminology first: what is the difference between in-house and outsourcing?
- Advantages of both sourcing approaches proven by real-life projects
- In-house vs. outsourcing: risk profiles
- Examples of insourcing and outsourcing done right
- What’s your ideal sourcing approach to software development?
- Highs and lows of in-house development and outsourcing in a nutshell
Having the right talent at the right time at a reasonable cost is usually a pipe dream in workforce management. Konstantin Nikitin, *instinctools’ delivery manager, and Yury Eroshenkov, CCMS product owner, reveal how to make this dream your business reality.
Konstantin Nikitin is a delivery manager with a strong software engineering background and 15+ years of proven experience in a managing position.
Yury Eroshenkov is the product owner of DITAworks, an enterprise-grade SaaS software that simplifies technical writing thanks to advanced reuse mechanisms.
Nailing down the terminology first: what is the difference between in-house and outsourcing?
Konstantin Nikitin: Having an internal software development department that stands for in-house development usually doesn’t raise questions about its nature.
On the contrary, outsourcing software development comes in different forms regarding the hiring distance and the cooperation scope. It can be onshoring within your country, nearshoring to nearby regions, or offshoring to distant locations. Additionally, it can start as IT staff augmentation and be scaled up to a dedicated team and a whole development center.
Advantages of both sourcing approaches proven by real-life projects
Darateja Shymko: Lay it out for me, no sugar-coating: Which option is guaranteed to work?
Konstantin Nikitin: I wish the answer was as straightforward and unambiguous as the question is. But in reality, both in-house software development and outsourcing software projects can fall flat or strike it rich, with plenty of real-life examples. The odds of thriving depend more on choosing the sourcing model that resonates with your business goals and tasks.
Darateja Shymko: I got my hands on Deloitte’s global outsourcing survey, which states that cost, flexibility, and time to market are the major tech priorities in the post-pandemic business landscape. Let’s reflect on these sore points to highlight the drawbacks and benefits of in-house vs. outsourcing. The most burning question is: How much does it cost to have a fully-packed in-house team and hire a dedicated outsourcing one?
Yury Eroshenkov: I can’t provide exact numbers, but keeping an internal development team really adds up. You have to cover sick leaves, vacations, health insurance, and perks like gym memberships. Plus, you need to invest in ongoing training for your team. And let’s not forget about recruitment costs — in-house hiring may take weeks or even months to spot and enlist necessary experts.
Konstantin Nikitin: Meanwhile, working with an outsourcing company allows you to kick off the project within several days and you only pay for the work done. All the extra costs related to the outsourced team are on the vendor’s side. Of course, these costs affect hourly rates to a certain extent.
However, if your company is based in pricy locations, such as the US, Australia, the Nordic countries, or Western Europe, you can still benefit from a global pool of talents in more budget-friendly locations such as Middle Europe. For instance, tech giants of the IT industry like McKinsey and Deloitte set up their R&D centers in Poland for a reason. The country is known for its high-quality IT workforce.
Darateja Shymko: When a company can start a project within a few days with an outsourcing provider, while it takes weeks or even months to find and hire the necessary in-house experts, the choice seems obvious and not in favor of in-house teams. Or is it common among outsourcing providers to promise big but deliver blah?
Konstantin Nikitin: The bone of outsourcing software development is unmatched scalability and flexibility. You can start with a single developer and then expand to a few dozen of them, or set up a core team upfront with a business analyst, software architect, and several engineers, integrating other subject matter experts later on. And when those roles are no longer needed, scaling down is just as smooth and swift, if you cooperate with a reputable outsourcing partner. For instance, when working on an e-health product for Canadian Cardiac Care, we were able to assemble a 13-person project team in under three days.
When time to market is a priority, outsourcing software projects can be your silver bullet. Take another recent project: a SaaS provider needed an MVP for a new, AI-driven product to enhance their tech documentation management software. We built a robust document converter with a fine-tuned LLM at its core in just six weeks.
Of course, as you noted, not all outsourcing experiences are created equal. It’s essential to avoid vendors who offer lip service rather than solid software development. An unreliable tech partner can deliver a solution that doesn’t match the original idea and your expectations, or, which is worse, misreads customer needs.
One of our clients – a European venture capital company – reached out to *instinctools after a frustrating experience with an incompetent outsourcing agency. They had a developers-only team, which led to vague project requirements, blurred project vision, and a deep chasm between expectations and reality. Instead of a top-of-the-line digital fundraising platform they envisioned, they got an Excel-like spreadsheet. We stepped in, ran a thorough discovery phase, and got the project back on track.
Darateja Shymko: What unbeatable strengths of an in-house team make it worth investing in?
Yury Eroshenkov: A high level of direct control over your in-house development team members and the entire project, for sure. Complete control is vital if you develop a specific, complex SaaS product or several related software solutions. With such an approach, you always have in-house employees with a deep understanding of the product’s context. In contrast, in the case of an outsourced team, you’d have to dedicate extra time to contextualize third-party experts.
Having a core team with at least a business analyst and software architect who understands your system from the inside out also greatly facilitates new feature development.
Darateja Shymko: Are there scenarios where insourcing is the only option?
Konstantin Nikitin: Actually, only one clear-cut case comes to mind. Government sector organizations are likely to prohibit a software development company from cooperating with third-party contractors, even for minor tasks, due to data protection concerns.
Darateja Shymko: Yury, I’d love to get your take on as a product owner of enterprise-grade SaaS software you’ve built completely in-house. Can you share behind-the-scenes insights into having a strictly internal team?
Yury Eroshenkov: The tricky part is keeping your highly skilled in-house employees engaged with enough interesting tasks, especially when the project moves into the maintenance phase.
Meanwhile, outsourcing providers have a plethora of various projects that help them retain top-level experts. One month, you might be contributing to building software for an AgTech startup, and two months later, you could be working on custom LMS development for an energy corporation. From the employee standpoint, project diversity can be a considerable advantage when deciding where to work.
Darateja Shymko: Speaking of outsourcing software development, what are the major perks of this approach that we haven’t mentioned earlier?
Konstantin Nikitin: Yury’s point underscores one of the major advantages of outsourced teams — diverse expertise they offer.
Let’s say you should undergo software modernization and need experts who have chops for both outdated and modern technologies. What if you don’t have in-house aces to ensure a smooth transition to a new tech stack? Nevertheless, hiring in-house developers with specialized skills isn’t cost-effective if you need their support only for a couple of months.
Besides, outsourced teams also deserve kudos for their constant proactiveness. I can recall numerous cases when *instinctools, as an outsourcing provider, went the extra mile for their clients. Take, for example, enhancing a client’s testing infrastructure while tackling legacy software modernization, exceeding the minimum number of in-build design templates when creating brand-new product design for lighting controllers, packing an MVP with more features than initially agreed upon — the list can go on and on.
Cooperation with an outsourcing agency also has well-defined budget and timeline agreements for all development stages, with penalties for downtime on the vendor’s side. This means your contractor is motivated to quickly address any issues that arise. There were numerous cases in my practice when a hybrid development team saved the day, when some of the client’s in-house experts were on vacation, and the vendor’s PM proposed a substitute specialist to maintain the project’s tempo and minimize downtime.
Darateja Shymko: It sounds like project duration can be a key factor in choosing the right sourcing format, right?
Konstantin Nikitin: Yes, if you only need specialized skills for less than six months, outsourcing software development is a smart move that saves you from the hiring hustle and extra expenses.
Testing a raw hypothesis or clarifying project requirements through a discovery phase is a short-term task with a high level of uncertainty an outsourcing partner can handle effectively. Even if you have an in-house business analyst and software architect, getting the external perspective of top-tier experts intensely contributes to the idea evaluation.
When it comes to software solutions with a detailed backlog and a clear timeline of three years or more, having core roles such as BA and solution architect internally helps fast-track feature development.
But here’s the thing: companies don’t have to choose strictly between insourcing and outsourcing. A hybrid approach often works best, and our collaboration with a robotics manufacturing company proves this point.
When the client reached out to us, their internal team was already maxed out, but they needed to present a trailblazing robot model at an industry trade show in less than two months. By quickly augmenting their core team with our outsourced development team, they hit the deadline in just seven weeks without delaying other existing projects.
In-house vs. outsourcing: risk profiles
Darateja Shymko: Let’s change the angle from benefits to risks. We’ve touched on the chances that the outsourcing team’s promises might turn into a pumpkin. What exactly can go wrong?
Konstantin Nikitin: I’d say that outsourcing different parts of a solution to different vendors is a highway to hell, covered with extra bills for unforeseen software testing when you try to merge all those parts. Having a single blue-chip tech partner is vital for companies that don’t specialize in software development. For example, at *instinctools, we’ve created a comprehensive ecommerce ecosystem with six solutions for an eyewear company to cover their core business activities, from inventory and resource planning to interactions with customers online and in physical stores.
Another big challenge is the lack of thorough project documentation. Whether you’re working with an in-house team or an outsourcing partner, if you don’t have detailed documentation outlining your vision, scope, competitor analysis, target audience, architecture overview, UX/UI concepts, and so on, you risk losing essential project knowledge. This can make you overly dependent on whoever holds that knowledge, be it in-house developers or external contractors. To avoid vendor lock and be able to rotate personnel within your internal team with minimum inconveniences, you need to set high and clear requirements for project documentation from the start.
Darateja Shymko: Security concerns are another major pain point. Insourcing may seem safer at first, but if we look at companies like Amazon and PayPal, which rely strictly on in-house software development, and giants like Google and Slack, which leverage outsourcing, they all suffer from data leakages nearly every year. Hence, which option would you recommend and why?
Konstantin Nikitin: I recommend prioritizing data security measures, as your sensitive data can be exposed to the risk of leakage regardless of the sourcing model you choose. A common best practice for data protection is to require mandatory authorization to access the production data.
You can also obfuscate production data and replace sensitive and personal information with dummy data that looks real but holds no value to intruders.
One of the most demanding cases I’ve encountered was with a bank that aimed to root out all potential loopholes for cybercriminals. They built a closed physical perimeter with a security frame and a guard at the entrance, enforced a no-phones policy, limited access to the Internet, and implemented mandatory audio recording and video monitoring within their office space. The same approach can be applied to a dedicated team or an offshore development center.
So the difference between in-house vs. outsourcing software development in terms of security is that with an internal team, you are the one in charge of creating and maintaining a secure environment, whereas if you cooperate with an outsourcing vendor, this responsibility shifts to them.
Examples of insourcing and outsourcing done right
Darateja Shymko: Current Fortune 500 statistics show that 90% of these companies leverage both outsourcing and in-house software development. Based on your experience, why do companies that clearly have the budget to expand their internal capacities still prefer to use external contractors for some tasks? Is there an inflection point when managing the development process internally becomes impractical?
Konstantin Nikitin: You’ve hit on a crucial point: “for some tasks” is key here. In my view, you can outsource one-time or non-core tasks. We’ve already mentioned some examples of those.
The tipping point comes when your in-house development team can’t handle all the existing projects without compromising on quality. One of our recent undertakings was a software modernization initiative for a leading personalization engine company. What started as replacing a rigid legacy tech stack soon expanded to tackling their overall backlog and participating in R&D activities, as the client couldn’t keep up with cascading tasks.
What’s your ideal sourcing approach to software development?
Yury Eroshenkov: I stand for building the core team internally to retain complete control over the project but with the flexibility to bring in specific skills from the outside as needed. So my vote goes to the hybrid sourcing approach.
Konstantin Nikitin: As a delivery manager who has managed multiple projects simultaneously, I assure you that you can maintain almost the same level of control over an outsourced development team, considering your outsourcing partner is a reputable service provider with a solid delivery framework and robust security practices. Still, I can’t deny the value of in-house teams, so I agree with Yury and support combining homegrown capabilities with external expertise instead of clashing in-house vs. outsourcing.
Highs and lows of in-house development and outsourcing in a nutshell
We’ve organized the interviewees’ answers in a brief table to lay out bare strengths and weaknesses of in-house and outsourced development, making it easier for you to analyze each option.
In-house team | Outsourcing team | |
Cost | High | Low (when outsourcing to low-cost locations) |
Scalability | Low | High |
Time to set up a team | Months | Days |
Time to market | Slow | Fast |
Level of control over a team and development processes | High | Lower, but with a decent provider, you can have nearly the same level of control |
Expertise diversity | Low | High |
Communication with a team | Direct | Depends on a collaboration model |
Cooperation duration | From 1+ year (to make the cooperation cost-worthy) | Any time period |
Security | Depends on the data security measures in place, not the sourcing model |
Need a seasoned tech ally by your side?