BriefA Canadian company created an international fundraising platform but at some point it faced an issue. They had to migrate their old platform framework to a newer version. Sibedge engineers were the ones who helped out with the migration. We improved the architecture, refactored the whole code and introduced crucial user-friendly changes into the system.
A Canadian company developed a platform where their clients could start their own fundraisers. Imagine a hospital raising funds for ALV machines. They want a web page with a unique URL and modern design. It should feature the fundraising goal, automated payment processing and integrated payment solutions. The platform generates such web page and the hospital starts raising the funds. The platform automatically captures how much money has been already collected, how much is still left and how many days there are until the end of the campaign. The platform creators retain a small percentage from each donation.
The product was originally written in Angular 1.0. But in 2021 Google announced that they would discontinue the support of the first version of this framework. Besides, the creators wanted to improve the platform's performance and add extra functions. On top of that, the development processes were not in place and that inhibited the product's growth. The client has turned to Sibedge for help.
Our main task was to migrate the platform to the Angular 2.0 framework but we started with code and architecture refactoring. We improved the readability of the code, reworked the architecture, removed unnecessary system components and named the variables properly. Had we not done it, there would have been challenges later.
Upgrade to Angular 2.0 started in November 2020 and took four months. First, there was only one front-end engineer from Sibedge who was migrating one component after another. When that task had been completed, the client trusted us to develop and implement new features into the platform to meet growing customer needs. To handle new tasks, Sibedge enhanced the team with three back-end developers, four front-end developers and two UX/UI-designers. As part of the Team Extension service, Sibedge estimates the time needed for starting cooperation or scaling up or down the outsourced team. On average a new specialist can join the project in two to four weeks.
Originally it was the CTO who took on the role of the analyst. But he wasn't able to devote much time to it. Still, he didn't see the value of hiring a dedicated expert for this job. We suggested integrating our own analyst into the team for a couple of weeks. If the client hadn't seen significant output and refused continuing with our analyst, Sibedge would have paid for the hours of her work. But the client decided to keep her in the team as he realized the benefit of system and business analytics.
Development process setup
We had to set up the development process so that the internal and external teams could collaborate efficiently. Smooth communication with team members and project execution was ensured via the project lead role. We also introduced the Miro service to facilitate the communication between the engineers and the client. Plus, we held daily meetings with the developers where we discussed our current goals and tasks and explained the direction in which the project would be heading.
There were a lot of tasks and it took longer than one sprint to solve them so it was crucial to set the right priorities. The client outlined the expectations and deliverables. We decomposed large and complex tasks into smaller ones before moving on to the planning stage. We created a detailed project plan that included all tasks, specifications, the required technology, missing details and anticipated risks. Once the plan was completed the project execution phase was started.
Apart from migrating the platform from the deprecated framework to a newer one, we added several features to the system. For instance, we set up two-factor authentication to comply with money transfer regulations in some countries. We also integrated new payment solutions into the platform.
Sibedge engineers are eager to share with customers their insights and expertise which they acquired by being involved in a large number of projects across different industries.
The client's CTO appreciated that Sibedge developers independently proposed solutions and came up with architecture improvements. For example, earlier the platform was deployed through a little-known and inconvenient Vagrant tool. It delayed the building process by several days. We proposed to run the process in the Docker container. It would increase the speed of deployment manyfold and divide the backend from frontend instead of uniting them. The client approved of the concept and now the new tool is being implemented.
Millions of users from Canada and North America interact with the platform. Soon it will be launched in Australia, Oceania, South America and Europe. Since Sibedge's team of engineers reworked the architecture and refactored the code, the platform creators have been able to support and develop their system with ease.
We speeded up the software development by extending the client's team with back-end and front-end engineers, designers, an analyst, a project lead and his assistant. Having the project supported by Sibedge specialists, the client decided to completely redesign the system based on users' interest and UI/UX requirements. Currently our team is working on this task.
The project marked the start of a long-term cooperation between the client and Sibedge. We began with mere migration to the Angular 2.0 framework. But soon enough we earned the client's trust and started working on an extended functionality. We've achieved a powerful symbiotic relationship where we listen to each other and find solutions together. We are excited to see how this fruitful cooperation will propel both companies to reach new highs.
- 1 - Project Manager
- 1 - System and Business Analytic
- 2 - UX/UI Designers
- 3 - Back-end Developers
- 4 - Front-end Developers