Software Engineer II - Machine Learning

Uber

San Francisco (CA)

On-site

USD 171,000 - 190,000

Full time

4 days ago
Be an early applicant
Application generator

A complete application in a minute — tailored resume and cover letter, ready to send.

Get past ATS filters

Benefits offered by this job

Bonus program
Equity award
401(k) plan
Benefits

Job summary

Uber is seeking a Software Engineer II (MLE) to architect scalable systems powering the delivery marketplace. You will design, develop, and maintain backend features with a focus on low latency and high reliability, while building ML models to boost delivery efficiency.

Join a global team focused on robust monitoring, cross-functional collaboration, and end-to-end ownership of the software lifecycle. In San Francisco, in-office presence is expected for collaboration and culture, with competitive

Qualifications

  • 3+ years of professional software engineering experience backend/distributed systems/data engineering.
  • Proficiency in Go, Java, Python, or C++.
  • Experience applying ML, statistics, or optimization to large-scale problems.
  • Experience with data modeling, query optimization, and translating customer problems into system design.
  • Bachelor’s Degree in Computer Science, Engineering, or related field; testing and monitoring experience.

Responsibilities

  • Design, develop, and maintain high-quality code for moderately complex features with dependencies.
  • Develop and optimize ML models to improve delivery marketplace efficiency.
  • Build and scale foundational infrastructure and data pipelines with long-term impact in mind.
  • Own the software lifecycle end-to-end from design docs to production incident handling.
  • Collaborate with Product, Data Science, and Ops to translate requirements into system designs.
  • Provide quality code reviews, comprehensive tests, and performance improvements.

Skills

Go
Java
Python
C++

Education

Bachelor's Degree in Computer Science or Engineering

Job description

About the role and team

Engineering at Uber means building for real-world impact under real-world constraints. As a Software Engineer II (MLE), you will architect innovative products and scalable systems that keep the marketplace efficient, reliable, and ready for continued growth. Our systems power hundreds of millions of consumers and millions of merchants around the world, and that footprint is expanding rapidly. You will be solving complex challenges at the intersection of low latency, high correctness, and massive scale.

The problems here are messy and the systems are global. You’ll need to make smart decisions with imperfect information, own your work end-to-end, and stay calm when high-load systems are on the line. We are looking for engineers who think in systems, pride themselves on robust monitoring, and believe that the best solutions are built through candid feedback and cross-functional collaboration. If you’re energized by challenges and motivated to move the real world - this is where you’ll grow.

What you’ll do

Design, develop, and maintain high-quality code for features of moderate complexity and projects with multiple dependencies.

Develop and optimize ML models to enhance the efficiency of the delivery marketplace

Build and scale foundational infrastructure and data pipelines, balancing technical debt and shifting priorities while keeping long-term impact in mind.

Own the software lifecycle end-to-end, from drafting design docs to debugging production issues and managing incidents independently.

Collaborate across disciplines - including Product, Data Science, and Ops - to translate ambiguous requirements into simple, elegant system designs.

Champion engineering best practices by providing quality code reviews, creating comprehensive tests, and improving system performance.

Navigate internal complexity and stakeholder inquiries to unblock dependencies and ensure the reliability of our production environment.

Basic Qualifications

3+ years of professional software engineering experience in backend development, distributed systems, or data engineering.

Proficiency in one or more object-oriented or functional programming languages (e.g., Go, Java, Python, or C++).

Experience in applying machine learning, statistics, or optimization techniques to solve large-scale problems.

Experience with data modeling, query optimization, and translating customer problems into system design.

Bachelor’s Degree (or equivalent experience) in Computer Science, Engineering, or a related technical field.

Experience writing tests to verify functionality and establishing monitoring systems to ensure code stability.

Preferred Qualifications

Experience identifying and reducing code-level technical debt in high-load distributed systems.

Background in mentoring new team members and contributing to engineering culture.

Experience in designing and crafting scalable, reliable, maintainable and reusable ML solutions using deep-learning techniques and statistical methods.

Demonstrated ability to exercise sound judgment on engineering trade-offs for complex features.

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

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.

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. Explore our 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.

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.

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Senior Software Engineer - ML Infra
Senior Software Engineer - ML Infra

Uber • Seattle (WA)

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

Uber • Seattle (WA)

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

Uber • San Francisco (CA)

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

Uber • United States

On-site
USD 202,000 - 224,000
Staff Machine Learning Engineer - Uber AI Solutions
Staff Machine Learning Engineer - Uber AI Solutions

Uber • San Francisco (CA)

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

Uber • New York (NY)

On-site
USD 202,000 - 246,000
Software Engineer II - Backend
Software Engineer II - Backend

Uber • San Francisco (CA)

On-site
USD 171,000 - 190,000
Bonus program
Equity award
401(k) plan
+1
Software Engineer II - Backend Engineer
Software Engineer II - Backend Engineer

Uber • San Francisco (CA)

On-site
USD 171,000 - 190,000
Bonus program
Equity
401(k) plan
+1
Staff Software Engineer - Engineer
Staff Software Engineer - Engineer

Uber • New York (NY)

On-site
USD 232,000 - 258,000
Bonus program
Equity awards
401(k) plan
+1
Software Engineer II - Backend Engineer
Software Engineer II - Backend Engineer

Uber • New York (NY)

On-site
USD 171,000 - 190,000