Work with us
All Topics (191 posts)
Data Science
Design
Development
Infrastructure
Writing
Product
Newest posts from each category
development
Measuring Technical Debt to Avoid the Boiling Frog Syndrome
source
Egor Savochkin
Sep 14, 2023
writing
Tackling UX challenges as a team
A process for rapid group ideation
Evan Karageorgos
Aug 31, 2023
datascience
How good are your ML best practices?
by George Chouliaras, Kornel Kielczewski, Amit Beka, David Konopnicki and Lucas Bernardi
George Chouliaras
Aug 23, 2023
product
How we managed to modernize the Booking.com app from the inside and out
How we managed to modernize the Booking.com app from the inside and out
Natalie Halimi
Mar 15, 2023
design
How we built our multi-platform design system at Booking.com
How we built our multi-platform design system at Booking.com
Nicole Saidy
Mar 1, 2023
infrastructure
How Reliability and Product Teams Collaborate at Booking.com
How Reliability and Product Teams Collaborate at Booking.com
Emmanuel Goossaert
Feb 28, 2019
Posts ordered by date
development
Measuring Technical Debt to Avoid the Boiling Frog Syndrome
source
Egor Savochkin
Sep 14, 2023
writing
Tackling UX challenges as a team
A process for rapid group ideation
Evan Karageorgos
Aug 31, 2023
datascience
How good are your ML best practices?
by George Chouliaras, Kornel Kielczewski, Amit Beka, David Konopnicki and Lucas Bernardi
George Chouliaras
Aug 23, 2023
development
Leveraging The Powers of Functional Code — Part 2
Leveraging The Powers of Functional Code — Part 2
Octavio Bokel
Aug 3, 2023
datascience
Booking.com @ KDD 2023
Booking.com contributions at the 29th ACM SIGKDD Conference on Knowledge Discovery and Data Mining at Long Beach, CA…
Dima Goldenberg
Jul 31, 2023
datascience
Sequential Testing at Booking.com
Introduction
Nils Skotara
Jun 12, 2023
development
How to search point-of-interest (POI) markers on a map efficiently
How to search point-of-interest (POI) markers on a map efficiently
Igor Dotsenko
May 1, 2023
product
How we managed to modernize the Booking.com app from the inside and out
How we managed to modernize the Booking.com app from the inside and out
Natalie Halimi
Mar 15, 2023
design
How we built our multi-platform design system at Booking.com
How we built our multi-platform design system at Booking.com
Nicole Saidy
Mar 1, 2023
writing
A successful UX leader is a creative leader
How to lead with creativity no matter your tenure, job…
Jade Goldsmith
Feb 6, 2023
development
Large Scale Ad Data Systems at Booking.com using the Public Cloud
Large Scale Ad Data Systems at Booking.com using the Public Cloud
Warren Qi
Dec 2, 2022
development
Write tests smarter, not harder
Chasing what is measurable, might actually be harming achieving the…
Maxim Schepelin
Nov 16, 2022
development
Scaling our customer review system for peak traffic
Scaling our customer review system for peak traffic
Benjamin Hiltpolt
Nov 8, 2022
design
Driving the product development process as a UXer
Driving the product development process as a UXer
Rianne Links
Oct 25, 2022
development
Improving GraphQL Federation Resiliency
Improving GraphQL Federation Resiliency: Investigating Failed Schema Updates
Christian Ernst
Oct 24, 2022
development
Building Properties with AWS Step Functions
Developers love new technologies and are always eager to try things hands on. As a…
Mohamed Elsaka
Oct 18, 2022
development
Leveraging the powers of functional code
How to say more, while writing less!
Octavio Bokel
Sep 27, 2022
datascience
Booking.com @ RecSys 2022
Booking.com’s publications at the 16th ACM conference on Recommender Systems
Felipe Moraes
Sep 5, 2022
datascience
How to stop wasting time fixing broken machine learning pipelines
How to stop wasting time fixing broken machine learning pipelines
Carlo Provinciali
Aug 8, 2022
datascience
Encouraged to comply
Improving bounds with Instrumental Variables
Nils Skotara
Aug 4, 2022
datascience
Term Structure of Bookings
An offbeat modeling application that analogises yield curves of bonds at…
Roopanjali Jasrotia
Jul 20, 2022
datascience
Partial Blockout Experiments for a Two Sided Marketplace
Experimenting on both sides of the…
Sam Bailey
Jun 1, 2022
product
From ideation to production in 3 steps -
A case study on how we built our first Content Machine Learning platform at Booking.com
Hadas Harush
May 18, 2022
datascience
Overtracking and trigger analysis: how to reduce sample sizes and INCREASE the sensitivity of…
Overtracking and trigger analysis: how to reduce sample sizes and INCREASE the sensitivity of
Pablo Estevez
Apr 20, 2022
product
Introducing Voice Search Experience at Booking.com
Introducing Voice Search Experience at Booking.com
Noa Barbiro
Apr 5, 2022
development
Object equality in Java and Kotlin
Introduction
Efstathios Mertikas
Mar 30, 2022
writing
What we do is much more than just writing
How to thrive as a non-native UX Writer
Susanna Agababyan
Mar 21, 2022
product
Be a PM for a Hackathon Project
Hackathons are very common events in the tech industry to foster innovation, and at Booking.com we have…
Can Ülker
Mar 15, 2022
design
How to get hired as a Designer at Booking.com
How to prepare for a design interview at Booking.com or……
Roberta Virzì
Jan 18, 2022
datascience
A/B/n testing with control in the presence of subpopulations
Link to paper
Christina Katsimerou
Dec 13, 2021
writing
Moving on from contract work to in-house UX writing
A UX writer’s first 3 months in a permanent role
Nerie Ohana
Dec 6, 2021
datascience
A Quality Model for Machine Learning Systems
by George Chouliaras, Kornel Kielczewski, Amit Beka and Lucas Bernardi
George Chouliaras
Nov 30, 2021
development
Rendering performance monitoring on Android
As developers, we always want our apps to offer the best user experience. When it…
Artem Grishin
Nov 10, 2021
datascience
Machine Learning for Fraud Detection in E-Commerce: A Research Agenda
Published in: (2021) Machine Learning for Fraud Detection in E-Commerce: A Research Agenda. In: Wang G., Ciptadi A., Ahmadzadeh A. (eds) Deployable Machine Learning for Security Defense. MLHat 2021…
Kees Jan de Vries
Nov 4, 2021
datascience
Multi-Domain Adaptation in Neural Machine Translation Through Multidimensional Tagging
Multi-Domain Adaptation in Neural Machine Translation Through Multidimensional Tagging
Satendra Kumar
Nov 1, 2021
product
Why and how we built a Messaging API Product for Partners
Why and how we built a Messaging API Product for Partners
Sidhartha Guru
Oct 6, 2021
datascience
Booking.com @ RecSys 2021
Booking.com’s publications at the 15th ACM conference on Recommender Systems
Maayan Kafry
Sep 23, 2021
datascience
Leveraging proxy variables for causal inference
Leveraging proxy variables for causal inference
Christina Katsimerou
Jun 24, 2021
product
A new PM(ommy) is born: How my experience as a PM helped me with my new baby girl
A new PM(ommy) is born: How my experience as a PM helped me with my new baby girl
Hadas Harush
Jun 13, 2021
development
How do thread priorities affect your Android app?
Introduction
Efstathios Mertikas
May 18, 2021
product
Why we use experimentation quality as the main KPI for our experimentation platform
Why we use experimentation quality as the main KPI for our experimentation platform
Christophe Perrin
May 12, 2021
product
Multiplication instead of division
Research and experimentation are the “peanut butter and jelly” of…
Lukas Vermeer
May 6, 2021
datascience
Mining the Stars: Learning Quality Ratings with User-facing Explanations for Vacation Rentals
Paper
Lucas Bernardi
Mar 23, 2021
design
How we created the illustration style for our traveller products
How we created the illustration style for our traveller products
Booking.com
Mar 1, 2021
datascience
Personalization in Practice
Methods and Applications — a WSDM ’21 Tutorial
Dima Goldenberg
Feb 26, 2021
datascience
Uplift Modeling
From Causal Inference to Personalization — Tutorial
Dima Goldenberg
Feb 26, 2021
writing
When UX Writing meets Machine Learning
Helping people understand positives and negatives in reviews by…
Serena Giust
Jan 27, 2021
product
It takes a Flywheel to Fly
Kickstarting and keeping the A/B testing momentum
Lukas Vermeer
Jan 1, 2021
datascience
There’s more to experimentation than A/B
Scaling up non-randomised experiments
Christina Katsimerou
Dec 16, 2020
datascience
Booking.com WSDM WebTour 2021 Data Challenge
Booking.com sponsors the ACM WSDM WebTour 2021 Challenge…
Dima Goldenberg
Dec 14, 2020
development
Booking’s Journey with Brotli
The challenges of improving performance in a complex environment
Mark Zabaro
Dec 10, 2020
design
Design sprint tips from 7 facilitators at Booking.com
Design sprint tips from 7 facilitators at Booking.com
Robbie Farrell
Dec 7, 2020
datascience
A fundamental problem of hypothesis testing with finite inventory in e-commerce
Published in Applied Stochastic Models in Business and Industry by Dennis Bohle, Alexander Marynych, Matthias Meiners
Booking.com Data Science
Oct 29, 2020
datascience
Recommending Accommodation Filters with Online Learning
Presented in the Workshop on Online Recommender Systems and User Modeling ORSUM ACM RecSys 2020 by Lucas Bernardi, Pablo Estevez, Matias Eidis and Eqbal Osama
Booking.com Data Science
Oct 1, 2020
design
How we created the illustration style for our partner products
How we created the illustration style for our partner products
Booking.com
Sep 29, 2020
datascience
Beyond algorithms: Ranking at scale at Booking.com
Paper: http://www.toinebogers.com/workshops/complexrec2020/Mavridis.pdf
Booking.com Data Science
Sep 24, 2020
datascience
Free Lunch!
Published in Recsys 2020, by Dima Goldenberg, Javier Albert, Pablo Estevez and Lucas Bernardi.
Pablo Estevez
Aug 28, 2020
datascience
Efficient Image Gallery Representations at Scale Through Multi-Task Learning
Paper: https://dl.acm.org/doi/abs/10.1145/3397271.3401433
Booking.com Data Science
Jul 28, 2020
datascience
Increasing sensitivity of experiments with the rank transformation
Increasing the sensitivity of experiments with rank transformation
Lin Jia
Jul 23, 2020
writing
Why you should want your localisation team to change your copy
Why you should want your localisation team to change your copy
Ayelet Kessel
Jun 30, 2020
development
Maximizing OkHttp connection reuse
Introduction
Diego Gómez Olvera
Jun 3, 2020
writing
A new name won’t fix your product
Why product names matter but user experience and understanding…
Jade Goldsmith
May 27, 2020
writing
Taking the leap with copy
The role of copywriting in big leap product launches, from when not to…
Sofia Tiira
May 13, 2020
product
Year in Search: 2019
As we kick off the start of a new year (and decade), the Booking.com Search team has taken a look back at 2019’s…
Suryansh Tibarewala
Jan 28, 2020
writing
How to respect customers in the new digital era: A case study in UX writing and machine learning
How to respect customers in the new digital era: A case study in UX writing and machine learning
Teri Hason
Jan 20, 2020
product
Personalization Using Machine Learning — From Data Science to User Experience
Personalization Using Machine Learning — From Data Science to User Experience
Anat Kalinski
Dec 17, 2019
writing
What can Dungeons & Dragons teach us about User Experience?
Yes this is a post about the game of D&D…
Andrew Matthews
Dec 2, 2019
product
Dating a hotel? How we created a personalized “Match Score” for accommodation
Dating a hotel? How we created a personalized “Match Score” for accommodation
Hadas Harush
Nov 20, 2019
datascience
Machine Learning in production: the Booking.com approach
Machine Learning in production: the Booking.com approach
Lucas Bernardi
Oct 29, 2019
writing
Responsible UX writing for machine learning
What you can learn from my experience at Booking.com
Tanja Matic
Oct 24, 2019
datascience
Cross-lingual intent classification in a low resource industrial setting
Published in EMNLP 2019 by Talaat Khalil, Kornel Kielczewski, George Chouliaras, Amina Keldibek and Maarten Versteegh
Booking.com Data Science
Oct 18, 2019
datascience
PyData Amsterdam 2019 at Booking.com:
PyData Amsterdam 2019 at Booking.com: Causal Inference, Transfer Learning for Machine Translation, and Annotating…
Melanie Mueller
Sep 10, 2019
design
What we learned onboarding 2 million home and apartment owners on Booking.com
What we learned onboarding 2 million home and apartment owners on Booking.com
Alex Muñoz
Sep 3, 2019
datascience
Semi-supervised learning to improve translation of guest reviews
Semi-supervised learning to improve translation of guest reviews
Booking.com
Sep 3, 2019
datascience
Combining Context Features in Sequence-Aware Recommender Systems
presented in RecSys 2019 Late-breaking Results, 16th-20th September 2019, Copenhagen, Denmark by Sarai Mizrachi and Pavel Levin
Booking.com Data Science
Aug 28, 2019
datascience
150 Successful Machine Learning Models: 6 Lessons Learned at Booking.com
Paper: https://dl.acm.org/doi/10.1145/3292500.3330744
Booking.com Data Science
Aug 12, 2019
datascience
Understanding Mechanisms of Change in Online Experiments at Booking.com
Mediation Analysis to…
Booking.com
Jul 16, 2019
product
3 cognitive biases Product Managers should be mindful of
And how to avoid them
Dianthe van Velzen
Jul 15, 2019
product
Improving our agile process leveraging Jira boards and flows
Improving our agile process leveraging Jira boards and flows
Dor Tal
Jun 26, 2019
design
Prototyping Booking.com’s Chatbot for Better Conversations
Prototyping Booking.com’s Chatbot for Better Conversations
Booking.com
Jun 24, 2019
writing
How minimalism made me a decent copywriter
And the work it takes to make things simple
Francesca Catanuso
May 13, 2019
product
Behind the buzzwords: how we build ML products at Booking.com
Behind the buzzwords: how we build ML products at Booking.com
Hadas Harush
Apr 11, 2019
design
Lessons learned building a design system at scale
How we built the Booking Design System (and how you…
Arda Karacizmeli
Mar 25, 2019
infrastructure
How Reliability and Product Teams Collaborate at Booking.com
How Reliability and Product Teams Collaborate at Booking.com
Emmanuel Goossaert
Feb 28, 2019
writing
Testing your copy for the price of a coffee
4 tips and 1 warning
Tanja Matic
Feb 25, 2019
design
Empowering Data with Design
Data can be just a bunch of numbers without a clear meaning or it can be a…
Booking.com
Feb 25, 2019
development
Moving fast, breaking things, and fixing them as quickly as possible
How we use online controlled…
Lukas Vermeer
Feb 21, 2019
datascience
Leaky Abstractions In Online Experimentation Platforms
Experimental design details that online…
Booking.com
Jan 9, 2019
writing
Writing accessible copy at Booking.com
Joining Booking.com in September 2017 started the biggest and…
Clare Wilson
Jan 7, 2019
product
How can AI help people make better decisions?
Machine Translation of Reviews in Booking.com.
Sathish Chander
Dec 13, 2018
infrastructure
Introducing Shipper
Customizable multi-cluster rollouts for Kubernetes
Ben Tyler
Dec 10, 2018
product
It’s not all about numbers: how we use research in product development @Booking.com
It’s not all about numbers: how we use research in product development @Booking.com
Booking.com
Nov 19, 2018
datascience
Mediation Analysis in Online Experiments at Booking.com: Disentangling Direct and Indirect Effects
Published in CODE 2018 by Tolga Oztan, Zoé van Havre, Caio Gomes, Lukas Vermeer
Booking.com Data Science
Nov 1, 2018
product
Why nobody cares about your “two cents”
“My two cents” is now a common phrase in many workplaces, used when someone wants to make…
Carlos Paz
Oct 22, 2018
product
Design Thinking for Machine Learning
Or How to Build Products with a Giant Probability Calculator
Pranav Pathak
Oct 22, 2018
product
Lessons learned from working in an A.I. first approach for product development
Lessons learned from working in an A.I. first approach for product development
Booking.com
Oct 22, 2018
design
Designing a Brand for a One-day Event: design systems, hard decisions and avoiding certain doom
Designing a Brand for a One-day Event: design systems, hard decisions and avoiding certain doom
Booking.com
Oct 3, 2018
writing
8 steps to a UX copy strategy that rocks
Align what you write with your product vision and company…
Jade Goldsmith
Sep 21, 2018
design
Using storyboards to get people engaged with your product
Using storyboards to get people engaged with your product
Booking.com
Aug 29, 2018
writing
A/B tests and copy — what, why, how
A/B testing. It’s one of the things Booking.com has built its reputation on, and it’s a huge part of the day-to-day job of anyone who works in the Tech department.
Rachael Bundock
Aug 6, 2018
datascience
Data Science meets Python at Booking.com: PyData Amsterdam 2018
We did it again! After last year’s…
Melanie Mueller
Jul 30, 2018
datascience
Crunching big data with 4 machine learning libraries
Crunching big data with 4 machine learning libraries
Antonio Castelli
Jul 12, 2018
datascience
Learning to Match
Booking.com is a virtual two-sided marketplace where guests and accommodation providers are the two distinct stakeholders. They…
Booking.com Data Science
Jun 14, 2018
datascience
Democratizing online controlled experiments at Booking.com
Paper: https://arxiv.org/abs/1710.08217
Booking.com Data Science
Jun 14, 2018
datascience
Where to Go on Your Next Trip? Optimizing Travel Destinations Based on User Preferences
Published in SIGIR 2015 by Julia Kiseleva, Melanie Mueller, Lucas Bernardi, Chad Davis, Ivan Kovacek, Mats Einarsen, Jaap Kamps, Alexander Tuzhilin and Djoerd Hiemstra
Booking.com Data Science
Jun 14, 2018
datascience
The Continuous Cold Start Problem in e-Commerce Recommender Systems
Paper: https://arxiv.org/pdf/1508.01177.pdf
Booking.com Data Science
Jun 14, 2018
datascience
User Engagement through Topic Modelling in Travel
Paper: http://www.ueo-workshop.com/wp-content/uploads/2014/04/noulasKDD2014.pdf
Booking.com Data Science
Jun 14, 2018
writing
Minimum Viable Pizzas
Crafting words for New Product Development at Booking.com
Francesca Catanuso
Jun 13, 2018
design
Success is a marathon, not a sprint
Are you planning a trip soon? Maybe a beach trip for the summer? Backpacking through Indonesia? Or perhaps a city trip to get some awesome shots with that new camera? Whatever you’re…
Booking.com
Jun 7, 2018
infrastructure
Linux Kernel bug hunting
The story starts with a message on our workplace chat:
Pavlos Parissis
May 25, 2018
writing
Don’t tell me what I can’t do
Building the right kind of feedback culture for UX Copywriters
Steven Baguley
May 23, 2018
writing
Why we built a design tool for copywriters
An introduction to Kopie
Booking.com
Apr 25, 2018
writing
How we’re building a chatbot that does more than just talk
Serial skim-readers, user research, and a robot that just wants to help
Kathy Saunders
Apr 11, 2018
writing
Writing with variables at Booking.com
How to write to infinity with the building blocks of language.
Steven Baguley
Apr 4, 2018
writing
Writing UX copy for translation
How to write your way in and out of translation issues, one language at a time
Rachael Bundock
Mar 14, 2018
writing
A day in the life of a Language Specialist
When I joined Booking.com from the NGO/Media sector, I did not have much knowledge about business terminology, and in particular, the Booking.com vocabulary was quite uncharted…
Tanja Matic
Feb 19, 2018
writing
Building the future of copywriting
Experimentation. Data-driven strategy. Translations at scale.
Marly Pierre-Louis
Feb 12, 2018
writing
Bringing words to life at Booking.com
Booking.com is a vast, global company made up of more than 15,000 human beings — we all have unique experiences and passions. That’s pretty wonderful, and powerful. Writing for us is…
Kelly Chambers
Feb 12, 2018
design
Informed by data, driven by empathy: an introduction to user experience research at Booking.com
If you know anything about the way we design at Booking.com it’s probably how much A/B testing we do. And it’s true: everything goes…
Booking.com
Feb 5, 2018
datascience
How Booking.com increases the power of online experiments with CUPED
How Booking.com increases the power of online experiments with CUPED
Simon Jackson
Jan 22, 2018
datascience
Don’t be tricked by the Hashing Trick
In Machine Learning, the Hashing Trick is a technique to encode categorical features. It’s been gaining popularity lately after being adopted by libraries like Vowpal Wabbit and Tensorflow (where it plays a key role) and others like sklearn, where support is…
Lucas Bernardi
Jan 10, 2018
design
20 Mistakes to Avoid When Applying For A Job As A Designer (or, A Personal Journey Through 1,000…
20 Mistakes to Avoid When Applying For A Job As A Designer (or, A Personal Journey Through 1,000 CVs)
Matthew Pennell
Dec 13, 2017
infrastructure
Incidents, fixes, and the day after
Incidents are like presents: You love them as long as you don’t…
Stefano Baccianella
Dec 4, 2017
design
Designing a service chatbot
I recently came back from ChatbotConf 2017, and one of the interesting things I noticed was just how many…
Sachin Honap
Nov 21, 2017
design
How we adapted the Booking.com mobile site for the iPhone X notch.
When Apple announced the launch of their latest flagship handset, the iPhone X, they promised it would set a new benchmark for mobile…
Mark Unthank
Nov 7, 2017
design
Inside Booking.com Design: Lucas Mourelle
Welcome to “Inside Booking.com Design”, our interview series where we put our design team in the spotlight and share some of the secrets of the people…
Andy Warburton
Oct 19, 2017
design
7 things you need to know about designing a chat bot
7 things you need to know about designing a chatbot
James Butler
Oct 9, 2017
development
Avoiding phase transitions in server configuration
It’s a well-known trope that if your code doesn’t run, it probably doesn’t work. This is particularly true of error handling, error recovery and…
Timo Kluck
Sep 20, 2017
datascience
Automated image tagging at Booking.com
Abstract: Understanding the content of an image is a reasonably easy task — at least for us…
Emrah Tasli
Aug 10, 2017
datascience
PyData at Booking.com: Deep Learning, Statistical Models and NLP
In April, Booking.com hosted PyData Amsterdam 2017. The Booking.com headquarters was filled with 330 Python developers and data scientists from all over…
Melanie Mueller
Jun 27, 2017
development
An unconventional way of learning a new programming language
There are more than 500 programming languages, and it’s likely you want to start learning a new one today. You might know C++ and Java, but at…
Sahil Dua
Apr 15, 2017
infrastructure
Troubleshooting: A journey into the unknown
Troubleshooting is a journey. It’s a long, unpredictable trek, one where you know the start and the end points but have zero knowledge about the actual path you…
Pavlos Parissis
Apr 14, 2017
design
Building A Testing Culture
Booking.com’s Director of Design, Stuart Frisby, shared what we have learned…
Matthew Pennell
Apr 4, 2017
design
Implementing system fonts on Booking.com — A lesson learned.
Inspired by the recent work that Github…
Stuart Frisby
Mar 29, 2017
design
The importance of feedback
On a regular day at Booking.com I will probably interact with 40–50 people. The interactions can be discussions around hypotheses for experimentation, brainstorming, experiment ideas, but mostly around providing and receiving design feedback.
Tomasz Pieta
Mar 15, 2017
design
End-to-end product thinking: How Booking.com designs for partners
At Booking.com, we’re pretty well known for our A/B testing and guest-facing platforms, helping millions of people each day to find and…
James Butler
Feb 27, 2017
design
Maja and Kit’s Winter Adventures
Take a peek into Booking.com Design Principles through Maja and Kit’s…
Polina Skaia
Feb 1, 2017
development
Using Riak as Events Storage — Part 4
We saw in the previous parts of this blog series how to gather, aggregate and store events in Riak, and how to fetch them for external processing. In this post, we'll…
Damien "dams" Krotkine
Jan 11, 2017
design
Design Critique — The Booking way
It’s Thursday afternoon. For two hours, a group of designers from different teams at Booking.com get…
Richard Rio Omolo
Dec 19, 2016
datascience
Named Entity Classification
Abstract: The customers of Booking.com communicate with us through different mediums. They perform queries on our search engine, provide us with reviews about their stay and describe their opinion about different destinations. All this communication creates an abundance of…
Themis Mavridis
Dec 16, 2016
design
Inside Booking.com Design: Zania Barnum
Welcome to “Inside Booking.com Design”, our new interview series where we put our design team in the spotlight and share some of the secrets of the people…
Andy Warburton
Dec 13, 2016
design
5 ways to listen to your customers
One of our most valued principles at Booking.com is putting the customer at the center of…
Tomasz Pieta
Oct 24, 2016
infrastructure
Evaluating MySQL Parallel Replication Part 4: More Benchmarks in Production
Parallel replication is a highly-expected feature of MySQL available in MariaDB 10.0 and in MySQL 5.7. We already presented…
Jean-François Gagné
Sep 27, 2016
infrastructure
Evaluating MySQL Parallel Replication Part 4, Annex: Under the Hood
This is the annex to Evaluating MySQL Parallel Replication Part 4: More Benchmarks in Production.
Jean-François Gagné
Sep 27, 2016
datascience
k-Nearest Neighbours: From slow to fast thanks to maths
Abstract: Building the best travel experience for our customers in Booking.com often involves solving very challenging problems. One that appears very frequently is the k-Nearest Neighbours problem (k-NN). In simple words it can be…
Lucas Bernardi
Aug 31, 2016
development
Taming the events: How we regained petabyte-scale Hive query power
In the beginning, four long years ago, simply having every data set in Hadoop was good enough. We were taking baby steps into the big…
booking.development
Jul 18, 2016
design
Beneath the Surface: UX at Booking.com
On April 21st we hosted an event to show our passion for User Experience here at…
Maria Lígia Klokner
Jun 15, 2016
development
A Few Fun Tools We Built At Booking.com
Everyone who starts working at Booking.com gets the technology talk. “We don’t want to hold you back,” they say. “We don’t want to restrict your creativity. You’re…
Matthew Pennell
Jun 6, 2016
development
Perl IntelliJ Plugin — Herd your code
Development and navigation in a large codebase can prove quite the challenge. A common tool when tackling such a large codebase is an Integrated Development…
Eli Abramovitch
May 26, 2016
development
Progressive Web Apps with Service Workers
In this post we will discuss Progressive Web Apps and Service Workers. How can they help modern-day mobile web users, and how are we experimenting with them at…
Jesse Yang
Apr 21, 2016
development
Using Riak as Events Storage — Part 3
In this post, we’ll see how to apply transformations to the events data stored in Riak without the data leaving the cluster. We saw in the previous parts how to…
Damien "dams" Krotkine
Mar 2, 2016
datascience
Using multivariant tests to determine performance impact
When we introduce new features on our website, sometimes it’s not simply the behaviour of our users that changes. The behaviour of our own systems can change, too.
Booking.com
Feb 23, 2016
development
Using Riak as Events Storage — Part 2
In this post, we’ll see how to push data to Riak, how to read it later on, and how to perform data processing out of Riak. As a reminder, we saw in the previous part…
Damien "dams" Krotkine
Nov 24, 2015
design
Changing our attitude towards failure
Are you afraid to have your designs critiqued? If so you’re not…
Booking.com
Oct 30, 2015
development
Using Riak as Events Storage — Part 1
Booking.com constantly monitors, inspects, and analyzes our systems in order to make decisions. We capture and channel events from our various subsystems, then…
Damien "dams" Krotkine
Oct 19, 2015
design
How we designed Booking.com for Business
When we set out to build Booking.com for Business, it immediately felt like we were in a…
Booking.com
Sep 21, 2015
design
A/B Testing: Concept != Execution
“We tested that, and it failed.”
Erin Weigel
Sep 21, 2015
design
Would you like fries with that?
Discussing the Hamburger Icon.
Booking.com
Sep 21, 2015
design
Goldilocks and the Three Experiments
Once upon a time, during a usability test in a low and Nether-land, a seemingly meaningless…
Erin Weigel
Sep 21, 2015
design
Automating CSS Sprites for Large Organisations
CSS sprites have come a long way in the ten years since Dave Shea first wrote…
Matthew Pennell
Sep 21, 2015
design
Responsive email
In the last few years the number of people who read our emails on mobile devices has increased rapidly and with that we turned…
Booking.com
Sep 21, 2015
infrastructure
Abstracting Binlog Servers and MySQL Master Promotion without Reconfiguring all Slaves
In a MySQL replication deployment, the master is a single point of failure. To recover after the failure of this…
Jean-François Gagné
Sep 9, 2015
infrastructure
Evaluating MySQL Parallel Replication Part 3: Benchmarks in Production
Parallel replication is a much-expected feature of MySQL. It is available in MariaDB 10.0 and in MySQL 5.7. In this 3rd post of the…
Jean-François Gagné
Jul 22, 2015
infrastructure
Evaluating MySQL Parallel Replication Part 3, Annex: Under the Hood
This is the annex to Evaluating MySQL Parallel Replication Part 3: Benchmarks in Production.
Jean-François Gagné
Jul 22, 2015
development
How We Spent Two Days Making Perl Faster
This is a story about a significant new optimization to the Perl interpreter. It is a story about battling code complexity. And it is a story about wanting to have…
booking.development
May 22, 2015
design
A year working as a designer at Booking.com
Lessons learned from this past year working as a designer…
Booking.com
Apr 16, 2015
infrastructure
Evaluating MySQL Parallel Replication Part 2: Slave Group Commit
(The previous post, Better Parallel Replication for MySQL, is Part 1 of the series.) Parallel replication is a much expected feature of…
Jean-François Gagné
Mar 31, 2015
infrastructure
Better Parallel Replication for MySQL
Parallel replication is a much-expected feature of MySQL. It’s available in MariaDB 10.0 and in MySQL 5.7. Yet, both lose efficiency when replicating through…
Jean-François Gagné
Mar 13, 2015
development
IO::Socket::Timeout: socket timeout made easy
Without network operations, running a website for booking accommodation online would be nearly impossible. Network operations can be anything from simple…
Damien "dams" Krotkine
Feb 26, 2015
development
Distributed Top-N Similarity Join with Hive and Perl
At Booking.com we have a lot of data to manage. Most of the time MySQL does the job, but for very large datasets and heavy analytics we use Hadoop and…
Bosko Devetak
Jan 5, 2015
infrastructure
Better Crash-safe replication for MySQL
At Booking.com, we use MySQL replication extensively for read scaling. However, because we have so many slaves (we have thousands), sooner or later, one of them…
Jean-François Gagné
Oct 22, 2014
development
Reusing Bitmap objects on Android
Memory management in Android can be a bit complicated if the application has heavy media demands. The Booking.com Android application had an issue explicitly dealing with…
booking.development
Aug 8, 2014
infrastructure
MySQL Slave Scaling (and more)
At Booking.com, we have very wide replication topologies. It is not uncommon to have more than fifty (and sometimes more than a hundred) slaves replicating from the same…
Jean-François Gagné
Jul 15, 2014
development
More Optimizations in Perl 5.20-to-be
In a recent post on his blog Matthew Horsfall explained a few of the optimizations to Perl that he contributed recently. On this site, we reported on the fantastic…
booking.development
May 16, 2014
infrastructure
MySQL 5.6 GTIDs: Evaluation and Online Migration
At Booking.com, we use MySQL to operate our web site where tens of million of pages are viewed and over 625,000 room nights are reserved every day. This…
Jean-François Gagné
Mar 26, 2014
development
A Faster Perl Runtime in Tiny Steps
Booking.com uses the Perl programming language heavily across its entire technical infrastructure. At the size of our infrastructure, even small performance…
booking.development
Mar 14, 2014
development
Custom Browser Extensions for Front End Developers
Booking.com is displayed in dozens languages all over the world. We also support over fifty currencies. You can browse prices on our site in either the…
Deepak Gulati
Jan 30, 2014
development
Native Extensions for Perl without Smoke and Mirrors
The standard mechanism by which one can hook native extensions into Perl, dubbed XS for “eXternal Subroutine”, is often criticized for its arcane…
booking.development
Dec 15, 2013
development
Hardening Perl’s Hash Function
In 2003 the Perl development community was made aware of an algorithmic complexity attack on the Perl’s hash table implementation[1]. This attack was similar to reports over…
booking.development
Nov 6, 2013
development
The Next Sereal is Coming!
Sereal is a fast, compact, binary, schema-less serialization format that aims at dynamic languages’ data structures and specifically supports many of Perl’s complex structures…
booking.development
Sep 5, 2013
development
The Dreaded “Attempt to free unreferenced scalar”
Every single time I see an error message that looks like Attempt to free unreferenced scalar: SV 0xDEADBEEF, my heart sinks. I know that I am in for an…
booking.development
Jun 21, 2013
development
Profiling in Production
At Booking.com, we’re big fans of monitoring. With the usual battery of system-level monitors, we keep an eye on the health of our servers. As you would expect from any commercial…
Rafaël Garcia-Suarez
May 1, 2013
datascience
Is your A/B testing effort just chasing statistical ghosts?
Controlling for repeated significance testing errors and false positive rates in commercial A/B testing is often perceived as a bit of a pedantic, academic exercise.
Booking.com
Apr 19, 2013
infrastructure
Dotfiles distribution
When faced with managing dozens of servers, keeping your configuration files up to date (or existent) becomes a real chore.
Vedran Mikulic
Apr 10, 2013
infrastructure
F5 BIG-IP Custom MIB
SNMP (Simple Network Management Protocol) is an internet protocol used to monitor and manage devices including servers, routers, switches and assorted other devices. It allows…
Robert Sutcliffe
Mar 11, 2013
development
Writing Advanced Daemons That Aren’t Daemons
This is the second and final article in a set of two. The first covered a pluggable locking toolkit. Here, we’ll explore more advanced patterns. At…
booking.development
Feb 25, 2013
development
Highlander!
There can be only one! Referring to the one process doing a particular job at a time, of course.
booking.development
Feb 18, 2013
development
Protect Against Accidental Logging of Sensitive Information
This article introduces a novel way of handling sensitive data in the structural part of a Perl web application. Quite clearly, it does not…
booking.development
Jan 2, 2013
development
Efficient CSS Compression in Perl
At Booking.com we use Yahoo’s YUICompressor to minify our style sheet and JavaScript files. We do this automatically from Perl for a smooth development experience.
Simon Bertrang
Dec 14, 2012
development
Sereal — a binary data serialization format
We introduce Sereal, a new, binary data serialization format that provides high-performance, schema-less serialization for Perl and other languages.
booking.development
Nov 13, 2012
development
The Signal Handling Blues
Unix/POSIX signal handling is tricky at best of times. At worst, it drives people to write articles about it.
booking.development
Nov 2, 2012