Categories
Entrepreneurship Software

Comparing the cost of internal hire to an outsourced team

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.

Time and time again companies have trusted us as a software development provider. Read more about some of our projects and find out why.

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

With 14 years on the market, we have gained valuable expertise in various areas. Read more about what we excel at.

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.

Ready to start a project with us? Send us a message and we’ll come back to you shortly.

See also:

Categories
Entrepreneurship Software

Four key project management challenges of remote teams and tips to overcome them

The world has changed a lot in 2020, and many businesses have been forced to go remote. This situation wasn’t temporary. In fact, as many as 74% of businesses predicted in 2020 that they will transition their on-site employees into remote positions even after the pandemic is over, and we can still see that most companies continue to work in the remote model.

There are many benefits of having a remote workforce, but also a lot of challenges – such as project management. Handling your team in the office when everyone is in the same building is one thing, but keeping everything together when each team member works remotely is another.

In this article, I’ll highlight the main project management challenges facing remote teams, and also offer a few strategies that show you how to overcome them.

Top project management problems

People problems caused by poor communication

Communication among team members is a challenge faced by all remote teams around the world. Because good communication is paramount to the success of any business, it’s really important that you find ways of overcoming this hurdle.

The challenges lie largely with the fact that your team may have different preferences for communicating now that they’re remote, as well as the fact that some of them may become more inaccessible.

This can lead to a slowdown in overall performance, as well as a feeling of disconnect. It can also lead to misunderstandings. According to a recently conducted survey, the biggest project management challenge falls under people problems.

Communication among team members is a challenge faced by all remote teams around the world. Because good communication is paramount to the success of any business, it’s really important that you find ways of overcoming this hurdle.

The challenges lie largely with the fact that your team may have different preferences for communicating now that they’re remote, as well as the fact that some of them may become more inaccessible.

This can lead to a slowdown in overall performance, as well as a feeling of disconnect. It can also lead to misunderstandings. According to a recently conducted survey, the biggest project management challenge falls under people problems.

With 14 years on the market, we have gained valuable expertise in various areas. Read more about what we excel at.


The most important thing you should do is provide your remote team with effective communication tools. There are different types of tools you can use for different needs. For example, you could build a customized chat app, which is ideal for real-time messaging and chatting about a project. 

Slack, on the other hand, maybe better for sharing files, group chats, as well as video calls. It also lets your team send GIFs, which can be great for informal discussions about your projects. 

As well as establishing communication channels, you could also schedule frequent ‘catch-ups’. This helps your team to stay connected, it gives them a voice and it can encourage them to share their ideas with the group.

Identify the most important tasks and avoid the worst pitfalls when starting a new digital project with our handy checklist:

Lack of performance tracking

Now that your team is working remotely, it can be a lot harder to track their performance. Poor performance tracking can cause delays if all you’re seeing is a team member’s finished work. Deadlines may be missed, and the finished work may not be of an acceptable standard.

It’s a tough situation because micromanagement is not only a poor solution, it’s also impractical with remote teams.

The best way to hold your remote team accountable and boost performance tracking is to first implement frequent performance discussions. These will give you the chance to chat with team members 1:1 to find out where they are in a project. You can also ask them about any challenges they’re currently facing, and what you can do to help.

You can also use tools to help you monitor your team’s productivity. Performance tracking tools include HiveDesk, which comes with a useful random screen sampling feature, and TSheets, which gives your remote workforce a variety of ways to clock in and out. Therefore, there can be no shirking.

Dealing with time zone differences

Now that your team is remote, it may be tempting to hire additional team members that are located overseas. This can improve the caliber of your employees because it means you’ve got more candidates to choose from, but it also means you’ll have to wrestle with time zone differences.

Time differences can cause major delays in projects. For example, if one team member needs something from another team member before they can move forward with a task, but the other team member has just gone to bed, there will be a lengthy delay.

The easiest way to fix this problem is to simply ask your team members to be more flexible with their working schedules. However, this may not always be possible. In that event, you can use scheduling tools, such as, Calendly, to make sure that work is assigned and delivered at times that suit everyone.

