Wizeline scales up the data and analytics capabilities of an innovative car-rental enterprise
Our customer, a Car Rental Company (CRC), is an enterprise with ten years of experience in locations across Mexico’s major cities. CRC offers private, monitored car rentals through their web platform. Currently, CRC rents and tracks over 20,000 vehicles for over 1000 clients looking for safe ways to transport their merchandise or employees across the country.
CRC worked with an outdated technology platform that didn’t allow them to keep up with market and customer demands. They needed a way to ingest their automobiles’ data and scale it to a higher number of devices to enable an ever-growing architecture to coincide with their growth plans. Also, CRC needed to present the collected data to their users through a web platform. This platform would enable their users to monitor their rentals in real-time, alert them of events, and create flexible data reports.
Wizeline helped CRC develop a cloud-based solution using Amazon Web Services (AWS) to collect, store, and process automobiles’ GPS and telemetry data, so CRC end-users can later analyze it through the web platform.
The new CRC system’s architecture consists of a set of independent microservices. Thanks to this implementation, the architecture can adapt to business changes, grow faster, and keep up with market and customer demands without compromising reliability and costs.
Essential Five Pillars
To create CRC’s web application, Wizeline decided to take an Agile approach that guarantees each system microservice will perform as intended across all functions and events. The Wizeline team created the web platform based on these five essential characteristics:
- Scalability: The system supports new users in different regions and is ready to be implemented at scale
- Maintainability: The system has flexible, independent components that interact among themselves
- Availability: The system is available at all times, regardless of the number of users connected, devices in use, or the tasks they are performing
- Reliability: The system offers resilient and consistent information at all times
- Security: The system prevents unauthorized access and actions and avoids exposure to attacks
Wizeline developed a web application that can seamlessly and intelligently handle logistical solutions for millions of devices. The platform implements AWS for security and content management in two sections:
- Frontend: Users log in to the web application using Amazon Route 53, which routes them to Amazon CloudFront. Then, CloudFront requests an API Gateway that resolves to an Amazon Elastic Container Service (ECS) + Fargate Cluster. Finally, Amazon Web Firewall (WAF) and Amazon Cognito authenticate and redirect users to the application portal.
- Backend: The web application uses AWS Network Load Balancer (NBL) as a single point of data entry for the fleet’s GPS devices. It registers the device’s IP address and port number. Two ECS + Fargate clusters pre-process the information. One is in charge of stream mapping and the other of stream ingestion. This approach helps to leverage a serverless solution. After the information is pre-processed, two AWS Kinesis data streams capture and make available the information to the other data processing services. Finally, AWS Kinesis data streams manage data ingestion at scale without disrupting services.
Additionally, the CRC web application uses the following Amazon Web Services to complement its activities:
- AWS S3 Buckets: Hosts static website content like HTML, JS, and media files retrieved by CloudFront
- AWS CloudFront: Enables the configuration of access restrictions like geo-restrictions, signed URLs, cookies, and different other user-set criteria
- AWS Glacier: Stores vehicle’s historical data for up to two years
- AWS CloudWatch: Stores metrics and trends for further development and improved security
- Amazon Route 53 and Amazon Cognito: Controls the access of end-users to the application through custom domains and ID tokens
- Amazon Aurora MySQL: Stores user data
Results and Benefits
Thanks to the serverless platform and the data ingestion system, CRC can provide its customers with better insights based on data trends. The platform has also enabled CRC to learn and adopt complementary technologies to achieve its vision of becoming a global player in the industry of monitored car rentals for enterprises.
With the help of Wizeline and the implementation of the platform, CRC has executed the use of a new development model based on DevOps best practices such as:
- Continuous integration: Helps prevent faulty lines in the code base, improving the software quality
- Continuous delivery: Extends the process of continuous integration by implementing all code changes in a testing environment, ensuring that all new implementations won’t hinder the software’s actual state
- Independence of microservices: Creates a microservice architecture as a small service set to serve a single purpose – to enhance the reliability of the software
- Infrastructure as Code (IaC): Provides and manages infrastructure as code through software development techniques such as version control and continuous integration, boosting the infrastructure implementation through standardized patterns
- Observability: Monitors and registers metrics that help the business record encountered problems, which allows them to find faster solutions and trends to improve the software
Wizeline was founded in 2014 on the notion that access to data unlocks better decision making. Today, over 1,000 Wizeliners bring a data-driven, design-centric, and cloud-native approach to building exceptional products for our customers.
We are the secret weapon of global enterprises and a trusted ally of high-growth startups. Our teams have mastered remote collaboration and have built strong community ties around our office locations in the U.S., Mexico, Vietnam, Thailand, Australia, and Spain. To learn more about Wizeline and our technology partners, visit wizeline.com/partners.