Desktop Enterprise Software into Microservices Modular SaaS for 40% Support Costs Reduction
The Client is an EU provider of an all-in-one enterprise IT solution for organizations in the public welfare industry. The Client’s mission is to help automate and streamline such key enterprise workflows as recruiting and onboarding, payroll accounting, service billing, document management, IT support, and more.
For years, the Client kept distributing their solution as licensed, monolithic, desktop software. Yet with time, this distribution model started bringing the Client some uncertainty about the product’s further development. The reports of installation and update issues were growing along with their user base. Since different end customers encountered various issues due to using their own environments, the Client’s costs of support were all time high and kept increasing.
Despite the constant flow of new users, retention rate was steadily dropping. Even long-term customers, unsatisfied with software’s desktop-only nature and low levels of configurability, began to voice their intention to switch over to competitor solutions. Users wanted an online-based and more customizable product that would let them choose which workflow modules to install.
At risk of losing loyal customers and already paying too high a price for onboarding new ones, the Client requested SaM Solutions’ assistance in fully modernizing their desktop enterprise software and transforming it into cloud-based modular SaaS.
Discovery phase and project planning
The cooperation started with elaborate evaluation of the Client’s requirements specification. Our team completed a detailed technical assessment of the existing solution, pinpointing its functional strengths as well as possibilities for technical improvement, and then worked closely with the Client’s Product Owner to finalize project documentation. Delivered in under 2 months, the specification outlined:
- Easily scalable microservices architecture of the future solution.
- Core software logic.
- 10+ separate functional modules (document management, payroll accounting, billing services, etc.) for users to pick and create a custom functional set.
The scope of work was planned accordingly: first, the developers were to build the basic infrastructure based on our custom Kubernetes-like RollingStack product, then develop the core logic of the SaaS solution, and proceed to re-engineer functional modules, one by one.
Development and Testing
The team of SaM Solutions’ 6 full-stack developers, 2 QA experts, and 1 DevOps engineer worked in close cooperation with the Client’s in-house development team as an Agile extended workbench. Throughout the project, they held weekly presentations to the Client and adhered to the initial project schedule:
- 3 months to build core SaaS infrastructure and functionality.
- up to 2 months per each module (timing varied based on each module’s complexity).
- 2 months for final quality assurance (including UAT) and full solution release.
To reduce the risks of future reworks that could potentially delay full product release, SaM Solutions’ QA experts performed automated and manual testing in parallel with the development. Once each strategically planned unit was developed and thoroughly tested, our DevOps specialist deployed it in the cloud.
RollingStack (our custom Kubernetes-like solution) helped the Client to set up their own CI/CD pipeline for future updates and train their in-house team to manage DevOps. Compatible with on-premises and cloud deployment, the solution has an intuitive UI, which simplifies and accelerates in-house training.
Backend: .NET Core, Web API, Swagger OpenAPI, PostgreSQL, MongoDB, Kafka, REST.
Frontend: Blazor, CSS.
Environment, servers and other technologies: Webpack, Docker, Sass, Kubernetes, RollingStack, Elasticsearch, Wix, FluentD, Kibana, Keycloak, Prometheus, Grafana, YAML, NuGet, Nginx, HAProxy.
Source control: GitLab, SonarQube.
Task tracking: Jira.
The fully modernized software was released 18 months after the project’s launch, just as it had been planned. Currently, SaM Solutions’ 3 experts continue providing support and technical consulting to the Client’s in-house IT department.
Easy online access that doesn’t imply manual installation or updates has already helped the Client reduce their support costs by 40%. The microservices architecture and the use of SaM Solutions’ custom DevOps tool also sped the Client’s update delivery from 1 month to just a few day. And most importantly, the high level of configurability of the new modular concept helped to not only restore retention rate but also increase it to 95%.