MoneySuperMarket Group is the holding company behind three of the UK’s most popular comparison shopping sites. Despite a very mature business with impressive YOY growth of 10% and revenues reaching £248.1m ($375.2m) in 2014, the company invests more than £16 million into building new websites and systems each year.
This re-investment in technology is part of the company’s embrace of the “startup mentality.” Every week new price comparison sites emerge, and for MoneySuperMarket Group, competitive edge is tied directly to the ability to be responsive, create and deploy new features and products quickly, and for its application infrastructure to always be one step ahead of the rate of business change. The Group’s ongoing investment in technology has enabled the business to re-platform a number of its core channels and will allow it to make future changes to the customer proposition in a more agile manner.
At our rate of innovation, there's constant tweaking—constant changes that occur. Previously those changes would take 2-3 weeks to change the tech stack and propagate through. With a Reactive application stack, we can turn around changes in 2-3 days. There are huge revenue benefits in reacting faster to changes that our customers and partners want.
Paul DickinsonHead of Group Platform and Innovation at MoneySuperMarket
In 2014, Paul Dickinson, Head of Group Platform and Innovation at MoneySuperMarket Group, was tasked to re-evaluate the software stack that underpins the company’s core “aggregation” capabilities, and to define the ideal architecture that could future-proof the company for the rate of innovation demanded by the business. For MoneySuperMarket, getting more Reactive meant:
Dickinson's first target for the replatforming effort was the already massively popular TravelSuperMarket service, a travel industry price comparison site that helps customers “get away for less” with package holidays, city breaks, flights, hotels and auto rental. The service allows price comparisons across more than 650 airlines and 200,000 hotels in a matter of seconds.
The back-end of TravelSuperMarket is heavily reliant on what the company refers to as "aggregation" - when a user fills out a form to fly from LHR to JFK, aggregation is the process of going out to partner APIs, pulling data back over HTTP, normalizing that data, and then pulling it back into the browser. In addition to re-platforming to support common aggregation and supporting business logic scenarios, the team's move to Reactive was tied to achieving a better baseline for creation of new features on the user facing application.
The legacy stack's constraints in meeting these new requirements included:
A proof of concept was built within 6 weeks using scalable squads of cross functional Cake Solutions engineers that had the autonomy to work on each part of the deliverables for the project. The proof of concept was never considered ‘throw-away’ code and acted as a thin slice of the most complex part of the project. By adopting this approach, the Java and Akka system was proven and its full power for being a reactive and scalable stack was demonstrated.
Within five months, a minimum viable product was created. This had all the critical features required—including infrastructure, performance monitoring and integration with internal systems.
Using Akka and Play, we got a lot of the Reactive patterns for free. Non-blocking, async, the bulkheading—as our adoption of those Reactive concepts grew, being able to grow and scale as a business became more straightforward.
Sulaiman Rafiq Technical Architect at MoneySuperMarket.com
Read the Tech Republic article How one company improved developer productivity by 700% with reactive programming.
Inspired by this story? Contact us to learn more about what Lightbend can do for your organization.