
Sr Software Engineer - Engineer
Uber · Sunnyvale, CA, United States · San Francisco, CA, United States · Seattle, WA, United States
Strong hiring record · median 26 days open
All reasons
- This role has been posted 4 times
In its favour
- Posted today
- Still listed on the employer's own board
- Publishes a salary range
Senior Software Engineer, Michelangelo Job Controller team
About the role and team
Leading at Uber means setting direction in motion, not waiting for perfect conditions. As a Senior Software Engineer on the Michelangelo Job Controller team, you will help build the compute infrastructure that runs ML workloads for hundreds of teams across Uber, from scheduling and launching Ray and other distributed jobs on Kubernetes to managing their lifecycle at scale. Our mission is to make transportation as reliable as running water, and we need strong engineers to build the dependable, high-performance foundation that supports that vision.
This is a role for a systems thinker who thrives in high-stakes environments. You will navigate the "messy" reality of complex infrastructure spanning global data centers and multiple cloud providers, supporting a wide variety of ML workloads. You will make smart decisions with imperfect information and own the outcomes of what you build. If you lead with clarity, build with heart, and are motivated by the challenge of reliability and efficiency at unparalleled scale, this is where you'll make your mark.
What you'll do
- Design and build the Job Controller, the Kubernetes-native system that manages the lifecycle of ML jobs, including submission, scheduling, execution, and cleanup.
- Build and improve the integration of Ray and Kubernetes, solving scaling, reliability, and resource utilization challenges for large training and processing workloads.
- Work on compute infrastructure problems such as job placement across clusters, resource pools, quota, and capacity efficiency.
- Drive reliability and observability for the controllers, including safe rollouts, failure handling, and well-defined SLOs.
- Use data-driven analysis to diagnose job failures, scheduling delays, and performance regressions, and to optimize resource utilization.
- Build tooling, APIs, and frameworks that increase the velocity and quality of hundreds of internal engineering and ML teams.
- Review code and designs, mentor other engineers, and foster a culture of continuous learning and humility.
- Work cross-functionally with ML, Product, Infrastructure, and Operations teams across the globe to drive projects and align technical investments with business value.
Basic Qualifications
- 6+ years of professional experience building scalable, fault-tolerant products or platforms, with a track record of solving important problems.
- Proficiency in one or more programming languages (e.g., Go, C/C++, Java, Python, or JavaScript).
- Deep understanding of Kubernetes and Ray, beyond using them as a user. This means knowing how they work internally and how to extend, operate, and debug them at scale.
- Experience with compute infrastructure, such as cluster management, job scheduling, or resource orchestration.
- Proven experience delivering large-scale engineering projects through the entire lifecycle from inception to production.
- Ability to make sound engineering and business tradeoffs.
- Bachelor's degree in Computer Science, Engineering, Mathematics, or equivalent practical experience.
Preferred Qualifications
- Experience building Kubernetes controllers and operators (e.g., with controller-runtime or client-go).
- Experience with ML platforms, distributed training, or workflow orchestration systems.
- Experience operating Kubernetes or Ray across multiple clusters or regions.
- Advanced degree (Master's or PhD) with a focus on distributed computing, system performance, or machine learning.
- Experience contributing to open-source projects such as Kubernetes or Ray.
For San Francisco, CA-based roles
The base salary range for this role is USD $202,000 per year - USD $224,000 per year.
For Seattle, WA-based roles
The base salary range for this role is USD $202,000 per year - USD $224,000 per year.
For Sunnyvale, CA-based roles
The base salary range for this role is USD $202,000 per year - USD $224,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.
More jobs at Uber
All 248- Staff Software Engineer - EngineerUber · Sunnyvale, CA, United States · San Francisco, CA, United States · Seattle, WA, United States · USD 232,000–258,000/yrtoday
- Director, Engineering - ObservabilityUber · San Francisco, CA, United States · Sunnyvale, CA, United States · Seattle, WA, United States +1 · USD 302,000–336,000/yrtoday
- Software Engineer II - AndroidUber · Seattle, WA, United States · San Francisco, CA, United States · USD 171,000–190,000/yrtoday
- Sr Product Manager - Agent Platform and InfrastructureUber · Sunnyvale, CA, United States · San Francisco, CA, United States · USD 190,000–211,000/yryesterday
Similar roles
- Sr. Machine Learning EngineerPinterest Job Advertisements · San Francisco, CA, US · Remote, US · USD 249,600–332,012/yrtoday
- Axiom DeveloperICONMA · Jersey City, NJtoday
- Senior Software Engineer, Digital EngineeringTrue Anomaly · Denver, CO · Long Beach, CAtoday
- Staff Software Engineer, Digital EngineeringTrue Anomaly · Denver, CO · Long Beach, CAtoday
- Software Engineer I to III, Digital EngineeringTrue Anomaly · Denver, CO · Long Beach, CAtoday
- React / Java Full Stack Software Engineer IIIJPMC · Jersey City, NJ, United States · USD 137,750–185,000today