You can credit the political forces of the left or the right, the predictable cyclic nature of business in general, or some higher power. But the evidence is clear: the US economy is booming. Well, what does that have to do with insourcing vs. outsourcing, or more specifically, with software development?

Outsourcing, Contractors, and Consultants

As the economy grows, businesses struggle to retain FTEs in critical roles. The pressure on HR departments to hire, retain, and rehire for these difficult-to-fill positions is very real. Leaders and managers need the work done yesterday. To fill the slot as quickly as possible, many organizations lean heavily on outside resources to get the work done. As recently identified by Elon Musk during his 2018 Q1 conference call:

The number of third-party contracting companies that we’re using has really gotten out of control, so we’re going to scrub the barnacles on that front. It’s pretty crazy. We’ve got barnacles on barnacles. So there’s going to be a lot of barnacle removal.

While this may be an extreme example, it illustrates an important point that I've seen play out many times. There are significant overhead costs associated with these external resources. The combination of excessive project management and disengaged contract labor drives the cost through the roof. Layer on communication failures, and you get repeated rework, delays, and more cost overruns.

All innovative modern businesses are in the software business

Regardless of which industry your core business is in, if you are truly innovating and leading the charge on digital transformation, you must also be in the software business. Despite all the "verticals" software companies build for our industries, there are always gaps. I've spent quite a few years in a number of complex industries, all of which lean heavily on these vertically integrated software solutions. In every case, we struggled to digitally transform all of our critical processes. From notepads to paper forms on 4-part NCR paper, there's always some aspect of the business that continues to live in the physical realm.

Why Insourced Software Development

Here are the three key reasons:

  • Internal Expertise
  • Pace of Change
  • Vested Interest

These three measures are almost completely lost in an outsourced or consulting engagement, but they are the most important aspects of realizing value from your internal software development efforts. A direct connection between your internal industry experts and your internal software development team results in finely tuned software tools that very closely follow your real-world processes. Additionally, the close connection between these critical stakeholders creates a tight feedback loop, driving rapid change that keeps the real and digital worlds aligned. And finally, with great vision, thoughtful leadership, and a positive organizational culture, the members of these two seemingly disparate teams will bond through their shared desire to succeed despite differences or occasional failures.

I'm extremely fortunate to work for an organization that completely and genuinely embraces: "Vision", "Leadership", and "Culture". If you take your organization to that place, you too can hire and retain the human resources required to insource your software development and exceed your digital transformation goals.