Software Engineer, Systems & Infrastructure
San Francisco, United States
Why are systems important at Airbnb?
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.
The following experience is relevant to us:
- Ruby-on-Rails or Java in a production environment
- Scaling high-traffic web applications (architecture/database/memcache/CDN)
- Server administration and Amazon Web Services (EC2 et al.)
- Performance benchmarking and diagnostic tools
- Web service design
- Quarterly employee travel coupon
- Competitive salaries
- Paid time off
- Medical, dental, & vision insurance
- Life insurance and disability benefits
- Flexible Spending Accounts
- Apple equipment
- Company sponsored tech talks and happy hours
- Breakfast, lunch, and dinner
- Much more...