Hiring internally or outsourcing your software project is on the minds of businesses everywhere. Now, as the world prepares for tighter budgets and narrow margins, weighing the costs and benefits of outsourced teams is ever more important.
I’ve laid out a cost comparison for hiring a U.S.-based software developer versus a counterpart abroad. Long story short, it’s up to 63% cheaper to outsource a software developer compared to hiring one in-house in the United States. Taking all the costs of software development into account — not just salaries — the costs can get very expensive, very quickly.
The total cost of hiring an employee consists of many parts. In this article, I tried to display the most complete picture of the factors that affect the price of hiring an employee and in the end compare it with prices of outsourcing services using the example of Espeo Software. All the figures I use are related to the U.S. market.
1. Best-paying cities for software developers
Salaries for software developers vary regionally in the U.S. and the highest-paid places center around Silicon Valley in California. Many of the largest employers have headquarters there and recruit developers from across the country and the world. This, of course, inflates the cost to recruit nationally.
American newspaper U.S. News and World Report listed the top cities for software developers by average annual salary for 2018. San Francisco, California comes out on top with Seattle, Washington close behind. The national average salary for software developers is around $103,000 annually.
2. How much does a software developer make?
If we break this down further, Americans work an average of around 1,800 hours per year according to a Pew analysis of Labor Department data. That puts hourly rates for software developers in the United States at $71 an hour. For a senior development role, that increases to $81 an hour
This initially sounded a bit low to me so I decided to double-check the figures I found. I asked our U.S. Director, Andrew Phipps, about his opinion. He estimates that the hourly rate for a senior developer especially with specific and in-demand qualifications such as blockchain development skills should be at least $150 and as much as $225 per hour. What the Pew data fails to show is the cost of specialist knowledge that’s scarce in the U.S. A more realistic annual salary is upwards of $270,000.
These labor costs can quickly get ahead of you as the competitive market dictates the price to hire internally. Salaries alone are not the only costs, however. Sourcing and recruiting also factor in.
3. External recruiting agency
If you have a small company with fewer than 40 people on board it makes more sense to use the services of external recruiting agencies. They usually take between 15-30% success fee of an employee’s annual pay. Let’s take the average 20%.
Let’s make further calculations.
- Software engineer — 130,000 / 100 x 20% = $26,000
- Senior software engineer — 148,000 / 100 x 20% = $29,600
- Specialist senior developer — 271,650 / 100 x 20% = $54,330
4. Internal hiring team
If you want to avoid an external recruitment agency, you can hire in-house recruiters instead. The average salary of the HR specialist with all bonuses and commissions is around $70,000 per year.
The mean number of job placements per recruiter is 40. The median number of placements per recruiter is 20. Let’s use 30 placements per year for our calculations.
However, the cost of the time stays the same. The average acceptance rate for candidate offers is 89%. 30 / 100 * 89% = 26.7
Let’s keep our model simple and say that the HR specialist is busy only with recruiting. So the cost of the time spent on one hire = $70,000 / 26.7 = $2,621. The average cost of publishing the post on job boards is $400.
You should remember that it will be visible for 3-4 months. If you total the cost of time plus the cost to place an add on a job board, it adds up to $3,000 per placement.
5. Extra costs of internal hiring
In a Harris survey by Glassdoor, the employer branding cost varied by company size, averaging $129,000. It grows exponentially by company size. Companies with fewer than 500 employees spent $6,300, Companies with 500-3499 spent $81,400 and those with more than 3500 employees spent a whopping $335,900 on average to hire internal teams. Recruiting technology costs:
In addition to time and salary per HR specialist, they also need to use tools to work and track their results. Here are some of the more common tools HR teams use and how those costs add up.
- Video interviewing tools like HireVue and SparkHire. + $3,000 / year
- Coding assessment tools like Codility and HackerRank. + $6,000 / year
- Blind hiring software like GapJumpers. + $1800 / year
- Background check services software like Checkr. + $348 / year
- Applicant Tracking Systems (ATS) like Workable. + $4,000 / year
Remember that your HR specialists also need to be hired, onboarded, and trained. They also use office space and supplies.
6. Costs after the developer accepts the offer
According to a benchmark report from SHRM, the minimum cost of training is an average cost-per-hire of $4,125. But the cost of onboarding a new worker also includes some other factors, such as:
The hours managers spend onboarding new workers plus productivity loss minus the average cost: $10,000 per employee
- Paper, printing, and office supplies: between $922 and $1,106 per year
- Training: $1,252 per employee on average per year
- Tools and software: $1,200-100k on average
- New office equipment: about $1800 per developer
- Office space: $6,000 per person per year
Together with the developer’s salary:
- Software engineer – 130,000 + 19,245 = $149,245
- Senior software engineer – 148,000 + 19,245 = $167,245
- Realistic senior developer – 271,650 + 19,245 = $290,895
7. Cost of hiring a bad developer
Taking into account all the costs above, you may still choose someone who’s not a good fit for your team. I’ll get right to the point. The total cost of “bad hire” is upwards of $480,000 according to devskiller.com.
Assuming a bad hire’s 8-week tenure:
- Cost of hiring (recruitment, onboarding) $39,486.50
- Compensation (cost to employer) $23,311.48
- Cost of maintenance (office, office supplies) $1,218.46
- Productivity loss $23,311.39
- Disruption $398,043.46
8. Outsourcing costs example of Espeo Software
You pay 60$ per hour on a time and material model
- It’s the same rate for junior, mid and senior.
- The more developers you take, the less you pay.
- Usually, it takes less than two weeks to start the project.
- You have the flexibility to change the number of developers the project needs.
- If you don’t like how an exact developer is working, we replace him or her at no cost
- If the dev who worked on your project is leaving our team, we replace him with no costs
- You don’t need to care about extra costs, like equipment, tools, training etc.
- We provide agile project managers.
Let’s calculate the annual salary.
$60 x 1,811 hours = $108,660
- ($108,660 / $149,245 x 100) – 100 = 28% cheaper than hiring software engineers in the U.S.
- ($108,660 / $167,245 x 100) – 100 = 36% cheaper than hiring senior software engineers in the U.S.
- ($108,660 / $290,895 x 100) – 100 = 63% cheaper than hiring a realistic senior developer in the U.S.
9. Final thoughts on the cost of in-house development vs. software development outsourcing
With all the costs involved in hiring in-house software developers, this model may not be right for every company. As we enter a period of uncertainty, having fixed costs such as in house developers is a risk many CEOs are not willing to take on. Outsourcing meanwhile, offers a more cost-effective way to create and launch your software development project.
Carefully consider all the costs involved before you hire in-house and weigh the benefits of software outsourcing. I hope my calculations shine some light on the world of software development and make a case for why you should think about hiring an external team.