Quadis: Orchestrate Business Critical Operations with Kestra

June 13 2024Solutions
Benoit Pimpaud

Benoit Pimpaud

Quadis: Orchestrate Business Critical Operations with Kestra

Quadis, the biggest car retailer in spain use Kestra for its daily operations going from financial reporting to car delivery alerting

Quadis is the largest car retailer in Spain, known for its extensive network of dealerships that span the entire country. Established as a leader in the automotive sales industry, Quadis has built a reputation for excellence by providing a diverse range of vehicles from various prestigious manufacturers. With a large network of dealerships throughout Spain, Quadis offers a range of vehicles from numerous prestigious manufacturers. This diversity allows them to serve a broad spectrum of customers, from private individuals to corporate fleets. Their strategic business model focuses on customer satisfaction, advanced marketing strategies, and agility in adapting to market trends, which has not only solidified their market leadership but also facilitated their entry into the top 50 European dealership groups as ranked by the International Car Distribution Program (ICDP).

They rely on orchestration to streamline their operations. From support invoices management, sales, car fleet management, transaction, marketing, customer information, car accessories management, etc. Everything is automated and needs to work together.

When the main system that controls everything goes down, it causes critical issues for the whole company. Every department relies on this, the Quadis team is working hard to enhance their orchestration’s monitoring and overall provisioning.

To make sure all these data channels keep working reliably, the engineers at Quadis decided to swap their old system to manage them with a new, more scalable: Kestra.

Discover in this blog post how Quadis manages its business-critical operations and analytics with Kestra.

Critical Financial Report Automation

Since financial reports are crucial for the company’s health, the Quadis team prioritized automating them as their first Kestra workflow.

Leveraging Kestra’s capabilities, they pull transaction data directly from the main ERP to build these reports. The process utilizes API calls, FTP tasks, and various built-in Kestra plugins, ensuring easy maintenance and future updates.

To keep the financial team informed, the generated reports are automatically delivered every day at 9

AM. These reports are critical for the financial team: whenever they are not here in the morning, they reach out to the engineering team for troubleshooting.

Thankfully, Kestra allows engineers to keep track of all logs and executions. This allows to make troubleshoot operation easy and reliable.

Notification to CRM when a customer parts order is prepared and shipped

To ensure a control of the delivery status of a customer’s order, the Quadis system automatically addresses customers with their delivery notes by email.

Powered by Kestra, this process is seamlessly integrated: when preparing a new order, customer information is instantly entered into Salesforce. These triggers allow the operations team to be ready for any call and automatically contact the customer, ensuring they receive their order on time.

The importance of this automation cannot be overstated. Any breakdown in the process would leave the customer uninformed and potentially unaware of the delivery note for their order.

To guarantee seamless operation, Quadis leverages Kestra’s robust monitoring and task execution control functionality. This enables them to swiftly identify and rectify any unforeseen issues that might arise.

How does Kestra make Quadis team life easier?

Before using Kestra, the Quadis engineering team was relying on an in-house solution coupled with Pentaho ETL tool. The pains were many:

  • Low availability. The stack wasn’t well provisioned, lacking infrastructure monitoring and support.
  • Limited by GUI. Relying only on a graphical user interface seemed like a good choice at first, but when things started to scale the solution needed to be more reliable and easier to debug. In addition, it was complex to test pipelines beforehand.
  • Lack of lineage and observability. With work spread over different teams, within a tool not designed to support such usage, the legacy solution didn’t allow the team to manage a real control plane and anticipate needs and new projects.

Quadis finally chooses Kestra to move forward and solve these issues. Kestra helps Quadis teams to move quickly on applying the best software practices such as code versioning and uncoupling orchestration from business logic. Having the possibility to have “everything as code” while keeping operations done through the UI was a keystone for this migration.

Quadis teams already use a quite classic Git workflow for scripts (dev -> PR -> master) but some users are not that used to it, so it was sometimes a bottleneck.

dev workflow Classic Git workflow for managing custom scripts at Quadis

In this advent, they like the Kestra idea of using UI and git.Push task to let users directly push flows from Kestra to Git.

With Kestra, such workflow can be easily adjusted for each user. It keeps the possibility to apply best practices without putting pressure on the user’s habits. Developers used to Git can incorporate Kestra in their daily flows. Users with a greater appetite for UI-based solutions could still stay on track and keep everything versioned and deployed through CI/CD in Azure DevOps.

git ops Develop and deploy flow to git develop branch depending on the user habit

deploy Deploying flow from QA to PROD environments through CI/CD with Azure DevOps and Terraform

As we mentioned before, Quadis teams have to manage different API calls, and custom logic made in C#, Python, etc. To streamline these processes they rely on a proper Docker build and push workflow that fully integrates with Kestra.

build image Process to build and deploy Docker images to AWS ECR across environments

Quadis progress with Kestra so far

In less than 3 months, Quadis successfully onboarded over 5 developers into Kestra. The installation was quite easy with two instances (development and production) relying on EC2 compute, S3 buckets, and AWS RDS database.

Once the installation and setup of the secret configuration had been made, they moved fast on the different blocks needed for their orchestration:

  • Access files: Quadis business relies a lot on different file protocols associated with the different services they have. They often use the FTP, CSV Writer/Reader, Excel, and S3 tasks to gather files and move them from one place to another.

  • Query relational database: Like in many applications, data are stored within Oracle or SQL Server databases. Thanks to the Oracle Batch or SQLServer Query tasks, the engineering team at Quadis easily processes data coming from different sources.

  • Transform data: Quadis teams’ skill set is spread over different technologies such as Python or C#. They use these programming languages to process data. To make everything flow, they use more and more Docker containers to isolate resources and dependencies. Kestra comes as a great help here thanks to integration with Docker made easy and the vision of uncoupling orchestration from business logic.

“We’re convinced to have chosen the right tool” - Ruben Boniz Martinez, Team Leader at Quadis

What’s Next

Moving from a legacy system made of more than a hundred pipelines is always a complex task. At Kestra we’re impressed by the involvement of Quadis teams and the speed of their development with Kestra. After onboarding the first users, they expect to have more than 30 users using Kestra in the coming months. Even more: some of them will be less technical people. Thanks to the Kestra user interface and role-based access control they could execute flows without the fear of messing up with other works.

As part of a broader modernization of Quadis operation, Kestra would also be the support for the new data lake architecture.

atlas Atlas - the new data platform to orchestrate data operation at Quadis

This new architecture will allow Quadis to move forward on data analytics, and internal web scraping (parse PDF, internal platform), and use more and more AWS services to optimize resources and lower the costs of its operations.

Supported by such transformation, Quadis is looking to expand beyond Spain: France, Portugal, and Germany and open Kestra usages in every part of the company.

We’re eager to see how Quadis will continue to use Kestra and drive their car rental business, following best practices of software and architecture.

Would you like to know how Kestra can streamline your critical operations? Join the Slack community if you have any questions or need pieces of advice. Follow us on Twitter for the latest news.

Check the code in our GitHub repository and give us a star if you like the project.

Get Kestra updates to your inbox

Stay up to date with the latest features and changes to Kestra