The impact of Covid-19 was felt by Fortune 100 enterprises, including Hertz. The economic upheaval prompted the rental car leader to innovate. One innovation was to partner with Uber and Lyft, but the data needed was on a legacy mainframe system only accessible through a legacy API. This prompted Hertz to partner with Focused Labs to build a modern API to support their new business with Uber and Lyft.
The "Old" and the "New"
Since Hertz has over 100 years of history, it should come as no surprise that some of its technology has been around for a while and has aged. Even today, leaving the Hertz rental lot requires handing a slip of paper to a human. However, Hertz aspires to be a modern technology leader, with recent initiatives such as partnering with Uber and Lyft and introducing a fleet of 100,000 Teslas. However, their outdated technology poses challenges for their modern partners.
Partnering with Uber and Lyft revealed a three-decade technology gap for Hertz. Balancing their industry-leading "old" technology with the need to stay competitive with the "new" proved to be a challenge. To bridge this gap, Hertz needed a technology partner who understands legacy systems and can guide them into the future. They required experts who are familiar with both the "old" and the "new." This is where Focused Labs excels.
Hertz is like a 1972 Mustang Mach 1 that has been sitting in the garage for 20 years. It's an impressive machine that needs a modern tune-up to compete. Focused Labs serves as Hertz's supercharger, and to supercharge a classic, one needs to understand both the "old" and the "new."
Let's Take a Look Under the Hood
The integration of Hertz systems with the Uber and Lyft apps had a rough start. Existing integrations were confusing, based on an outdated version of the OpenTravel Alliance (OTA) specification, and utilized complicated requests in XML. Even when there were errors, requests returned "Success." Error messages were unhelpful, and warnings made no sense. This resulted in a confusing system, referred to as the "Legacy API." Uber and Lyft recognized that this was not sustainable, as bad integrations had burned them before. A better, modern, and self-describing solution was needed.
Designing a new API required a deep understanding of the Hertz domain. Uncovering this domain was akin to driving in the dark, and it was clear that a long road lay ahead.
Peering Under the Hood of Legacy Systems
Delving into legacy enterprise technology can be daunting. However, a thorough understanding of the legacy systems led us to design a better API. Knowledge of the inner workings and limitations allowed us to push the boundaries and breathe new life into this "classic."
We embarked on a journey of discovery by learning more about how the Legacy API works. Despite sparse documentation, we followed up with the team that maintains it. While this team lacked the domain knowledge we needed, we discovered that the Legacy API primarily converts data from another legacy system, which we'll refer to as the "Legacy Legacy API."
The Legacy Legacy API consists of on-prem, IBM AS/400 mainframes running COBOL. These mainframes serve the COBOL copybook format that is mapped to XML by the Legacy API. Since the Legacy API team mainly serves as a converter, we needed to collaborate with the mainframe team to understand the underlying data.
The mainframe team that owns the Legacy Legacy API possesses extensive business and domain knowledge. Collaborating with this team was the key to unlocking insights about the domain. Together, we were able to debug requests, decipher error messages, and comprehend the source of the data. Establishing continuous feedback with the mainframe team allowed us to iteratively discover, explore, and refine our understanding of the domain.
Embracing the "New" Hertz
As we delved deeper into domain and technical knowledge, we collaborated closely with Uber and Lyft to revamp the Hertz API. Our focus was on simplicity, well-documented contracts, and helpful error messages. Through iterative design, we aimed for a reasonable, descriptive, and pragmatic API. This involved working closely with our partners to address the limitations of the Hertz legacy system and finding creative solutions. For instance, scaling the mainframes that powered the Legacy API proved to be a daunting task. To meet the demands of Uber and Lyft, we had to come up with innovative approaches such as request limiting, caching, and algorithms to avoid unnecessary requests. The feedback from developers helped us ensure that we were building the right solution for our users. Leaning into Hertz Legacy and using insights to build a new API restored relationships with Uber and Lyft.
Hertz is now miles ahead of its Legacy API, with the new API continuing to mature. As of the time of writing, it serves more than one million requests daily, resulting in tens of thousands of rentals and generating over one hundred million dollars in revenue annually. Moreover, Hertz has regained its image as a reliable partner for Uber and Lyft. These remarkable achievements have laid a solid foundation for future product development at Hertz and marked a promising new beginning for the Hertz rideshare technology organization.
The engagement between Focused Labs and Hertz exemplifies the principle of "meeting clients where they are." Hertz seized the opportunity to collaborate with modern technology companies and pushed the boundaries of their legacy systems. Now, rideshare drivers can effortlessly rent a Hertz vehicle through their app, and Hertz has unlocked a new revenue stream, generating over one hundred million dollars per year. This significant milestone for Hertz fills us with pride for being part of this journey.
If you have a legacy AP that needs refreshing or a legacy system that needs a modern API complete our Contact Us form, to discuss how the experts at Focused Labs can help.