Software Engineer, Systemsairbnb

As our transactional volume grows, our systems have to be re-architected to relieve bottlenecks. As our codebase and number of engineers grow, we invest in better tools so that we remain agile.

What are examples of work that system engineers have done at Airbnb?

We built (and open sourced) Chronos so that our data pipeline is more scalable and less brittle. The output of this pipeline is consumed by services such as search and pricing recommendations and by our analytics team.
One engineer refactored the code that determines availability and pricing into a standalone Java service that is 5x faster and that removed significant strain from the primary application.
We created Chef cookbooks to ease the deployment and management of our many services and instances of those services. In addition, we have created a suite of tools to create, destroy, search, report and perform other operations on all of our instances.
To make deploying to production many times a day easy, we built a one-click deployment system with visual, real-time indication of deployment progress. Before a deploy is available, all code is tested, in parallel, via Jenkins. If all is good, the build appears and can be shipped. Post-deploy we have real-time monitoring of our business metrics with StatsD and Graphite - if metrics diverge significantly we automatically alert relevant team-members with emails or PagerDuty.
We are using multiple CDN providers and dynamically routing traffic based on which network is offering the highest-speed (varies by geography and real-time conditions).
We have replaced DNS internally with a novel system for service discovery in order to achieve real time, fault tolerant discovery. By building on top of this system we can maintain the health of our cloud, reconfigure services on the fly, and autoscale.