HR Technology and The Importance of a Single Codebase

20.10.07

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, and offers the market’s leading global benefits and total rewards platform with 1,500+ clients and over 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 far from ideal.

With Benify’s SaaS (software as a solution) 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, talks about the technical aspects of Benify’s platform and what makes Benify’s 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 customers, 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 customer and supplier information in the cloud.

In your opinion, what are the key functionalities you think makes Benify stand out from other HR benefits 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.

 

As the brain 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 called his accountant and said he wanted a system that could manage the employee health and wellness contribution (friskvårdsbidrag), insurances and so forth because the employees wanted it. The accountant said such a system didn't exist, which is when the three founding partners began discussing the idea of creating one since 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 which Åke, as a salesperson, could sell, Markus could fill with suppliers, and I would build.

It was important to us that the customer and the supplier could maintain everything themselves. Everything a customer wants to do they should be able to do.

benifys-hr-technology

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 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 customer.

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 customers 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 customers, we realised if we pushed an API specification on them, it would take a year or two for the customer to launch. So, instead, we asked the customer to deliver their data to us in a structured format, so we could launch the customer 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 customers quickly.

If we had half of our company working as client consultants than 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 customers takes time. So, not charging for consulting and data mapping forced us to be really effective and flexible. 

benifys-platform

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 desktop.

Benify triggers over 900+ releases a year, while many other companies go for one ‘big bang’ annual release. Why did you choose this route?

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 on a single basis.

And for everyone 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.

BENIFY’S SaaS BENEFITS PLATFORM

Subscribe to our blog