When it comes to things like team meetings, you will need to ask your team for feedback in regards to what times suit everyone. If there is no way that you can agree on a time, the next best thing to do is to record your team meetings. This way, anyone who misses the live meeting won’t miss out completely.

Procrastination

One of the problems faced by remote teams is the temptation to procrastinate. While studies have shown that working remotely can boost productivity, we need to offset this with the fact that there may be team members who put work off until the last minute simply because they’re not in an office environment. As a result, your projects can slow down.

A solution is to educate your team members on the need to create a daily plan. As well as a written plan, you can break all tasks down into smaller ones on your project management tools, so that your team doesn’t become overwhelmed. Other things you could do is remind your team that they don’t need to always aim for perfection. You could utilize a work management tool like Asana that will give their day some much-needed structure and framework.

Top project management problems – conclusion

Good project management is central to the success of your remote team. Use the tips in this article to get to grips with the way your team communicates and performs. Make sure to use tools where possible to help you along the way, and don’t underestimate the importance of talking to each team member one-to-one as often as possible.

Kick off your digital project on the right foot with our checklist

The “Project Management Checklist: Before you start” is our guarantee that the project will be kicked off in the best way possible, and no important issue will be omitted. The list has been divided into several fields, though there is a chronological feel to it as well, the sequence is not necessarily set in stone. You can download it here.

Ready to start your digital project with us? Drop us a line and one of our colleagues will contact you shortly.

Author Bio

Michelle Deery is a content writer with over eight years of experience. She specializes in writing content for SaaS companies. The words she writes convert readers into paying customers. Learn more at michelledeery.com and connect with her on Twitter @MichWriting.

Categories
Entrepreneurship Software

What you need to know about the “product owner” role in agile scrum app development

Before you dive headfirst into a software development project, it’s important to keep a few things in mind when you’re working with an external partner. Software projects not only need engagement from a development team, but also from you, the so-called product owner.

Product owners are the main points of contact on the client side. They direct development, give feedback and can make application development run smoothly. If you find yourself in the product owner role, be ready to devote time for planning, analyzing, and discussing the product roadmap with your development team. 

Hiring a development team

A client should take time to hammer out many of the aspects of a product before the project starts. First of all, he has to look for a professional software provider. It may be tempting to race to the bottom on price, but balancing price and quality is a key consideration. If you don’t have internal programming resources already, you’ll need to spend some time looking for the right provider. Finding the best delivery partner can be time-consuming and needs a lot of effort. And that’s only the first step.

Legalities and a product brief

Once you’ve found a perfect development partner, the next step is to negotiate all the legalities and sign a contract. It also needs effort on the client’s site.  You need to determine the project scope, define the application’s features, and describe the expected result. Here’s our guide on how to get an accurate cost estimate and to allow the IT team to understand how the application should work and what features it has to cover.

Defining the application’s scope and estimate

Clients describe their vision in many different ways. Some of them compare their idea to some tools that already exist on the market and have similar features.  It’s very common for clients to have an app in mind that they’d like us to emulate. For us, it’s a nice way to get the first feeling of a solution we’ll build. In the second stage, we ask additional questions to get a more detailed understanding of an idea and its full range.

Some clients already have examples of the mock-ups or even sketches of their preliminary idea. They prepare information about the business value and show how the future product will support the vision.

It’s very helpful for the product owner and the development team to agree on as much detail as possible before a project starts.  But without a technology background and project experience, it’s not easy for many clients to define the detailed product vision. That’s why we offer our clients product design workshops as the first step of work on the application. These workshops clarify all product details in its technology and business aspects. We advise on features to be chosen for an MVP, define usability that meets target groups needs, and prepare an application prototype which very often is necessary to convince investors/sponsors to support a project.

In our workshops, we spend a few days together discussing the vision of the project about the features of some use cases about the business itself.  So there is a moment in which the client should teach us about his vision should convey to us as much information as possible here in order for us to understand the project and to estimate it. So that’s a lot of effort and our clients really need to allocate some time to determine all the details and the common point of view relevant the product and its vision.

We need to ask a lot of questions to digest the information that we learned and come back with follow-up questions. We engage clients in this somewhat intensive process. While it sometimes takes quite a long time, the finished product will be what you want. In order to get professional service, you’ll have to set aside time to get everything right.

