HR Technology and The Importance of a Single Codebase

Last updated: 2023-03-179 min read time
Subscribe to our blog

Benify started in 2004 with three friends in Sweden: Åke Lundén, Markus Kullendorff and Andreas Nyberg. Today, Benify is an independent, flexible, and agile global HR technology company, offering the market’s leading global benefits and total rewards platform with more than 1,500 clients and 2 million users around the world.

When it comes to finding the right benefits technology provider to help you manage your benefits and create self-service for your employees, naturally you are looking for a solution that will stand the test of time. After all, replacing your software or hardware every few years is far from ideal.

With Benify’s SaaS (software as a service) platform, there is no risk of expiring products nor is there the need to upgrade to a whole new platform after a few years. All software updates are done automatically without the need to replace equipment when the provider decides to update their product.

Here we speak with Andreas Nyberg, Chief Engineer & Co-Founder of Benify, about the technical aspects of Benify’s platform and what makes the benefits platform so unique.

What were some of the core challenges you encountered when developing the Benify platform, and how did you overcome them? 

A key challenge was the single codebase. Creating a single codebase for all clients, all countries, and all suppliers and finding a model where we could create individual tax models for each country in a standardized way was a challenge.

Another challenge was that, in 2004, the word SaaS didn't exist! Most big companies wanted to have on-premise installations but our business model doesn't allow us to do that. I needed to reassure and convince all the companies that there were no security issues having a single installation or having all client and supplier information in the cloud.

In your opinion, what are the key functionalities you think that make Benify stand out from other HR tech platforms?

In addition to our single codebase, we have really good control of our system. We are continuously making updates instead of saying, “do not touch the system, it works!”.

We have a single system where everything is integrated - the integration engine, configuration engine, and so on. With Benify, you don’t need to configure in a hundred different places; you simply configure in one place, and everything is read from that configuration, making it easier to maintain the stability and quality of what we deliver.

- Andreas Nyberg, Chief Engineer & Co-Founder, Benify

As the brains behind the Benify platform, how did the idea of creating a benefits management platform come about in 2004?

First and foremost, I have to give credit to Åke (Lundén). The seed for the idea was planted by Åke. Åke was working as a CEO for a small company and he called his accountant and said he was looking for a system that could manage the employee health and wellness contribution (friskvårdsbidrag), insurances, and so forth because employees wanted it. His accountant said such a system didn't exist, which is when the three founding partners began discussing the idea of creating one. After all, we knew other companies would also need a solution like this.

Right from the start, I wanted to build a fully self-service, self-managed system that Åke, as a salesperson, could sell, Markus could fill with suppliers, and I would build.

It was important to us that clients and suppliers could maintain everything themselves. Everything a client wants to do they should be able to do.

benifys hr technology solution

What are the principles that you and your development colleagues work by?

We have what I call our ten commandments, which are:

  • Always expect the unexpected.
  • Focus!
  • It's OK to make mistakes as long as you own them.
  • If I say it, I'll do it. Empty words have no home here.
  • You should be proud of everything you leave behind.
  • Fix the cause, not the symptom.
  • Your time is valuable, so is that of your colleagues'. 
  • Always think of efficiency. Can we automate it? Do it!
  • Do it well or not at all.
  • Celebrate each win.

The development team is essentially four autonomous teams and each developer has a lot of responsibility. The opposite of this would be, say, having 200 developers and 50 people working with requirements and then having a huge testing department. A lot of responsibility is given to the single developer, not just to code but also to question the requirements and understand the full impact of what they are doing. 

Why do you think a single codebase is the right way for Benify?

I would say it is the right way for any company if they can achieve it. I have always thought that way – if you can have a single codebase by configuration and make it adaptive so that it understands different user cases, then it’s much easier to maintain.   

Single codebase gives you the possibility to release regularly, which is great because you can easily deploy new functionality and easily deploy fixes, as well as maintain the quality of the code since you don’t have a thousand variants per client.

How do you achieve regression testing when you want to test new code? Single codebase gives you the ability to push out the code to different clients since you don't need to issue lots of different variants; you have a single variant to release. 

Why did you develop Benify's integrated data mapping tool?

We developed it because it’s so much better to have the configuration in a single place. When we first started working with bigger clients, we realized if we pushed an API specification on them, it would take a year or two for the client to launch. So, instead, we asked the client to deliver their data to us in a structured format, so we could launch the client sooner, and it wouldn't be a barrier for them economically. We never charge any costs other than the license costs, and this really forced us to create solid functions for data mapping to enable us to launch clients quickly.

If we had half of our company working as client consultants then this probably wouldn't have happened as the drive would have been different. If we had have said "We can earn more money from this by charging another 50k euro!" then it would have been to our advantage that launching clients takes time. So, not charging for consulting and data mapping forced us to be really effective and flexible. 

benifys benefits platform app

Before the smartphone market became what it is today, Benify had already decided to build an App. What were the reasons for this?

We could see it coming – it's as simple as that. And we were right; we can see that the log-in rates to the Benify platform on mobile devices are much higher than on desktop.

While many other companies go for one ‘big bang’ annual release, Benify releases more than 900 updates per year.  

We choose this route because it works exceptionally well with agile thinking. With agile thinking, you want to make small incremental releases and get feedback from the other party so you can easily make adjustments and fixes to anything that is not 100%.

When you do a big bang release, you have a lot of requirements; you have engineers and other people trying to guess what the other party wants, but it is never true. So, it’s always better to make smaller releases so you can interpolate to find the right solution.

Is there one thing in particular about the Benify platform you are most proud of?

For anyone working in tech, I would say user expressions and fragments are incredibly effective in building generic stuff and maintaining them on a single basis.

For everyone else, my answer is: With all our flexibility, we can enter any country in the world and deliver any benefit type around the globe. We can launch in new countries without a single change to the code in the codebase. 

Discover for yourself why Benify was named Global HR Solution Provider of the Year and received a GOLD Stevie® Award in 2020.