SaaS for Accounting and Invoicing
About the Client
Reviso is a Danish company that offers a SaaS service dedicated to business. Their product allows invoicing, general accounting or management of sales, purchases and stock. It also helps in task management and the base of employees or subcontractors’ administration. In 2018, Reviso was acquired by the Italian company Team System, which made it the part of a large organization with thousands of employees.
Project challenges
- The number of Reviso users has grown rapidly, amounting to around 7000. This exceeded the capabilities of the system, which performance turned out to be insufficient. The company planned to invest in marketing and sales to increase the number of users even more. Reviso’s goal was to increase it by 100% to approximately 14,000 clients. This would mean an even greater demand for system performance. The company asked us for help, considering our extensive experience in working with the .NET environment and our consulting competence. They needed to expand the in-house delivery team. Our goal was to:
- create a new version of the platform by rewriting the solution using a newest technology, migrate source code from several .NET versions to .NET Core,
- stabilize the delivery processes,
- advise on implementing the SCRUM methodology. So far, the company has used only its selected elements,
- extend knowledge and experience inside in-house team in database field because of huge amount of data.
Solutions and technologies
We empowered the in-house Reviso delivery team with our consultants. The goal was to build a team responsible for rebuilding the SaaS platform to a new version. We planned to carry out onboarding of our specialists in 3 months because of the size of legacy solution.
The current Reviso platform was legacy software. Implementation started 7 years ago and was continued from that time until now. There were several .NET versions. The solution was hosted in Azure – native Cloud for .NET solutions. The intention was to rebuild legacy code and architecture and build a new one based on .NET Core.
We always want to know the client’s solutions well, culture inside the team, and client values. That’s why we started with joining the support and maintenance team. Our developer fixed bugs, implement new features in the application, so he learned its code and structure. That was the best way to getting familiar with platform horizontally.
On end, we carried out onboarding in just a month. Just after the month, we could be a partner for an in-house team in the strategic discussion about how to fix or rebuild something inside the platform.
Technologies applied:
- .NET / .NET Core
- React
- Azure
- Node.js
- Microsoft SQL Server
- RabbitMQ
We established #riteway framework where we had biweekly meeting with the client, weekly meeting with our consultants, and strategic meeting onside in the Client office. That help with alignment and following changes in priorities. During those meetings, we could advise regarding the delivery process, improvements in current teams, etc.
However, we had to refrain from rewriting the application code. Without implementing the proper processes (including SCRUM methodology), we could not estimate the project completion time. The processes’ implementation took the next 6 months, and we were an advisor in this process.
We offered the Client an alternative solution than rebuilding platform in the new technology. It turned out that the problem was in the low efficiency of databases structure and inadequate archiving mechanisms. The system also had to process the data of inactive users, what was overloading the servers.
Finally, we optimized the database. It increased their efficiency by 25%. The performance issues resulted from the lack of archiving of inactive clients that were overloading the servers. Therefore, we changed the database model and the way of archiving. That was well recognized inside Reviso team and largely in TeamSystem.
Results
Thanks to our advisory and database optimization on end, servers could handle more traffic. That’s why Reviso had a chance to increase the number of clients without costly rewriting the platform. The company saved money but also the time, what is even more important.
Infrastructure costs also fell – database maintenance turned out to be 25% cheaper. Implementing SCRUM also increased the team’s efficiency. It has all caused financial benefits and improved the company’s competitiveness.
The benefit the client has achieved resulted not only from our competences but also from the values we follow. The client’s interest is always our priority. That’s why we proposed a solution that allowed Reviso to save money and was equally effective (even though it meant a shorter time of participation in the project for us).
Sound like the right fit for you, too?
Rite NRG gives you high-performing, nearshored developers who fit your culture, ready to go as soon as you are.
Talk to us to find out more.
Michał Nikołajuk
Chief Executive Officer