Staff Software Engineer - Android

Uber

United States

Hybrid

USD 232,000 - 258,000

Full time

9 days ago

Get a reply from this employer

Your resume and cover letter, tailored to exactly what they’re hiring for.

Get past ATS filters

Benefits offered by this job

Bonus program
Equity award
401(k) plan

Job summary

Uber seeks a Staff Android Engineer to own the Android build end-to-end, including Bazel graph, Starlark rules, and toolchains. You will drive remote caching, CI optimization, and cross-team initiatives to accelerate monorepo builds across Rider, Driver, Uber Eats, and more.

You will lead upgrades, smarter test selection, and build-health tracking, partnering with Platform, CI Platform, and product teams to deliver scalable, reliable builds.

Qualifications

  • Bachelor's degree or equivalent practical experience in computer science or related field.
  • 8+ years of full-time engineering experience.
  • Strong problem-solving, algorithms, data structures and complexity analysis.
  • Solid understanding of Android development.

Responsibilities

  • Own the Android build end to end—the Bazel build graph, Starlark rules, toolchains, and dependency management.
  • Reduce CI and local build latency via remote caching/execution, pruning, parallelism, and smart sharding.
  • Ensure green parity between local builds and CI results; eliminate flakiness and improve caches.
  • Make builds modern: lead Bazel/toolchain upgrades and automated dependency workflows.
  • Optimize test selection on the shared build graph to minimize unnecessary tests.
  • Define/build health metrics for latency, success rate, and flakiness; catch regressions early.
  • Lead through design docs, standards, mentorship, and cross-team collaboration.
  • Drive large-scale build migrations and modernization initiatives.

Skills

Bazel expertise
Remote build caching
Android build internals
CI systems at scale
Build performance analysis
Large-scale build migrations
Kotlin/Java tooling
AI-assisted tooling

Education

Bachelor's degree in CS or related

Tools

Buck (alternative)
Gradle
D8/R8
Gazelle
Buildkite

Job description

About the Role:

Engages with stakeholders across teams to lead the design, development, and evolution of the build systems and CI infrastructure that every Android engineer at Uber depends on.

Every change to Uber's Android apps — Rider, Driver, Uber Eats, and more — flows through the build. In this role, you will own the Android build end to end: the Bazel build graph and rules, remote caching, and the CI pipelines that verify every change before it lands. You will set the technical direction for making Android builds faster, more reliable, and more cost-efficient at monorepo scale, and lead cross-team initiatives to achieve these goals.

What You'll Do:
  • Own the Android build end to end — the Bazel build graph, Starlark rules and toolchains (Android, Kotlin, Java), and dependency management across a large, multi-app Android monorepo.
  • Drive down CI and local build latency through remote build caching and remote execution, build-graph pruning, critical-path parallelism, and cost-aware CI sharding.
  • Make local and CI results consistent, so a green local build, test, or lint result means a green CI run.
  • Make every build failure actionable: eliminate flakiness and cache-correctness issues, add per-target telemetry and smarter retry policies, and ensure engineers and AI coding agents know what failed, how to fix it, and who to contact.
  • Keep the Android build modern: lead Bazel upgrades, Kotlin and Android toolchain upgrades, and dependency-automation (Gazelle) rollouts as coordinated, low-disruption initiatives.
  • Shrink the workload, not just speed it up: partner on smart test selection over the shared Bazel graph so each change runs only the tests it can affect, without sacrificing quality.
  • Define and track build health — latency, success rate, cache hit rate, and flakiness — and catch regressions before developers feel them.
  • Lead through influence: write design documents, set standards, mentor engineers, lead build incident response, and partner with Android Platform, CI Platform, and product teams to deliver improvements across the organization.
About the Team:

Core Build is Uber's centralized build platform team. We own the common build infrastructure — Bazel, Gazelle, build rules, client-side remote build caching and execution, and shared build/test CI pipelines — across Uber's Java, Go, Android, iOS, and Web monorepos.

Our vision is simple: make builds fast with less friction. Because the stack is shared, an improvement we make once benefits every engineer at Uber.

We work across three pillars:

  • Velocity: Make builds faster everywhere with fewer resources — in CI, remote development environments, and on laptops — through caching, remote execution, sharding, and build-graph optimization.
  • Reliability & Diagnosability: A build failure should never leave an engineer stranded. Every failure should communicate what failed, how to fix it, and who can help.
  • Modernization, Unification & Scale: Keep the platform on the latest Bazel, maximize CI fleet utilization with smart test selection and build-graph pruning, and apply GenAI/ML to automate diagnosis and optimization.

Our next major initiative is to stop compiling the same code thousands of times: make mobile builds remote-first, so a local build becomes a download rather than a compile, and run only the tests a change can actually affect.

