The customer is an international leader in the development and maintenance of shipping software. For shipping, finance, and customer service automation, its main product for SMBs links ERP, ecommerce, and business solutions. It also works with international and domestic package and freight companies, as well as ecommerce businesses.
The on-premises version is installed locally and used in the customer's corporate network's intranets. Multiple carrier support, carrier quotes and rating comparisons, label and document printing, customized notifications, a dashboard with metrics and reports, and automatic invoice production and dispatch are all included in the solution. However, hosting the solution became time and resource intensive, and the lack of scalability hampered growth.
The customer wanted to enter the SaaS market in order to expand their services and attract more customers by allowing them to sign up, set up, and dispatch orders directly from their browser. Implementing a subscription model was also a hurdle.
We became the customer's project partner because of our competence in cloud migration and distributed team management.
The collaboration's goal was to create a native multi-tenant solution that would run on the same infrastructure as the on-premises version.
After evaluating other cloud platforms, Turbo Webs engineers decided on the Microsoft Azure Service Fabric platform because of its simple, cost-effective, and quick migration procedure, as well as its worry-free maintenance and support. For a vast and expanding user base, our team calculated the amount of cloud resources, their scaling capacity, and cost estimations.
We switched from a client-server architecture to a microservices-based architecture that supports multi-tenancy, scalability, and security. The final result now consists of a collection of interconnected websites and services.
The cloud migration makes it possible to use the same codebase on-premises and in the cloud. Developers may automatically build and configure the code to generate on-premises installers or deploy it to Azure as Azure services, making the product scalable and appealing to a wider audience.
Turbo Webs has included a new automatic parcel measuring capability that allows users to connect scales to their computers and have the solution weigh and measure their shipment for them. The weight and dimensions of the shipment are automatically displayed in the dashboard, allowing users to compare freight charges from different carriers. The feature was first introduced in the on-premises version of Turbo Webs and then transferred to the cloud as a distinct microservice.
The team at Turbo Webs created a subscription solution that includes an access and ID management web application that allows users to sign up for the service. Admin and reseller portals for managing tiers, pricing, usage, and income reporting are included in the built tool. End users can sign up for a free trial, switch levels, and manage subscriptions and payments using the site. Billing and user administration, roles and permissions, emails, and notifications are all handled by the system.
In addition to establishing new connections for carrier APIs, introducing new features and correcting problems, and enhancing DevOps processes using Octopus Deploy and TeamCity, our professionals have linked the system with Authorize.NET and APS Payments, the ERP, and carts. They also create marketplace integrations that allow users to join up directly on internet marketplaces.
Our quality assurance team collaborated with the manual testing engineers at the customer. Turbo Webs QA engineers performed test automation and dealt with issues that arose throughout the project's implementation. We designed new features as a mixed team, chose technologies for automated situations, and updated them to align with new features.
Turbo Webs QA team performed security, stress, and load tests before to the introduction of the cloud product version to assess solution performance, compliance with security requirements, and capacity to handle the expected usage load. Continuous testing and automated load testing were also introduced.
- Stress tests revealed the maximum number of virtual users, the system's upper limit of performance, and its relationship to the number of concurrent operations, users, and sent requests.
- We used load tests to verify if the system could consistently resist the load for an extended period of time.
- Penetration tests enabled us to identify system security flaws, as well as their potential risk level and severity, and make recommendations for reducing the risks. We performed penetration tests on both authenticated and non-authenticated users, checking information collecting and access control, app environment and input validation, client-side security, and app logic.
With on-demand releases, we collaborated with the customer using the Kanban technique.
- We recommended transitioning from internally hosted Mercurial to Atlassian-hosted BitBucket and Git for source control.
- All code was migrated to Bitbucket Cloud and Git, a SaaS-based service that helped the customer avoid downtime, internal infrastructure expenditures, and issues with external employee access.
- We recommended using the TeamCity build machine and configuring Octopus Deploy to automate continuous deployment and efficiently manage releases.
- Confluence and Jira were chosen to replace the legacy documentation system, making the Kanban process setup easier.
- We also simplified the customer's internal infrastructure by migrating a portion of it from Windows to Linux and used Docker to do so. This strategy avoids virtualization, saves resources, makes maintenance easier, and speeds up system updates.
During this long-term cooperation, Turbo Webs has helped the international shipping automation provider to redefine their flagship product by migrating it to the cloud, transforming its architecture into a microservices-based one, and integrating new features while maintaining the legacy on-premises product version sharing the codebase with the cloud-based solution.
With the scalable cloud-based product released, the customer has successfully entered the SaaS market, while being able to maintain the legacy on-premises platform and grow their client base consistently.