Airbnb is the world's largest marketplace for space, and we keep getting bigger every day. With over 100M million nights booked per year and counting, we're constantly tackling challenges in search algorithms, payments, fraud prevention, and growth - all while maintaining a beautiful user experience. To support the rapid growth in our business, we've also rapidly grown our engineering team.
The Service Framework team has increased developer velocity at Airbnb by delivering the standardized, easy to use service RPC framework and core systems libraries that provide high performance and resiliency. It is the cornerstone for the success of SOA at Airbnb.
We're looking for an experienced software engineer to work on the resilience engineering for SOA-based large-scale distributed systems. You'll work on various technical challenging problems, such as
* Provide built-in resilience in core systems libraries
* Surface system vulnerabilities with Chaos Engineering
* Protect Airbnb services with Capacity Engineering
Aligned with our company mission, Belong Anywhere, we value the importance of diversity and belonging in the workplace, and that's why we commit to not discriminating on basis of race, religion, color, national origin, gender, sexual orientation, age, marital status, veteran status, or disability status.
Work we've done:
* Standardized how engineers build services at Airbnb ("Building Services At Airbnb" [part 1, part 2, part 3]).
* Pioneered a new way of thinking about service orchestration at Airbnb: centralizing configuration and departing from Chef in favor of Kubernetes.
* Added support for mixed-language (ObjC / Swift) iOS development to Buck [blog post, now in Buck core]
* Provided fast, stable builds and tests across our entire tech stack.
* Enable fast monorepo Java builds using Gradle (our usage of Gradle's remote build cache was cited during the keynote of Gradle Summit 2017)
* Created our next-generation continuous integration and continuous delivery systems and scaled up this system, the largest distributed system at Airbnb. [talk]
* Enhanced our cloud-based development environment, which uses Kubernetes and Docker to provide every developer with a replica of Airbnb.
* Created infrastructure, frameworks and environments to run end-to-end integration tests, including a platform for fast, deterministic UI tests for Android [blog post, github].
* Built Deployboard [talk, talk], our in-house tool for deploying thousands of services.
* You are passionate about system reliability, automation, efficiency, and developer happiness!
* You are enthused by SOA, system reliability, software development lifecycle, software quality, standards, best-practices and test-automation (e.g., the testing pyramid, UI feature specs, Twelve-Factor app).
* You have excellent communication skills and the ability to work well within a team and across engineering teams.
* You are a full-cycle developer: experience operating and developing large-scale distributed systems across the full software life cycle.
* You are ambitious and adaptable (both technically and professionally).
What we're looking for:
* Passion for and deep knowledge of resilience and chaos engineering for large-scale distributed systems.
* Degree in computer science or equivalent experience.
* 3+ years of full-time, industry experience as a software engineer.
* Cloud infrastructure and container experience (AWS, GCE, Azure, Kubernetes, Docker) a strong plus
* Competitive salaries
* Quarterly employee travel coupon
* Paid time off
* Medical, dental, & vision insurance
* Life insurance and disability benefits
* Fitness discounts
* Flexible Spending Accounts
* Apple equipment
* Commuter subsidies
* Community involvement (4 hours per month to give back to the community)
* Company sponsored tech talks and happy hours
* Breakfast, lunch, and dinner
* Much more...
Airbnb is a company that provides an online marketplace and hospitality services.