In lastminute.com, KrakenD played a vital role in our API transformation journey by protecting our business platforms boundary and exposing the business capabilities in a standard way to both internal and external audience – Stefano Leopizzi
Background
Over the past decade, lastminute.com has evolved its production architecture, shifting from a traditional approach to a more flexible and scalable system.
As part of this continuous evolution, lastminute.com identified opportunities to enhance governance and streamline interactions across its growing ecosystem of hundreds of microservices.
To address these needs, the company adopted the Team Topologies approach, restructuring its organisation around Business Platforms: self-contained units that provide APIs, tools, services, and knowledge, treated as internal products.
To further support these platforms and enable structured interactions, lastminute.com adopted KrakenD, prioritising team autonomy. This empowered product engineering teams to independently manage API gateway configurations, eliminating reliance on a centralised infrastructure team and accelerating development cycles.
Empowering Teams Through Autonomy
KrakenD was adopted with a focus on team autonomy, enabling product engineering teams to manage API gateway configurations independently. This avoided the need for tickets to a centralized infrastructure team and sped up development cycles.
- Teams could treat KrakenD configurations as part of their usual development and release process.
- Internal tools were developed to reduce cognitive load, allowing teams to focus on delivering value rather than mastering the intricacies of API gateway configuration.
Introducing the KrakenD API gateway in front of each Business Platform helped to:
- Define clear boundaries between platforms.
- Enforce segregation of concerns.
- Enable structured and safe evolution of inter-platform interactions.
- Expose business capabilities to B2B partners by reusing the same APIs developed for internal use.
The initial features delegated to KrakenD were authorization and rate-limiting, setting the stage for a more secure and governed ecosystem.
Streamlined Configuration with OpenAPI and CI/CD
To simplify configurations, lastminute.com leveraged KrakenD’s flexible configuration feature to implement a programmatic approach:
- OpenAPI Specifications: Engineering teams only needed to focus on writing OpenAPI specs and a few custom extensions.
- Automated Configuration: Internal tools transformed these specs into complete KrakenD configurations.
- CI/CD Pipelines: Ensured safe and efficient deployment of configurations.
This approach minimized misconfigurations and errors while maintaining development velocity. Limiting the cognitive load on development teams was important because not every member could be proficient in configuring an API gateway.
Enhanced Governance with API style Rules
The adoption of tools like Stoplight and Spectral automated the enforcement of API style rules and governance processes, ensuring a smooth transition from API design to deployment.
Success Metrics
The success of KrakenD’s adoption was measured by:
- API Coverage: The number of existing APIs now exposed through KrakenD.
- Team Adoption: The number of internal teams successfully onboarded into the migration initiative.
The scale of lastminute.com today is over 50 engineering teams with around 400 product development engineers, and a production environment involving more than 500 microservices, interacting through both synchronous and asynchronous methods.
Even though the program has been structured to address in the long term the typical three kind of APIs (public, partners and internal), the focus so far has been put on the “partners API” and specifically those APIs that could immediately provide business value to both partners, other internal business platforms and our mobile app.
This led to identifying and exposing through KrakenD the main business functionalities related to a “travel business platform” (i.e., an API to allow searching and selecting destinations, transport, accommodation, and ancillary services), as well as checkout and payment services.
This phase has brought many learning opportunities, both in terms of improving the documentation of our API (both in the OpenAPI specifications and additional docs) and in terms of API specifications itself.