Staff Software Engineer, Build Systems

Uber Uber · Consumer · New York, NY +2 · Engineering

Staff Software Engineer to develop and scale Uber's distributed build platform, focusing on speed, reliability, and developer workflow integration. Requires deep build system expertise and strong programming skills.

What you'd actually do

  1. Partner with fellow engineers to innovate, architect, develop and scale Uber's distributed build platform
  2. Provide initiative and technical leadership to build reliable, high-quality solutions that scale with Uber's engineering processes.
  3. Deliver and review technical design, code and documentation.
  4. Drive ongoing efficiency and reliability improvements through design and automation: availability, performance, scaling, monitoring and capacity.
  5. Manage upstream and downstream dependencies, collaborate with other engineering teams, gather requirements and enable successful adoption of build infrastructure.

Skills

Required

  • BS/MS/Ph.D. in Computer Science or a related discipline, or equivalent experience.
  • 8+ years of experience in Software Engineering
  • Expert level in one of the following programming languages: Go, Java, C/C++, Python, JavaScript, or Typescript.
  • Build System Expertise: Deep knowledge of at least one build system such as Bazel, Buck, Pants, Nix or similar.

Nice to have

  • Experience contributing to and improving open-source projects like Bazel, Bazel rules, and others.
  • Experience working on large scale monorepos
  • Experience in developing/operating high performance and large scale distributed systems in production. Sound understanding of fundamentals and principles of distributed systems.
  • Excellent communication skills and the ability to work well within a team and across offices.