easyJet Revenue Orchestration: Migrating 15-Year Legacy App to Databricks in 6 Months
Summary
- easyJet consolidated its commercial tools onto the Databricks Data and AI platform in six months, migrating a 15-year-old desktop application fragmented across 300 repositories down to three repositories and cutting deployment timelines from nine months to three.
- The new platform integrates flights, bookings, fares, and retail data into a unified lakehouse with LakeBase for real-time low-latency optimization, supporting revenue management, network and schedule planning, in-flight retail, and AI-assisted decision-making on a single commercial hub.
- easyJet's first AI agent for competitor schedule analysis reached production in four months, built with LangChain and a judge-builder pattern to ensure trustworthy outputs that augment the 30 years of revenue science embedded in existing models rather than replacing it.
easyJet Revenue Orchestration: Migrating 15-Year Legacy App to Databricks in 6 Months

easyJet faced mounting pressure to modernize as traveler expectations demanded seamless booking, flexible changes, and personalized offers. The airline's revenue management system was frozen in time: a 15-year-old desktop application fragmenting across 300 repositories, backed by SQL Server, causing engineering bottlenecks and slow deployment cycles. this video reveals how easyJet consolidated commercial tools onto Databricks Lakehouse Platform, migrating the entire legacy system in 6 months and cutting deployment timelines from 9 months to 3.
The new platform integrates flights, bookings, fares, and other core data sources into a unified lakehouse feeding low-latency LakeBase for real-time optimization. Revenue management, network and schedule, in-flight retail, and AI-assisted decision-making converge on one commercial hub. easyJet built AI agents that assist analysts in competitor analysis and decision workflows without replacing the 30 years of revenue science. The result: personalized offers, agile iteration, and intelligent commercial decisions powered by a modern, unified data architecture.
🤝
Chapters
00:00Introduction: easyJet Scale and Modern Airline Retailing02:21Industry Shift: Dynamic Pricing and Personalization Challenge03:42Legacy System Problems: 15-Year-Old Desktop App and 300 Repositories06:06MVP Success: Moving to Databricks and Consolidating to 3 Repositories07:28Platform Architecture: Lakehouse, DLT, LakeBase, and Databricks Apps10:08Commercial Hub: Unified Platform for Revenue, Network, Retail, and AI12:21AI-Powered Decision Making: Agents as Trusted Assistants Not Replacements14:14First Agent: Competitor Schedule Analysis in Production in 4 Months15:36Judge Builder and LangChain: Building Trustworthy AI Agents17:15Results: Legacy Migration Complete, Modern Personalization Enabled
FAQs
How did easyJet migrate its legacy revenue management system to Databricks?
easyJet replaced a 15-year-old desktop application spread across 300 repositories with a unified Databricks lakehouse architecture consolidated into just three repositories using an MVP approach. The migration was completed in six months and also reduced deployment cycle times from nine months to three, enabling much faster iteration on revenue management capabilities.
What is LakeBase and how does easyJet use it for revenue optimization?
LakeBase is a low-latency database capability within Databricks that easyJet uses as part of its commercial platform to support real-time revenue optimization decisions. By feeding unified lakehouse data into LakeBase, easyJet can make pricing and capacity decisions based on current booking and schedule data rather than batch-delayed inputs.
How did easyJet build its first AI agent for competitor schedule analysis?
easyJet built the competitor schedule analysis agent using LangChain with a judge-builder pattern that evaluates the quality and trustworthiness of AI outputs before surfacing them to analysts, reaching production in four months. The design philosophy positions AI agents as trusted assistants that enhance existing revenue science rather than replacing the human and algorithmic decision-making that has been developed over 30 years.
What is modern airline retailing and why does it require a new data architecture?
Modern airline retailing refers to the industry shift toward personalized, dynamically priced offers for each traveler, moving beyond fixed fares to AI-optimized pricing and bundling of ancillary services. easyJet's presentation in this video explains that delivering personalized offers and a seamless booking experience requires unified commercial data across revenue management, network planning, and in-flight retail on a single platform.
Full transcript
[00:09] Very nice to meet you guys. So very excited to be speaking here at the summit. I think everyone has been enjoying the announcements from yesterday and today and yeah very excited to be here. So as a way of introduction my name is Dennis Michon. I'm head of data product
[00:26] at easyJet. I've been working there since 12 months. Before that I've been always working in the airline industry kind of bridging commercial decision making and IT. So I I'd like to call myself both a and airline geek as well as an IT geek
[00:43] and yeah I've been doing so since since my start of my career. I've worked at Qantas the Australian flag carrier. I've worked at SkyTeam the airline alliance. I had founded my own travel tech company
[01:01] and worked for a vendor and now since 12 months I've joined easyJet and I'm here to kind of talk about the success stories that we've been able to do on the commercial side using the data
[01:16] bricks intelligence platform. So very excited to be here. I I I heard that there is kind of the opportunity to do some Q&A at the end. So I I think there will be maybe some minutes left to do so. So and otherwise you can always come come and ask me afterwards.
[01:34] So just as a way of a quick introduction easyJet is one of Europe's leading airlines. It's a low cost carrier point-to-point short haul. We have only Airbus fleet 350 aircraft. We operate
[01:49] across 35 countries 150 airports more than 90 million passengers flown each year. So we're we're really the the the second largest carrier um in Europe in terms of passengers. Um And I I think a funny fact is that uh 300 million passengers or 300 million
[02:06] people live within 60 minutes uh of a of a an easyJet airport. So, um yeah, um we really fly to the to the main airports as well.
[02:21] I work at um commercial decision-making, and commercial is all about revenue management. It's about network and schedule. And the industry at which airlines operate is changing. And maybe for some of you that are working in the airline industry as well, you've heard about this this kind of industry change
[02:37] um whereby we are wanting to create uh or become a modern airline retailers. And every airline wants to kind of create their personalized offer, kind of create what is kind of my yeah, how can I kind of convert um and create maximize revenue and create a seamless experience
[02:54] for for customers. So, we really see that um um the industry is moving there, and easyJet is is also on that uh same journey. Um At the same time, it's quite a challenge because yes, we have 1,000 flights a day. Um and we want to kind of have a
[03:09] continuous price on that. Um but at the same time, yeah, you could say, "Oh, we've got a lot of data around that." But at the same time, we've only received half a booking every day if you think about that, right? Because you can only book 1 year in advance. And aircraft being 180 uh seats, you only
[03:25] have half booking a day. So, that's really quite quite a challenge. And our what I observed when I joined easyJet is that uh we have quite some limitations in terms of like our um applications. Um and I just saw that legacy static rules
[03:42] can't can't really meet this demand of of these dynamic uh data-rich intelligence that um moving towards offer uh really becomes. Um So, yeah, that's really the opportunity because we we we don't really want to kind of just sell the right to fly, just
[03:58] sell the seat. We have ancillary optimization. We have loyalty coming into play. Um, we just announced that we're going to have a a loyalty program as well. So, um, lifetime value disruption. So, how can we combine all of that commercial decision making, um, into one single place?
[04:15] And that's where I think, um, I Yeah, we have this term called revenue management, but I think it becomes much more like revenue orchestration. You want to kind of experience design, uh, or design the experience of the offer when a passenger, when a a a
[04:30] a a Yeah, um, when passengers come on on our website. And I think for that to enable, you need one connected system whereby all of these, um, pricing and inventory, uh, come into one kind of, uh, one single platform.
[04:45] Um, and obviously, um, AI is should be embedded in its core. And I think I'm going to share you, uh, today as well some some success story around that on how we tackle that problem. So, the challenge again, what I when I
[05:00] arrived was that we've got quite a problem. We have got a a system, uh, that was frozen in time. So, on our revenue management side, um, we had a decade old desktop application. And that was built 15 years ago, well before, uh,
[05:16] cloud data, modern retailing. Um, it was really fragmented across, uh, our teams. Uh, we had 300 repositories that would serve this application. Uh, so, a .NET desktop application, SQL Server backend, and, uh, yeah, it it it was just quite a
[05:33] challenge to, um, do any kind of product increments. We we hired, uh, product owners, we hired, uh, agile scrum masters, but in order to kind of allow for this kind of, uh, new modern retailing,
[05:49] you need a a a tech stack that allows for that. And so, when I arrived, we said, "Okay, hey, Databricks is our platform of decision. How can we kind of um let's see how we can kind of move our
[06:06] current revenue management application and rebuild it on Databricks." So, last year we did a an MVP where we kind of integrated all the different modules and see how it works. And what we could see is that Databricks really absorbed kind of the infrastructure complexity and I will
[06:22] talk a bit a little bit later how that's going to work. And we consolidated everything into three single repos. So, we went from 300 repos into three single repos. And I'll explain a little bit what that means. But um and I don't know for those who
[06:38] attended the World Tour Summit last end of last year in in London, but that's where I kind of went on stage on on the start of our journey of rebuilding it and I said, "I we're going to rebuild a 15-year-old application in
[06:54] 3 months." I was a little bit optimistic about that. Um so, it was not 3 months, but it was 5 months. So, we've completely moved our revenue management system, 15-year-old application, and we migrated
[07:11] everything within 6 months. So, um I'm very very excited about that and that we've now been able to kind of modernize everything and that we've been yeah, we're now kind of ready for that future. So, what does this platform really do? On the left-hand side, you
[07:28] can see our lakehouse where you've got all of our core analytics. And please be mindful that this is very simplistic, but we've got our flights, so our schedules, where do we fly, etc. We've got our bookings. We've got fares. We've got many other data sources, but
[07:44] yeah, um those are kind of your yeah, your core data systems that that drive your revenue management. Um those that those data sources come from the PSS. The PSS is a built-in passenger
[08:01] service system. So, for those that are aware of the industry, you've kind of have two three major players that are serving a PSS. We decided many times ago to kind of build our own PSS for various
[08:16] reasons. Um Yeah, so so those that database is kind of serving our core data sets. Um obviously, those core data sets that are in gold need some modifications. So, we've got DLT jobs that stream into our
[08:32] kind of curated workspace, let's say. And from there, we sync it using sync tables into Lake Base. So, we were one of the first ones to adopt Lake Base, hence we're still on a provisioned instance. We're about to be migrated in the next couple of weeks into auto
[08:49] scaling. But yeah, Lake Base is is kind of our enabler that could allow for this modern optimization because it requires low latency, high performance
[09:04] um interactions, let's say. So, we've got a We've got two Databricks apps running. One being the UI, which is a Node.js React web interface. And we've got a
[09:20] another Databricks app running on Python, which is our API. It's a fast API. And that API is kind of serving as the data extraction layer between Lake Base and the UI. So, where in the
[09:36] previous world in our legacy app, no there was no legacy no governance no lineage. Everyone had just access to our SQL Server database. Everyone could do whatever they want. Here I'm saying, "Hey, no one has read or write access into the lake base
[09:52] themselves." We you don't need query or SQL knowledge anymore. And from that we from lake base we have another job that can kind of optimize things and then back into PSS. But yeah, this is kind of
[10:08] yeah, our holistic overview of how we are leveraging our kind of building blocks of the Databricks intelligence platform. All deployed via these I think they got renamed to declarative automation bundles. Back in the day it was still I think Databricks asset bundles, but yeah,
[10:25] what's whatsoever. But yeah, I'm I think people have to kind of yeah, see I want to emphasize that we migrated this within 6 months. A 15-year-old application. All the SQL Server decommissioned. All the
[10:43] 300 repos decommissioned. And we made them rebuilt in in 6 months time. So what I when I realized that I was like, "Okay, the revenue management is very nice. But what about if we can use this infrastructure to also kind of
[10:59] solve other problems?" Because can we maybe not only do revenue management, but can we also include any other commercial decision making? And again, for those that are kind of familiar with the airline industry, you can imagine that or well, what's what I've been observed in the in throughout my career
[11:16] is that all these commercial decisions are kind of been happening in silo. So one is happening one decision is made, "Oh, let's introduce a flight there or let's introduce another let's change the timing of the flight." But then the pricing decision doesn't
[11:31] even they don't they're they're not even aware. So, what our fault was like let's create a commercial hub for decision making and such that we can have a unified commercial platform where all these commercial analysts can go into one for revenue management, one for
[11:47] network and schedule, one for in-flight retail, um and one for what we currently call AGI and I'll I'll I'll talk about that in a minute. But, yeah. Um um Yeah, it it's not just our RM application. It's our complete uh
[12:04] commercial decision making. So, this AGI and I've I've I think we touched about I think yesterday Ali said oh AGI is it there yes or no. I think uh uh on our on our side I think we
[12:21] slightly touched around it what what we're going to do with AGI, but uh Well, let let me introduce it. So, my view is is that um revenue management and network and schedule all the science is quite niche
[12:37] and it has been there for let's say 30 years of optimization. Papers have been around there and I don't think that an LLM or that an agent can kind of replace that. So, I don't want another forecasting engine. I don't want another optimization. I
[12:53] really want to have our LLMs, our agents be that end-to-end trusted assistant that are kind of helping in the workflow, helping the decision making, help doing automation. But, not kind of replace the the yeah, the the forecasting engine or the
[13:10] or whatsoever. So, I don't want it to be fully autonomous. I think maybe in the back end of my head I I head I'm saying okay, maybe it can replace human analyst, but if I'm going to put that on a slide all the all my uh peers in easyJet are going to call me crazy and and that's
[13:25] just not the reality. We have to do it in kind of steps and we'll see how we can get there at some point. So, my vision is really kind of a hybrid R&M team. So, a a team whereby you can have end-to-end trusted assistance on one side and the
[13:43] analyst still on the on the left-hand side, let's say. So, they really have to kind of work together in in in that sense. And I think that's that's this vision kind of boiled down quite well within within the commercial teams and that's what we've been started
[13:58] working on. So, when I shared this vision, I was like, "Okay, how can we now how can we execute on this? Where do we start?" And we did a project with Databricks around with the help of their FDE team, so
[14:14] their forward deployed engineers, and we built a first agent. And this first agent we deployed it within 4 months from idea to production and this is being used now across 50 plus users and it's all about competitor schedules.
[14:30] So, again for those familiar with the industry, there is an official airline guide that kind of produces competitor schedules. And it's very hard to kind of analyze what are what is happening, especially in these geopolitical things like which airlines, which of our competitors are
[14:47] going where and how does that really affect our own decision-making? Do we have to do it something with it? And hence yeah, that's what the answer was here. So, we've created this kind of
[15:04] agent that was be able to kind of process all the weekly changes that we got ingested and it kind of yeah, identified what we need to do with it. And I think to me it's not about the end result in that sense. It was about the process how we went from that idea to
[15:19] production. We used um, the Databricks Judge Builder. I don't know if some people have used it, but it's an that's an app in the marketplace whereby you can kind of um, judge a create a judge builder on the LLM. And the business analyst were very
[15:36] excited about this piece because they were saying every time they were saying the same thing. And saying, "Oh, we have to do we have to add this in the report. We have to add that in the report." And this judge builder allows you to do that and kind of check on that. And yeah,
[15:52] if you're any any time when you're building an agent, have a look at this this judge builder because that helped us for sure. Um, um, yeah, otherwise it's it's using LangChain. It's using MLflow. So, pretty standard
[16:08] tech setup. So, we've deployed this and but that's just one single agent. And now we're like, "Okay, how can we now move from where we are and and create this kind of hybrid setup?" And what we are thinking is to kind of evolve these agents into skills and
[16:26] saying, "Okay, how can we now create kind of personas that have access to these skills and whereby analysts can create their own kind of skills and then have a and yeah, have have these end-to-end
[16:42] assistance at at your your fingertips. And I don't know really know how how that's going to end up. So, I'm maybe next year I'll I'll be speaking more about that. But that's here we are also like kind of leveraging the the forward deployed
[16:58] engineers from Databricks to help us on this journey. But I'm very convinced that this is this is the way to go and this is how we can kind of evolve from our static rule-based engine into dynamic offer optimization.
[17:15] So, with that I want to kind of conclude and say, "Hey, how can we how can we kind of summarize what I just said?" Well, one, Databricks allowed us to kind of shift legacy shift and lift legacy applications into
[17:30] the new world. And two, by leveraging that as well, we created an agent and we can kind of yeah, allow for that vision of modern airline retailing whereby yeah, everything becomes more personalized, more agile because we're able to deploy much faster
[17:46] and for sure more intelligent. And I think that yeah, that that's really where where we see uh um easyJet going. And with that, I want to kind of conclude. I see that there's two two and a half minutes left. Maybe there is room for questions, but otherwise happy to talk to you afterwards and
[18:03] yeah, thank you very much.
Learn more about the Databricks Data and AI platform.
The information provided herein is for general informational purposes only and may not reflect the most current product capabilities or configurations.