This interview was originally posted in Bulgarian by Economy.bg.
Immedis is a constituent company of CluneTech that provides multi-country payroll and employment tax solutions for organisations with overseas staff – whether local or expatriate. Economy.bg caught up with Immedis employees Elena Yankova (Full Stack Developer) and Iosif Petrov (Automation QA Lead) to learn all about their projects, teams, and technologies.
Elena: Our teams develop and maintain software through which we provide our customers with a comprehensive and consolidated service in the field of international payroll. Our system consists of two parts: an internal portal used by Immedis employees and a public portal used by the managers of our client companies, which contains and processes information about their employees. The portal is also used by the employees of our clients, who, in turn, can check their pay slips. Our platform has integrations with various HR platforms that our clients use to collect data about their subordinates, as well as with payment systems through which we can pay the salaries of the employees in question.
Iosif: Our idea is to support the full departmental cycle, while offering real-time reports and analyzes. Apart from that, we are working on building a mobile application that can be used by our customers and their employees.
Elena: Our internal portal is used by Immedis employees to monitor and manage the information of our customers, their employees and the various services we provide for them. Managers from our client companies have access to our public portal. There they can upload information related to hiring a new employee, update the data of existing ones, as well as review the results of our integrations with the external systems they work with, or monitor the payroll process for the current period. They inform us when hiring a new employee or changing the data of an existing one so that we can process his information and calculate their salary.
Iosif: The total number of Immedis employees in Bulgaria is between 150 and 200, and over 50 of them are in the technical department, of which I am a part of. The colleagues I work with in this department are exceptional specialists. Not a day goes by where I don’t learn something new from a colleague. We have Full Stack, Front End and Back End specialists, DevOps Engineers, Manual / Automation Specialists, ETL Developers, Designers, Business Analysts, Project Managers, and also the so-called scrum masters.
The software team is naturally focused on the development of the aforementioned departmental platform. It is also involved in its integration with other Human Capital Management (HCM) platforms.
The quality assurance team is divided into 3 sub-teams – manual, automation and integration. The three teams are in direct contact throughout the test cycle. The manual team checks via pre-written acceptance criteria whether a feature works as expected. The automation team, in turn, automates the appropriate scenarios from the acceptance criteria that have already passed the manual team. The Integration team deals with quality assurance of integrations with other HCM platforms.
The DevOps team is directly related to the process of creating and changing each functionality in the system such as integration, deployment, management of current infrastructure and more.
The team of designers are responsible for giving the user interface an appealing and professional look.
The team of product managers takes care of the correct prioritization of daily tasks.
The team of business analysts is responsible for writing user stories.
Elena: Until recently, our internal portal was developed on the basis of the .NET Framework platform, but in 2021 we migrated to the newer .NET Core to keep up with the best working technologies. Our databases are built on Postgresql, and they are accessed through NHibernate, which provides many opportunities to connect the objects from the database with those of the code and their configuration. Our public portal is written on Angular.js, and our mobile application uses React Native. Our automated tests are written mainly in .NET, and we have some that are written in JavaScript. Our servers are hosted on Amazon AWS, we use Bitbucket as our code repository and Octopus for our CI / CD processes. We also have ETL and Data Analysis teams that use Alteryx and Tableau for various activities around our core developments.
Iosif: We use a wide range of different technologies for projects. Specifically for the departmental platform we use .NET (.NET Core, MVC, Web API, WCF, Entity Framework), Angular, NodeJS, HTML5, CSS3. We use PostgreSQL for the database and we rely on Amazon Web Services for cloud services. To ensure adequate performance and smooth progression through the different versions of the platform, we use BitBucket and Octopus. For testing we have chosen Selenium with .NET, Postman, JMeter, AWS and BitBucket Pipelines to perform automated tests and analyze their results. For monitoring systems we use Grafana, pganalyze, Jaeger.
Iosif: Our work is automatically organized on Scrum and we work on sprints, which simplifies the work process. We plan the process at the beginning of the sprint and end with an analysis. We have daily meetings where we discuss the tasks in focus, and here the mentioned scrum masters take part, who help in the process of prioritization.
A business analyst or product owner presents to individual teams the idea of what needs to be done. This is done in the form of a user story, after which the priorities are defined. When this is completed, employees who will develop and test these user stories gather and discuss issues that may arise during the work.
Elena: The projects are divided between the teams, and each team specializes in the maintenance of a specific part. Our team consists mainly of tasks related to the integration of the platform with other external platforms. An example of this is our integration with Oracle as an HCM (Human Capital Management) partner in 2021, as well as SuccessFactors, with which we integrated in 2020.
Elena: Our product started as a system offering payroll services to large companies. Over the years, we have discovered that there are many other opportunities around this service that we can develop and offer. So we started integrating with various external platforms that help us track the data of our customers’ employees or pay their salaries.
Iosif: In the last two years, the company has received investments totaling $75 million, which has allowed it to enter a phase of high growth, which, in turn, has led to the expansion of the Bulgarian team. The project itself has not undergone radical changes, but rather we strive to stay “on the crest of the wave” of new technologies and make the platform more convenient and functional. This has actually won us many large clients and international recognition as one of the best departmental platforms on the market.
Elena: One of our biggest challenges was to be able to simplify the processes in our public portal, while continuing to function as before. This is something we have been able to deal with over the past year. An additional challenge was the pandemic, which required all of our teams to work from home. Getting used to this new way of organizing the work process was certainly tricky, particularly onboarding and training new staff like me, which my colleagues did very well despite the unusual circumstances.
Iosif: For the last almost 2 years, one of the challenges that has affected every part of the business has been working from home. What is more interesting is that in the end this did not stop us, but on the contrary – even increased the productivity of employees, leading to a positive impact on product quality.
Another challenge is working with more and more sensitive data of companies that have hundreds of employees around the world. We are constantly looking to improve the security of this type of information, as well as the entire platform.
Of course, a challenge, but also a good opportunity, is the advancement of technologies and their implementation to the product. The challenge is to prioritize and strike a good balance between the work that needs to be done straight away and work such as finding and implementing new technologies that will improve the current system.
Elena: The development of our public portal, which now fulfills everything that our clients have as processes on their part. Also automating the process of collecting data from our customers’ employees through the integrations we have. Now our customers only need to approve the data and confirm that it is correct.
Iosif: We are extremely proud that with the quality of our platform we have managed to attract companies worldwide, including Adobe, MicroFocus, Uber, McAfee and others.
Elena: We are about to launch a mobile application that the employees of our clients will be able to use to view their pay slips or change some of the personal data. We also plan to make more integrations with external systems, with which we can make the process completely automated from the acceptance of employees’ data to the payment of their salaries.
Immedis are hiring in Bulgaria! Check out their open vacancies on Jobs.bg.