December 2nd, 2019 | by Radosław Szmit
The True Cost of an Internal Software Developer vs. Outsourcing
Table of contents
Whenever the question “to outsource or not to outsource” arises, one of the first tasks is an in-depth analysis to determine first if outsourcing is an option from a business and cost-effectiveness perspective: will it be faster, easier, might it be cheaper? It starts (or at least it should) by determining the internal cost of a software developer. Even if one is not planning to outsource some of the project tasks, it is simply good to know how much money is spent on hiring and keeping staff in-house.
Sometimes my clients believe at the outset of cooperation that software development is cheaper to do in-house than outsourcing. To go from a belief to fact requires an analysis looking beyond the high-level or gross wages to the fact that there are a number of other employment costs associated with an internal resource.
Let’s see then what should be considered. The numbers I give are not fixed; they are indicative based on internal research done by CSHARK business partners in the first quarter of 2020. They vary from country to city, from seniority of staff to knowledge of specific technology areas. I list all the costs associated with hiring an employee, many of which get overlooked in the initial thought process and provide internally and externally verified ranges of total costs by expense type.
WORKING ON A SOFTWARE PROJECT? FIND GREAT PROGRAMMERS
FILL IN THE FORMThe total cost of a software developer
Let’s start with the salary. It is the basis and the major part of the calculation. You should take into account net and gross annual, or monthly salary, concerning country, state, and local legal/labor laws. In most cases, there will also be an annual bonus associated with the basic salary. Together it adds up to taxable income. On top of that, the employer will also add national insurance (like health insurance, social security, or unemployment tax).
In the calculations benefits have to be included, as well. If applicable, pension plan contributions, private medical insurance costs, company car, or share/equity. Another important part of the total cost of an employee is the cost per hire. It includes but is not limited to job advertising costs, employee referral costs, agency fees, relocation costs, time of recruiters, and your HR/recruitment team administration costs.
Parts of the employee costs are also linked to onboarding costs: training the new employee (so-called idle initial time or knowledge-transfer time) and legal costs with associated internal HR team for administration and onboarding. Don’t forget about office setup, including utilities and insurance, office space, Internet connection, hardware, and the software licenses associated with a specific position. The additional cost is incurred for the line manager/technical manager responsible for staff management (or as it is commonly said among software developers: the “happiness manager”). Daily costs of office management and facilitation should also be taken into account (think about coffee, water, juices, fresh fruit). Also worth considering are costs related to regular staff training and knowledge building or personal development activities.
Other “forgotten” costs are holidays, days off, paid bank holidays, maternity leave, or sickness. Depending on the country, such expenses can contribute up to fifteen percent of total wages. Lastly, there is also cost related to employees leaving the company. These are the so-called retention or turnover costs (exit interviews, replacement costs, knowledge transfer costs for the clients).
Now let’s consider comparative data on the true total costs of an employee. The figures are based on CSHARK’s internal data and data provided by cooperation and business partners in Sweden, the United Kingdom, Switzerland, Germany, Canada, and the USA:
- Salary with taxes constitutes, on average, fifty-five to fifty-eight percent (55%-58%) to the total costs.
- Cost per hire varies from five to seven percent (5%-7%) on top of the salary.
- Onboarding costs range from twelve to sixteen percent (12-16%).
- For office management, the range is between four to six percent (4% to 6%) on top of the salary.
- Training: an addition 2% to 4%
- Days off/holidays/sickness can add between ten to fifteen percent (10%-15%)
- Company leaves/staff fluctuation management contributes four to six percent (4%-6%).
The total proportions may vary, but for the initial calculations, these figures should work well.
The cost of a .NET/C# developer in the UK – case study
Based on the number of factors, the real cost of an employee, in most cases, doubles the basic salary. For example, in the UK the total costs for a mid-level .NET developer may look like:
- Salary: 57,000 GBP
- Cost per hire: 3,500 GBP
- Onboarding: 7,900 GBP
- Office management: 2,850 GBP
- Training: 1,700 GBP
- Days off/holidays/sickness: 7,400 GBP
- Fluctuation management: 2,850 GBP
The total annual costs in this scenario are approximately 83,000 GBP. This translates to a per hour cost close to 44 GBP/h and not to the nominal hourly wage of 30 GBP/h often quoted in salary negotiations.
Let’s now consider the cost of outsourced software developer, with comparable data to what we presented above. Keep in mind that the basic idea of outsourcing is to let other people or a company do what a business organization cannot do, or does not want to do in-house, keeping the quality level on the highest standard and within a reasonable price range. There is a number of other factors (e.g. trust, experience, same culture, language etc.), but for the sake of this article, we concentrate on the cost/budget aspect only. A company providing software outsourcing services, product development or UX/UI design like CSHARK has the same level/proportion of costs as the cooperation partner. On top of that, it charges a margin to make the business profitable. This is the only difference. The size of the margin varies, but in the software industry, it is usually between ten to fifteen percent on top of the quoted total employment costs.
If we take into account, the figures presented before and take current wage levels in the industry in Poland we can calculate that for the same mid-level .NET developer the annual costs (in GBP) will be:
- Salary: 39,600 GBP
- Cost per hire: 2,360 GBP
- Onboarding: 5,200 GBP
- Office management: 1,980 GBP
- Training: 1,180 GBP
- Days off/holidays/sickness: 4,740 GBP
- Fluctuation management: 1,980 GBP
- Margin: 5,940 GBP
Total annual costs add up to about 62,980 GBP. This translates into cost per hour of 164 PLN or approximately 39 EUR/h or 33 GBP/h, 41 CHF/h, 56 CAD/h, or 42 USD/h. Taking the cost factor, only there is then a clear difference of 11 GBP/h in the UK example quoted initially. It makes the outsourcing solution, a lower-cost one by 25%. In a software team scenario with just five developers, the annual savings is approximately 105,000 GBP.
Golang software developer costs in Sweden – case study
Let’s now take into account another example of the cost of a software developer – a Go (Golang) mid-level developer in the case of Sweden. The total costs for such developer hired in Stockholm are approximately:
- Salary: 840,000 SEK
- Cost per hire: 50,400 SEK
- Onboarding: 117,600 SEK
- Office management: 42,000 SEK
- Training: 25,200 SEK
- Days off/holidays/sickness: 109,200 SEK
- Fluctuation management: 42,000 SEK
True total annual costs of Golang developer to be hired permanently in Stockholm in this scenario are approximately 1,226,400 SEK, which translates to a per hour cost close to 639 SEK/h.
The rates of the same level for outsourced Golang developer in Poland will be:
- Salary: 648,000 SEK
- Cost per hire: 38,800 SEK
- Onboarding: 90,700 SEK
- Office management: 32,400 SEK
- Training: 19,400 SEK
- Days off/holidays/sickness: 84,200 SEK
- Fluctuation management: 32,400 SEK
- Margin: 97,200 SEK
The difference is then close to 100 SEK/h, and in case of a three-person Golang development team, in an outsourcing location in Poland, the difference in costs may be 580k SEK total.
DevOps wages in Switzerland – case study
Switzerland is known for its top skills and experience in research and development projects or innovative software and digital solutions. Banking, FinTech, Industry 4.0, BioMedical, or Pharma companies are known to have their headquarters in Zurich, Genève, or Basel. The innovativeness also means a high need for skilled technology experts, including software developers. Let’s analyze one case for the true costs of a DevOps engineer for a company located in Zurich.
The total costs for such software developer hired in the Swiss capital are approximately:
- Salary: 98,000 CHF
- Cost per hire: 5,880 CHF
- Onboarding: 13,720 CHF
- Office management: 4,900 CHF
- Training: 2,940 CHF
- Days off/holidays/sickness: 12,740 CHF
- Fluctuation management: 4,900 CHF
True total costs of DevOps expert in this scenario are approximately 143,000 CHF, which translates to a per hour cost close to 75,00 CHF/h.
The rates of the same level for outsourced DevOps engineer in Poland will be:
- Salary: 62,400 CHF
- Cost per hire: 3,744 CHF
- Onboarding: 8,736 CHF
- Office management: 3,120 CHF
- Training: 1,872 CHF
- Days off/holidays/sickness: 8,112 CHF
- Fluctuation management: 3,120 CHF
- Margin: 9,360 CHF
The difference is then approximately 23,00 CHF/h, and in case of a two-person DevOps support team, in a nearshore location in Poland, the difference in costs may be close to 90,000 CHF per year.
True costs of product designers in the Canada – case study
Canada is now becoming another great place where software and technologies are being developed and where the startup community is growing rapidly. With the recent investments from large corporations like Google and increasing interest in the Toronto-Waterloo corridor, named to be a new Silicon Valley, the need for skilled technology experts, including software developers, grow. Let’s analyze one case for the true costs of UX/UI designers for a company located in Toronto.
The total costs for such a designer hired in the Canadian FinTech capital is approximately:
- Salary: 84,800 CAD
- Cost per hire: 5,100 CAD
- Onboarding: 11,800 CAD
- Office management: 4,200 CAD
- Training: 2,500 CAD
- Days off/holidays/sickness: 11,000 CAD
- Fluctuation management: 4,200 CAD
The true total annual costs of a product design expert in this scenario are approximately 123,600 CAD, which translates to a per hour cost close to 64 CAD/h.
The rates of the same level for outsourced UX/UI designer in Poland will be:
- Salary: 52,800 CAD
- Cost per hire: 3,200 CAD
- Onboarding: 7,400 CAD
- Office management: 2,600 CAD
- Training: 1,500 CAD
- Days off/holidays/sickness: 6,800 CAD
- Fluctuation management: 2,600 CAD
- Margin: 7,900 CAD
The difference is then approximately 20,00 CAD/h, and in case of a two-person product design team, in an offshore outsourcing location in Poland, the difference in costs may be close to 77,000 CAD per year.
The total cost of a Java software developer in the USA – case study
Let’s now take into account the last example of the cost of a software developer – a Java middle-level developer in the case of the USA. We’ll take into account the location outside of Silicon Valley, as the wages, there are not representative for the rest of the country. The total costs for a Java software developer hired in Atlanta are approximately:
- Salary: 90,200 USD
- Cost per hire: 5,400 USD
- Onboarding: 12,600 USD
- Office management: 4,500 USD
- Training: 2,700 USD
- Days off/holidays/sickness: 11,700 USD
- Fluctuation management: 4,500 USD
True total annual costs of a Java developer to be hired permanently in Atlanta, in this scenario are approximately 131,600 USD, which translates to a per hour cost close to 70 USD/h.
The rates of the same level for outsourced Java developer in Poland will be:
- Salary: 61,500 USD
- Cost per hire: 3,700 USD
- Onboarding: 8,600 USD
- Office management: 3,000 USD
- Training: 1,800 USD
- Days off/holidays/sickness: 8,000 USD
- Fluctuation management: 3,000 USD
- Margin: 9,200 USD
The difference is then close to 18 USD/h, and in case of a four-person Java development team, in an offshore location in Poland, the difference in costs may be 138k USD total.
Summary
Companies researching software outsourcing options usually take costs as the primary factor when moving part of their activities to nearshore or offshore locations. However, the benefits do not end with real cost savings. Instead, that is just the start. The other benefits and points to consider are described in a separate blog post entitled In-house Software Development vs. Outsourcing. Before making any outsourcing decisions, we always advise in-depth research, starting from calculating the true cost of an employee, followed by a service provider tender process, including site visits and thorough competences and references check.
The article based on the following resources:
- Sedlak & Sedlak salary report for the IT industry – 2019
- Salary report for IT positions, Warsaw 2H 2019
- Salary report 2019, Trends in the labour market
If you are interested in the cost of a software developer in technology that I didn’t describe or you would like to know better other aspects of IT outsourcing, let us know. CSHARK provides software development services in many countries. We will be glad to help and answer all your questions. Please fill in the form below.