Technical Audit and Continuous Development for a Large
E-Commerce Platform
Eliminating issues and continuously upgrading a large e-commerce website
ABOUT
the project
Client:
Location:
Bulgaria
Company Size:
Industry:
E-Commerce
Solution:
Services:
A large e-commerce platform for selling digital vouchers, codes, and licenses for gaming and streaming platforms, as well as other e-commerce websites. We helped the customer optimize their solution which had issues with code complexity and disorganized architecture. We also help the customer improve their platform by providing continuous software development and system optimization services.
The customer was struggling with a poorly organized system having an extremely complex and disorganized codebase. We had to run a technical audit to identify all the main issues and propose a new task management approach to optimize the system efficiently. Our specialists managed to solve all the primary challenges with the help of an experienced solutions architect. Our cooperation with the customer is ongoing as we continue optimizing the client’s system and upgrading it with new features.
Customer
Our customer runs a mobile-friendly website for selling digital vouchers, codes, and licenses for gaming platforms, e-commerce marketplaces, streaming platforms, etc. The client’s system has a defined scope of functionality but it faces performance issues that are primarily associated with an excessively complex codebase.
Business Challenge
The customer struggled with the previous vendor involved in developing their system because of a lack of organization. The project did not have an efficient communication and task prioritization strategy. This poorly structured approach translated into some significant technical issues. In particular, the app’s codebase was written without regard to the common coding methodologies and principles, such as SOLID. As a result, the app’s code was too complicated, which adversely impacted its performance and made the system’s continuous development and optimization extremely challenging.
Why Leobit
The customer wanted to hire a team with significant .NET expertise. Leobit, one of the leading providers of .NET development services, became a perfect fit for them. In addition, we expressed readiness to take a more complex approach to the solution. We were willing to adapt to the customer’s communication needs, ensure task prioritization, and provide a solution architect to go beyond mere code optimization workflows.
Project
in detail
We had to take over the project that had been started by another team. Therefore, our specialists spent some time establishing new, more efficient, project workflows and evaluating the customer’s existing system.
A TECHNICAL AUDIT OF THE SOLUTION
Our team ran a technical audit helping the customer identify the main pain points of their application. As has been already mentioned, we paid much attention to the issues with the customer's codebase, which had been written by another team.
Some of the key issues that the Leobit team identified during the audit include:
The abundance of large files and methods. For instance, there were files with 1000+ or even 8000+ lines of code. There were also methods with 300+ lines of code. Such files were hard to support and reuse. We proposed to split them into smaller files and components (both front end and back end).
Issues with code duplication. In some cases, there were more than 60 repetitions of the same code string. As a result, while changing anything in the application, the developer had to go through many files to find places where change was required.
Email templates were used as strings and not as separate files. This made it challenging for the customer's team to validate the correctness of the HTML markup.
OPTIMIZED CODEBASE
Our team optimized the .NET codebase of the customer's solution by relying on the results of the technical audit. We fixed code strings that were identified during this audit and split large files and methods into smaller ones. Our team also removed duplications and rewrote some parts of the codebase by using the SOLID methods. Also, by redesigning some parts of the solution's architecture, we managed to boost the app's performance and bring more organization to the system.
CONTINUOUS SYSTEM IMPROVEMENT
By introducing a more efficient communication methodology and optimizing task management, we managed to boost the product's speed of development dramatically. As our cooperation with the client continues, we keep optimizing the customer's system and adding new functionality to their voucher-selling platform. For instance, we helped them establish an efficient system of discounts, connectivity with external systems, and upgrade basic marketplace functionality.
Technology Solutions
- A detailed technical audit identifying the main issues dropping the app’s performance and preventing it from continuous and efficient optimization.
- Optimized codebase with rewritten, modified, or split files and methods, which boosts code flexibility and increases the app’s performance efficiency.
- Several fixed issues, such as the problem of email templates used as strings instead of separate files.
Value Delivered
- An expert team ready to dive into the project started by another vendor, identify the project’s main gaps, and provide solutions to these issues.
- An efficient approach involving a customer-centric communication plan and an established system for task management and prioritization.
- Long-term support helping the customer continuously optimize their solution and expand it with new features and integrations.