Developer Tooling / Infrastructure & Build System Engineer
Software, Advanced Technologies Group in San Francisco, CA
At Uber, we ignite opportunity by setting the world in motion. We take on big problems to help drivers, riders, delivery partners, and eaters get moving in more than 600 cities around the world.
We welcome people from all backgrounds who seek the opportunity to help build a future where everyone and everything can move independently. If you have the curiosity, passion, and collaborative spirit, work with us, and let’s move the world forward, together.
About the Role
Build the state of the art development tools and end-to-end development and delivery workflows for engineers who develop and validate self-driving capability on Uber’s platform
Design, develop, and deliver tools and platforms for large scale build, test, and release in developer private environment and managed continuous integration environment
Develop best practices for web development, embedded system development, machine learning, simulation and validation
Be passionate for developing well-architected, innovative, and elegant software tools and services
For senior candidates:
Drive technology initiatives end-to-end and across multiple layers of architecture
Collaborate with multiple teams, gather requirements, develop specifications, and resolve complex technical problems
Lead a team of engineers, demonstrate technical leadership, and mentor junior engineers
Multiple locations: Pittsburgh and San Francisco
Multiple levels: From entry level to staff engineer
What You’ll Do
The Developer Experience team has a few areas of specialization including build systems, developer tools/workflows, devops, and testing. Strong candidates will typically have a combination of skills across these areas. We don’t expect you to be an expert in all of them.
Strong desire for automation: building tools, services, and platforms that enable other engineers
Designing, launching, and running services in AWS to support a complex and rapidly growing software engineering org
Strong command of version control systems and policies; well versed in the pitfalls of using version control at scale, particularly with regards to git.
Deep knowledge of scalable continuous integration processes and tooling, such as Jenkins and BuildKite
Experience building and working with software testing and improvement tools including: testing frameworks, sanitizers, linters, etc.
Hands-on experience with modern software build tools, such as Bazel (strongly preferred), Buck, Pants, Please, etc.
Experience with microservice development, containerization platforms such as Docker, and container orchestration tools such as Kubernetes
Adaptable to a fast-paced environment and knowledgeable when it comes to the latest technology (SaaS/PaaS/IaaS) trends and standards
What You’ll Need
At least four years of experience with Software Engineering, DevOps, Tools
At Uber we don’t just accept difference—we celebrate it, we support it, and we thrive on it for the benefit of our employees, our products and our community. Uber is proud to be an equal opportunity workplace. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status.