What is Build Infrastructure at Airbnb?
Every day, developers at Airbnb ship on the order of 1,000 changes across thousands of microservices. The Build Infrastructure (BuildInfra) team at Airbnb develops, deploys, and maintains the software that every Airbnb developer uses to build services and shared libraries. BuildInfra is part of our larger Developer Infrastructure team.
As Airbnb's business and engineering team have grown, we have adopted a microservices architecture. We write most of our microservices in Java. The source code for all of these services, and the internal libraries they share, lives in a monorepository called Treehouse. Treehouse has 2M lines of code, and hundreds of developers triggering thousands of builds per day; we expect Treehouse to grow by a factor of 5x in the next two years. Our BuildInfra team uses state of the art techniques, such as distributed builds and shared artifact caches, to ensure incremental and full builds are as fast as possible.
Our team is impactful and high-leverage: we make the entire engineering organization more productive. You will have visibility into every other engineering team and their systems, and you'll engage in helping and mentoring them.
What will you do on buildinfra at Airbnb?
- Bring joy to ~1000 developers every day!
- Contribute to our in-house CI/CD system,* the largest distributed system at Airbnb
- Collaborate with our customers (other Airbnb developers) to understand their needs and ensure our team focuses on the highest-impact problems
- Write tools to provide fast, stable builds across our entire tech stack
- Write tools to enable developers to easily manage internal and external dependencies
- Open source your work, describe it in blog posts, and talk about it at conferences
What have we done in the past?
- We added support for mixed-language (ObjC / Swift) iOS development to Buck, which is now in Buck core
- We used the latest features in Gradle to enable fast monorepo Java builds (our usage of Gradle's remote build cache was cited during the keynote of Gradle Summit 2017)
- Evidence of exposure to architectural patterns of a large, high-scale web application (e.g., well-designed APIs, high volume data pipelines, efficient algorithms).
- Engineers who have experience with web best practices such as A/B testing, test coverage
- You are passionate about automation, efficiency, and developer happiness!
- You have 3+ years of full-time, industry experience
- You love build tools (Gradle, Maven, sbt, Grunt, Gulp, Bazel, Buck, Xcode)
- You have experience using JVM-based languages (Java, Groovy, Kotlin)
- You are familiar with cloud infrastructure (AWS, GCE, Azure, Kubernetes, Docker)
- 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
- Much more...