A few months ago, I had a unique opportunity to represent Betfair at the prestigious Kafka Summit in London where I presented the story behind how the Betfair Exchange evolved technologically from a monolithic system with serious reliability problems that was tightly coupled to an RDBMS, to a modern, event-driven, scalable and reliable platform, that is the backbone of our global business today. The talk mainly focused on how Kafka has played and continues to play a central role in this transformation. It was a fifty minute talk at the end of a long day of presentations and I was the only one standing between the audience and a cocktail party at the time. However, I was both surprised and proud of the turnout at this session, which I was told was the largest the Use cases stream of talks, for the entire day and I thoroughly enjoyed presenting our work to the packed audience. Given the time, the presentation had a deliberately casual tone, but the technical crux of the presentation was not lost on anyone. After the presentation I had the opportunity to interact with architects and senior developers from various organisations across the globe, who were interested in delving deeper into the technical nitty-gritties of our system and in discussing how they could solve their own problems, using some of the patterns we have used at Betfair.
Kafka Summit is the premier event for data architects, engineers, devops professionals, and developers who want to learn about streaming data. It brings the Apache Kafka community together to share best practices, write code, and discuss the future of streaming technologies. I was really privileged to represent Betfair here and showcase what is a truly world class distributed system implementation built around Kafka, more importantly presenting the outcome of painstaking and diligent hard work of the entire Exchange Platform development team, here in London, over a number of years.
If you like to be part of this journey as we continue to evolve the Exchange towards an exciting future, apply here.
“Every action has a consequence, and each consequence has another consequence… Be careful when making changes.” – Josh Kaufman
Frank Chen of Andreessen Horowitz spoke at the AI Summit in London in June 2018 on an area he calls “The Autonomy Ecosystem”1. The centrepiece of the presentation is the addition of a new artefact to tomorrow’s world – the self-driving car. The narrative to date around autonomous vehicles has predominately been focused on two significant consequences; human drivers being made redundant by technology and lives being saved through reduction in errors. In many instances, those two points are contrasted almost as cost and benefit. The debate of whether or how we proceed with the revolution of transport appears to rest on a simple net equation. Technology does not live in a vacuum however and the car touches a lot of ecosystems. As we come to understand the implications from the advent of new technologies, we should look towards the farther-reaching consequences and understand the role we have in shaping effects. Continue reading “The Unintended Consequences of Technology: Second Order Effects”→
In the first part, we’ve taken you through benchmarking and choosing and the right frameworks by using PoCs, now we’ll take a deep-dive into our app.
Multi-product, multi-brand app
The big challenge was how to deliver several products for multiple brands from the same codebase, with no overhead or performance penalties when developing new features. Similarly challenging is that everything needs to be easily maintained.
Power Betfair, we use a microservices-like architecture. Since most of our
services aren’t customer facing, the backend part of our website has to
aggregate data from multiple sources, compute it and then serve to the client.
Just a few
days before the World Cup started, we sequentially released a major rework of
all our Gaming sites covering both redesigning all the products and a complete
under the hood revamp. Rebuilding our technology stack was a massive effort
across multiple teams and departments, ranging from Product, Design and
Marketing to Tech, Content, SEO and the list goes on.
lengthy article we’ll talk about our journey through choosing the right
technology, learning from different mistakes and ultimately achieving what we
set out to do.
The Betfair Exchange is a truly 24/7 product as part of a global business, both in terms of the customers that bet on it and where the events they are betting on take place. Uptime and stability of the Exchange technology stack are of paramount importance to the business and its customers. Even a few minutes downtime could mean a huge loss in revenue and customer impact, as an important horse race runs without any in play bets being placed or a customer misses a crucial trade out opportunity as part of their carefully tuned betting strategy. Therefore, keeping the Exchange platform running and having an early indication of any problems are always at the forefront of our minds on the Exchange development team.
At Paddy Power Betfair (PPB) we build software not only for us and our direct customers but also for several partners. We’re responsible for empowering them to run their betting businesses without having to build and run a whole infrastructure from scratch.
Some of the web applications we build for our external partners run within our infrastructure but are meant to be used by both, us and them.
The Technology Strategy team in PPB was formed in November 2017 and has since worked on a strategic vision for technologies on the horizon, or “2021 vision”. Our team’s contention is simple: the history of emerging technology, particularly that which is characterised as disruptive, means it always warrants a keen eye.
Often waiting for maturity is a more cost-effective approach to using something which another entity will do the groundwork on. The danger, however, lies in how pronounced a disruptive effect someone else could have with that technology in the meantime.