Workshop preparation for application development project

Once you decide on taking the product design workshop, here’s what you should expect.  So, in case of meeting with one person which represents the whole company, he should be well prepared. He must have knowledge both from the business and technology side. It is really important if the person is meeting us only alone in person or if it’s a kind of company project where there are more stakeholders.

Understanding all sides of the project and achieving all the knowledge needed could be very time-consuming. The whole team needs to meet together in the same room for a few hours, clearly defining the future product functionality cannot be overestimated.

What you need to know about the "product owner" role in agile scrum app development

Product owner role

We work in the scrum methodology, so we have to choose a person who will be responsible for the application development project. We don’t usually allocate the product owner on our side. Scrum assumes that there is a development team, but there is also the role of a product owner who is in charge of deciding which features are in the system. He or she has to know everything about the product and answer any questions about how developers should implement features. The product owner is able to respond to all questions about the product, system and also business background.

It’s better for the clients to have a person on their side who has a very strong industry background and a great understanding of the client’s business niche. Working as a delivery team we can perfectly recommend the technology, UX, and many other aspects but at the beginning, we need to acquire the domain knowledge from the client’s business.

A product owner must answer questions that arise throughout the project. He or she needs to respond quickly enough not to create a bottleneck. In order to avoid sending a single question, we organize so-called backlog groomings or backlog refinements. These are meetings where the goal is to explain the backlog to the team and discuss with the development team all the upcoming tasks trying to find out all these questions before we start the implementation of a given feature. This kind of meeting usually lasts much longer at the beginning of the project and then we keep these meetings regularly every week or every two weeks depends on the length of the sprint just to refine the next stories on the list. This way can be on the right track with all client’s needs with the minimum effort from the client’s side to run the project on time and within budget.

One example here is our project for The Guardian Soulmates app. The company had a dedicated business owner in London who took care of the business. She also set the roadmap for the system in terms of business and discussed priorities and features with us. All the process is led over Slack — both sites are this way very responsive and the communication was quick and efficient. We run planning sessions together and groomings to set up what should be done in the next sprints.

Product owner engagement as a success factor in an application development project

Of course, there are clients who do not want to engage so much in the project. They just want to write down specifications then want the software provider to learn and understand their business enough to ask all the questions that appear during the development process.

We try to discourage clients from that kind of approach, but if there is still a need on the client’s side to pass us the product owner role, we try to adjust and prepare for the role as much as we can. Then we only need a contact person on the company’s side to decide about the next step of the project. That is why we always try to encourage our clients to consider this team spirit type of arrangement and be ready for some serious involvement on their side.

Conclusion

As you start your software development project, be sure to prepare to work with your software development team to get the best possible outcome. Do your research and hire a software partner that will be open and honest with you and who has a history of excellent work. Assign a product owner who knows the ins and outs of the project and is ready to work closely with developers. Devote time and effort to get everything in order and finally, take the plunge.

Categories
Entrepreneurship Software

Software Developer Shortage in Finland [Updated]

If you’ve worked anywhere near the tech industry during the last few years, you must have heard about the software developer shortage by now. The Helsinki Times reported a significant skills mismatch between Finnish IT companies and the domestic workforce. Developers with the right skills for the job are scarce in Finland. Many know obsolete technologies from 10 or 15 years ago.

The issue isn’t limited to just Finland. Other Nordic countries have the same problem — there’s just an abundance of software development jobs with few takers.

There are a few reasons why this is happening. Let’s dig in.

Time and time again companies have trusted us as a software development provider. Read more about some of our projects and find out why.

Lack of software developers graduating

Currently, roughly 1,100 students graduate from Finnish universities with graduate degrees in the ICT field every year. Out of these, only about 300 specialize in software development. Subtract 1,000 developers who retire every year, and the numbers get pretty grim.

It does not help that women are grossly underrepresented in the ICT field. According to Statistics Finland, only about a fifth of ICT students were female in 2016, which is the lowest female-to-male ratio in all the fields in Finnish universities.

Writing code is not for everyone

It’s no secret that software development is not for everyone. Almost anyone can “learn to code,” but that usually means taking a basic course of a single programming language.