As the Staff Android Engineer on the team, you will be the technical owner for the Android side of this roadmap.

Minimum Qualifications:
  • Bachelor's degree in Computer Science or a related field, or equivalent practical experience.
  • 8+ years of full-time engineering experience.
  • Systematic problem-solving approach and knowledge of algorithms, data structures, and complexity analysis.
  • Strong understanding of Android development.
Preferred Technical Skills:
  • Deep, hands-on experience with Bazel (or Buck) for Android builds: Starlark rules, rules_android / rules_kotlin, build-graph and dependency management.
  • Remote build caching and remote execution (Remote Execution API; e.g., Buildbarn, BuildBuddy, EngFlow).
  • Android build internals: Gradle, D8/R8, resource processing, and Kotlin compiler / annotation-processing performance.
  • CI systems at scale (e.g., Buildkite): sharding, test orchestration, and flaky-test management.
  • Build performance analysis and observability (Bazel profiles, Build Event Protocol, metrics, and regression dashboards).
  • Leading large-scale build migrations or upgrades (e.g., Buck/Gradle to Bazel, Bazel major versions, bzlmod).
  • Tooling development in Kotlin/Java.
  • Applying LLMs/AI agents to developer tooling (e.g., automated build-failure diagnosis).
  • Cross-platform experience (Android and iOS).

Ready to Ride?

This isn't the kind of place where you follow a playbook — it's where you help write one. If you're driven by impact, energized by challenge, and ready to shape how the world moves — we'd love to hear from you.

You may be eligible for bonuses, equity, and other compensation, as well as a range of benefits.

Offices remain key to collaboration and Uber's culture. Unless approved for full remote work, employees must spend at least 50% of their time in-office. Some roles, like those at greenlight hubs, require full-time in-office presence. Ask your Recruiter for details about this role's requirements.

Uber is proud to be an Equal Opportunity employer. All qualified applicants will receive consideration for employment without regard to sex, gender identity, sexual orientation, race, color, religion, national origin, disability, protected Veteran status, age, or any other characteristic protected by law. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires accommodation, please let us know by completing this form.

For New York City, NY-based roles: The base salary range for this role is USD $232,000 per year - USD $258,000 per year.

For San Francisco, CA-based roles: The base salary range for this role is USD $232,000 per year - USD $258,000 per year.

For Seattle, WA-based roles: The base salary range for this role is USD $232,000 per year - USD $258,000 per year.

For Sunnyvale, CA-based roles: The base salary range for this role is USD $232,000 per year - USD $258,000 per year.

For all US locations, you will be eligible to participate in Uber's bonus program, and may be offered an equity award & other types of comp. All full-time employees are eligible to participate in a 401(k) plan. You will also be eligible for various benefits.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Staff Software Engineer - Android Build Infrastructure
Staff Software Engineer - Android Build Infrastructure

Uber Technologies Inc. • Sunnyvale (CA)

On-site
USD 232,000 - 258,000
Bonus program
Equity award
401(k) plan
+1
Sr Software Engineer - Android
Sr Software Engineer - Android

Uber • United States

On-site
USD 202,000 - 224,000
Bonus program & equity
401(k) plan
Comprehensive benefits
Sr Software Engineer - Android
Sr Software Engineer - Android

Uber • New York (NY)

On-site
USD 202,000 - 224,000
Senior Software Engineer - Java Platform
Senior Software Engineer - Java Platform

Uber • United States

On-site
USD 202,000 - 224,000
Bonus program
Equity award
401(k) plan
Sr Staff Engineer - U4B
Sr Staff Engineer - U4B

Uber • United States

On-site
USD 267,000 - 297,000
Staff Engineer - Core Infrastructure
Staff Engineer - Core Infrastructure

Uber • United States

On-site
USD 232,000 - 258,000
Bonus program
Equity award
401(k) plan
+1
Sr Software Engineer - Developer Platform
Sr Software Engineer - Developer Platform

Uber Technologies Inc. • Sunnyvale (CA)

Hybrid
USD 202,000 - 224,000
Sr Software Engineer - Developer Platform
Sr Software Engineer - Developer Platform

Uber Technologies Inc. • New York (NY)

On-site
USD 202,000 - 224,000
Bonus program
Equity award
401(k) plan
+1
Sr Software Engineer - Developer Platform
Sr Software Engineer - Developer Platform

Uber Technologies Inc. • San Francisco (CA)

On-site
USD 202,000 - 224,000
Bonus program
Equity award
401(k) plan
+1
Sr Software Engineer - Developer Platform
Sr Software Engineer - Developer Platform

Uber Technologies Inc. • Seattle (WA)

Hybrid
USD 202,000 - 224,000
Bonus program
Equity award
401(k) plan
+1