Reducing Deployment Times from Weeks to Days
A Trusted Partnership of Over 20 Years
At the project's outset, the client was struggling with an uptick in demand for its products and services, alongside the growing number of integrations required to support customers and developers. The team also needed to modularize products to address the shortened product lifecycle. With tools and technologies advancing all the time, it was important for the company to stay ahead of those changes and be capable of leveraging them without being dependent on any one technology.
In order to address these challenges, intive formed a cross-functional team of DevOps engineers and QA specialists, architects, and tech writers. The team was strategically chosen so that together, its members could handle any area of the project – be it product development, operations, QA, release management, or documentation.
They have the skills required for delivering, improving, and maintaining the product. The intive team designed and delivered an end-to-end multi-product software development orchestrator, or “factory model”, for executing multiple software pipelines, from the developer’s workstation to the end customer.
The goal of the product was to enhance the CI/CD flow for software developers and provide more efficient delivery of large-scale systems with high numbers of components. Users simply plug different products into the pipeline, which takes the code from development to production.
Each piece of code that is plugged into the pipeline goes through an automated review process, with the required changes automatically included in the next iteration of the product. Testing is also automated in the pipelines to ensure the stability and quality of the software factory model itself.
The solution uses monitoring and feedback tools such as Prometheus and Grafana to gather metrics, display system and product health on a centralized dashboard, and send alerts when metrics pass predefined thresholds.
The intive team also uses Black Duck to scan the code and container images for any security and compliance risks, allowing us to remove these issues in later iterations of the product.
The product also needs to be modular, agnostic, and future-proof. This is achieved by avoiding lock-in to any particular CI/CD tools or technologies, so the client can integrate new and more innovative ones as they become available.
The intive team leverages Agile principles and adopts three-week sprint cycles, delivering a new version of the product to end-users after each sprint. Continuous integration of changes and improvements and automated E2E testing ensure the product is stable and well-tested before being released.