Source: TIGO Visuals (Streamline your business with long-lasting outsourcing partnership)

Software Development: Fixed Cost or Opportunity Cost?
Bài viết chưa công bố


When starting a new project, part of the decision making process is deciding which components to design in-house, and which are best left to external vendors. Sometimes the dividing line can be as simple as outsourcing the hardware platform, and doing all software development internally, but the choice is often far more complex.


Source: TIGO Visuals (Streamline your business with long-lasting outsourcing partnership)

Software Development: Fixed Cost or Opportunity Cost?

Opportunity Cost

Opportunity cost is the cost that you are giving up or forgoing when you are choosing one option over the other. Here, the opportunity cost would be the cost that we might let go of if you choose to undertake the operations in-house over outsourcing development. It could also be the benefit that you otherwise would have received but eventually gave up by in-housing rather than outsourcing. 

Investopedia Definition: “The cost of an alternative that must be forgone in order to pursue a certain action. Put another way, the benefits you could have received by taking an alternative action.” 

So, let’s know how much is not outsourcing your IT services costing your business: 

  • You are not able to focus on your core competencies.
  • You have to compromise with low-tech skills for your operations.
  • You are keeping your in-house team burdened with multiple tasks and stressing them.
  • You are just getting work done but not creating any value for it.
  • You are not utilizing your existing in-house resources to the best of your capabilities.

If we examine the simple hardware/software division a little further, this may not be such an unrealistic scenario after all. In this case, the company has decided that their core competency is in software design, and that they will be able to differentiate themselves through the innovative software they create on top of commodity hardware. Here, the company has recognized that by intelligently allocating their limited resources, they will accelerate time to market, and greatly improve their chance for success.

A more realistic scenario is a company that decides to keep some hardware and software development in-house, and outsource or contract the rest. Again, this partitioning usually emphasizes the internal strengths the company has, and leaves the highly specialized aspects to outside experts, such as designing radio-frequency modules, or implementing very low-level software components.

In doing this analysis, the company would also need to compare the cost of developing a component in‑house versus buying it ready-made. Assuming the component under consideration would provide limited differentiation if developed in-house, but still needs to be robust, there is often the temptation to keep the development internal to guarantee quality. Many companies falter here because they view their resources as fixed cost.

While a full-time employee may indeed be a fixed cost from an accounting standpoint, they are not a zero cost employee. There is the opportunity cost of having them work on a component that provides limited differentiation in the market. And, more importantly, the long term time and effort to support specialized components.

There are studies which assert that the typical designer throughput is 20 to 30 line of code per day. Not per hour, but per day. Clearly, this is an area of intense and heated debate, especially among the designers themselves. However, when you add up the time needed to properly design, review, document, and test each line of code, that value becomes quite accurate. Especially when evaluating highly specialized software components.

Now, let’s consider a specialized component that requires 10,000 lines of code. And, let’s assume the textbook studies are conservative by an order of magnitude, and that software engineers are capable of 300 lines of designed, reviewed, documented, and tested lines of code per day. This means six to seven weeks of designer time (again, assuming the studies are off by a factor of ten). At an average pay rate of $80,000 per year, this means approximately $10,000 to develop this one component, not considering the overhead of support staff, IT infrastructure, etc.

Worse still are the long-term maintenance costs of developing a component in-house that does not add differentiation to your end product, or requires significant long-term support effort due to its complexity or specialization. The original developer may need to be pulled off a future project to debug or update the component, resulting in unplanned delay. And, not only does this delay impact the current project, it defocuses and demotivates the developer. They may have welcomed the challenge of the initial task, but being asked to support it many months or years later is a less enjoyable.

Overall, the challenge of deciding what components to develop internally, and which are best left to specialized external vendors, is a complex one. Many companies, especially large ones, view their designers are being a fixed cost. And while they are, from a pure dollars and cents perspective, the bigger cost is the opportunity cost, and the impact on time to market. Large companies need to consider smaller, more agile companies. And, similarly, small companies need to allocate their limited budgets to areas that differentiate and highlight their strengths.

Anthony Pighin

A A A A
Software Development, Fixed Cost, Opportunity Cost,
Source: TIGO Visuals (Streamline your business with long-lasting outsourcing partnership)

Transform - Integrate - Grow - Optimize
Support & Consultation Our Support + -
Open Modal
Phát triển phần mềm theo yêu cầu, chi phí thấp, chất lượng cao và đặc biệt chúng tôi luôn đồng hành và phát triển cùng khách hàng trên hành trình chuyển đổi số toàn diện, giúp doanh nghiệp khách hàng bứt phá và thành công. Streamline Your Business with Outsourcing. We provide ongoing support and training to our remote teams to ensure they are equipped with the latest knowledge and skills needed to excel in their roles. We also have a full team of experts who can help you guide and help your outsourced team members who work from home.