To actually work in the field is a different matter altogether. A software developer usually has to be proficient in several programming languages, know how databases work and what it takes to integrate different technologies with each other. It’s a process that takes time, dedication, and a willingness to constantly grow and learn. Not everyone is cut out to be a programmer. Sometimes it’s hard, frustrating, methodical and highly abstract.

Read also: Industries that grow faster amid the pandemic with the help of digitalisation

Writing code is not for everyone

Constant reskilling

It’s no accident that when you think about software developers you likely imagine a young person writing code on a sleek modern device. The software industry has pushed this image attempting to be trendy.

Software developers have to keep learning new things constantly as new platforms launch or new programming languages become the industry standard. To quote a former developer: “relearning the skills you need to perform well at your job gets a bit tiresome after you’ve done it a dozen times.” This trend often leads to the more senior developers moving to managerial roles or doing consulting work. In effect, retiring from writing code.

In the case of Finland, there are plenty of experienced former developers who have moved to managerial positions or entrepreneurship. They know the ins and outs of what it takes to develop world-class digital products. So, they’re eager for new software development talent to join their teams. Here lies the greatest risk of the current developer shortage. What if the next Nokia or Supercell ends up spending their resources fighting to find the right talent, instead of focusing on their core business?

Constant relearning

How do you solve a problem of this magnitude?

Obviously, it would be great to increase the number of people studying in the ICT field and focus on software development. But that’s a generational goal. Training developers takes time, and time is what the developer recruitment market in Finland just does not have. What we can do, however, is learn from the countries that have noticed the needs in fields like software development before we even knew about them.

Poland stands out as a great example. Since the political shift to a free market, Polish universities took a hard look at revising curriculums with the new possibilities of an open market in mind. The fruits of that labor are visible today, with as many as 15,000 ICT professionals graduating every year. This volume of graduating software development professionals can help offset the needs of Nordic countries, with nearshoring being the most common approach.

Developers’ shortage in Finland in 2022 [Update]

The shortage of IT professionals continues to be a much-discussed topic in Finland. A prominent evening newspaper in Finland, Taloussanomat, has published an article addressing the issue and explaining what companies are doing to attract IT experts. The list included competitive salaries and benefits as well as training programs which more and more companies are looking into.

Attracting and hiring Finnish IT professionals isn’t the only solution companies are exploring. According to a study mentioned in the article of the technology industry published in November 2021, at least 95 percent of IT companies have at least planned to recruit from outside Finland.

“Espeo Software has been doing this since its establishment in 2008 – it combines Finnish market knowledge with the best software developers in Poland. The latest forecasts show that the demand for software developers is growing all the time. It is estimated that there is a shortage of up to 14,000 developers in the IT sector in Finland. If we consider the situation in Poland, where 15 000 new IT workers enter the market each year, the need on the Finnish market could be satisfied within a year by new Polish developers.” explains Aki Inkeroinen, Managing Director of Espeo Software Finland.

“Espeo’s continuous and efficient recruitment focuses on hiring only the best in the industry in Europe. During 2021, we have screened and hired the top 50 senior developers among more than 1,000 software developers.”, Aki says and continues, “This is how we can guarantee our customers senior-level expertise, at a competitive price. we always invest in tracking best practices and our app developer code is always evaluated by another app developer. Thanks to efficient teamwork, we are able to produce high-quality code, for which we always recommend integrated testing.”

With 14 years on the market, we have gained valuable expertise in various areas. Read more about what we excel at.

In summary

Yes, the situation is pretty bad. We are playing a game of musical chairs with way more chairs than players. And that’s no fun for anyone. But there is light at the end of the tunnel. Universities and governments are waking up to the fact that new talent needs to be nurtured in the education system. And while we wait for the surge of fresh talent to our local markets, there is always the option which takes most recruitment worries away — team leasing.

Using in-house talent to coordinate a project combined with outsourced team members is not a hassle. Remote working tools and highly communicative developers makes this work easy. Planning a software development project in the age of agile development may actually be easier now. With a partially outsourced team, companies can focus on the actual work instead of struggling to recruit. Scaling projects up or down becomes faster too — reducing costs overall. See our customer success stories here.

Want to start a new project with us? Let us know using the form below!