From an uncertain software engineering student to Head of Search Engineering.

If there’s one thing travel teaches us, it’s that the journey is just as important as the destination. With this in mind, we’re launching a new series of blog posts to bring you the personal stories of our amazing Airfam! How did they initially connect with their passion, what brought them to Airbnb, and what’s fueling them every day?

We could think of no one better to kick off this series than Rachel Zhao, the head of engineering for our Search product group, which contributed to the set of…

Ari Balogh, CTO at Airbnb, shares how striving towards excellence has served us well in a time of uncertainty.

If you’ve ever been part of a startup, you understand the importance of speed. Sometimes it feels like nothing else matters, since getting your products to market quickly can determine whether you survive. When Airbnb was an emerging company with a radical new vision for travel, we often had to prioritize speed in making tough engineering tradeoffs.

These decisions paid off, and Airbnb grew into a platform that supports millions of Hosts and Guests globally. Now, in addition to delivering fast…

Our new open-source tool makes adding animation to native apps a snap.

By Brandon Withrow, Gabriel Peal, Leland Richardson and Salih Abdul-Karim

In the past, building complex animations for Android, iOS, and React Native apps was a difficult and lengthy process. You either had to add bulky image files for each screen size or write a thousand lines of brittle, hard-to-maintain code. Because of this, most apps weren’t using animation — despite it being a powerful tool for communicating ideas and creating compelling user experiences. One year ago, we set out to change that.

Today, we’re happy to introduce our solution. Lottie is an iOS, Android, and React Native library that renders…

Today we are incredibly excited to announce the open source release of StreamAlert, a real-time data analysis framework with point-in-time alerting. StreamAlert is unique in that it’s serverless, scalable to TB’s/hour, infrastructure deployment is automated and it’s secure by default.

In this blog post, we’ll cover why we built it, additional benefits, supported use-cases, how it works and more!

Why StreamAlert?

Airbnb needed a product that empowered both engineers and administrators to ingest, analyze, and alert on data in real-time from their respective environments.

As we reasoned about our use cases and explored available options, we codified our requirements:

  • Deployment is simple…

by Charles He, Soumyadip Banerjee, Tao Tao, & Krishna Puttaswamy

Image Credit: NASA/JPL (Raghvendra Sahai). This image of the Red Rectangle was produced from data in the Hubble Space Telescope (HST) archive, taken with the Wide Field Planetary Camera 2 onboard the HST as part of Guest Observer program 7297.

Last year Airbnb grew to a point that a scalable and distributed storage system was required to store data for some applications. For example, personalization data for search grew larger than what a single machine can hold. While we could rebuild just the personalization service to scale up, we foresaw other services to have similar requirements and decided to build a common platform to simplify such tasks for other service owners.

Besides the normal request/response pattern, many services have different needs such as performing periodic bulk operations to synchronize with…

By Deepank Gupta & Kidai Kwon

Motivation and background

We observe a large amount of data from what people are searching for and booking on Airbnb. Behind these data, there are a lot of useful insights that can help hosts better manage their listings. At the same time, it can be overwhelming for hosts to process this information if they are not shared in efficient ways.

For example, one of the most common questions we hear from hosts is: How do I pick the right price? Setting a price can be hard without reliable information about other listings in your area, travel trends…

By Eli Hart

Introducing Epoxy:

Android’s RecyclerView is a powerful tool for displaying lists of items, but its usage is cluttered with boilerplate and configuration. A common requirement for our team is to display lists with complexities such as multiple view types, pagination, tablet support, and item animations. We found ourselves duplicating the same configuration patterns over and over. We developed Epoxy to mitigate this trend, and to simplify the creation of list based views for both static and dynamically-loaded content.

Epoxy takes a composable approach to building lists. Each item in the list is represented by a model…

By Anna Matlin

My name is Anna Matlin and I’m a rising senior at Princeton University studying Operations Research Financial Engineering. I spent 12 weeks as a data science intern at Airbnb, working on the Product Excellence (PX) Team, which is responsible for the Help Center, the Resolution Center, and any features that empower users to help themselves on the platform. I also worked closely with Service Excellence (SX), which builds tools to maximize the productivity of Customer Experience (CX) specialists.

I had an amazing experience at Airbnb. As an intern, I was assigned a challenging project and supported fully…

By Avneesh Saluja, Alok Gupta, Cuky Perez


When you’re in graduate school, it seems like the only career option available is to remain in the ivory tower. And it’s reasonable to see why — your advisor and peers are very likely to encourage you to follow their chosen career path. Indeed, the selection bias is strong amongst those who surround you. And when you are a professor, you believe that the only job where you can expand the knowledge base, teach, and mentor others, is within the academic setting.

However, taking a quick glance at the Ph.D. labor market shows…

by Liang Guo

Airbnb’s web application is powered by Ruby on Rails and Java. The web-facing application is a monolithic Rails application, which runs on many web servers. Web requests are handled by the Rails application and it talks to several different Java services, for instance the search service or listing pricing service. In Airbnb’s technology stack, MySQL databases play the critical role of storing core business data. We partition databases by application for ease of capacity planning. For example, users’ messaging threads and listings calendar management are separate from the core booking flow and they should be managed in…


Creative engineers and data scientists building a world where you can belong anywhere.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store