Uber logo
Uber Verified
Transportation, Logistics, Food Delivery, Technology

Software Engineer II (Backend) - Fulfillment Shopping

New York, NYOnsiteFull Time$171,000–$190,000 /yrPosted 25 days agoVisa sponsorship available

Is this role right for you?

Upload your resume and get a skill-by-skill breakdown — see exactly where you match, where you're close, and what to highlight. Not a mystery percentage.

Get a tailored resume highlighting what this role needs.

Required skills

  • Golang
  • Java
  • C#
  • C++
  • Distributed Systems
  • Computer Science Fundamentals
  • Object-Oriented Design
  • Data Structures
  • Algorithm Design
  • Complexity Analysis

Nice to have

  • Production Systems Management
  • Availability SLA
  • Coding Standards
  • Code Reviews
  • Source Control Management
  • Large-Scale Distributed Systems

Role summary

Uber is seeking a Software Engineer II (Backend) for its Fulfillment Shopping team, focusing on building the next generation of product discovery, planning, and order checkout platforms. This role involves working on complex, high-scale, real-time distributed systems that power Uber's logistics and delivery businesses. The engineer will collaborate with cross-functional teams to design, develop, and launch new features and products, ensuring scalable and resilient solutions. A Bachelor's degree in Computer Science or equivalent experience, 4+ years of software development experience, and proficiency in languages like Golang or Java are required. Preferred qualifications include an MS/Ph.D. and experience with production systems and large-scale distributed systems.

About The Role

The Fulfillment platform is the foundation powering the logistics behind fulfilling user orders from any Uber app. It operates life cycles of orders, trips, drivers, eaters, and other user sessions when they interact with Uber. These interactions are real-time and high-scale when millions of concurrent riders, drivers, and eaters are using Uber. We support both Uber Rider businesses (pool, airports, hourly rentals, intercity trips, reservations, package delivery, uber health) and Uber Delivery businesses (groceries, uber eats, delivery API).

Our tech challenges are in both the business layer (data modeling of complex products, building reusable higher order business APIs to share across products) and the Infrastructure layer (storing high write & transient data, language framework, search & ranking, events & data streaming systems)

We are looking for a Software Engineer for the Fulfillment Shopping team to help build our next generation of product discovery, planning, and order checkout platforms. Over the next few years, this team will be innovating with new offerings like car rentals, third-party drivers, package deliveries, and reenvisioning the entire shopping and checkout flow for Uber. This is a high-impact role where you will partner with Engineering, Product, and Ops leaders across the company to launch new products as well as improve the overall efficiency of the marketplace.

You can get a glimpse of the work we do in Fulfillment

  • https://eng.uber.com/fulfillment-platform-rearchitecture/
  • https://eng.uber.com/building-ubers-fulfillment-platform/

Basic Qualifications

  • A Bachelor's Degree in Computer Science or a related field (or equivalent experience).
  • At least 4+ years of professional experience in software development.
  • Strong understanding of computer science fundamentals, including object-oriented design, data structures, algorithm design, problem-solving, and complexity analysis.
  • Proficient in at least one programming language, such as Golang, Java, C#, or C++.
  • Experience working with distributed systems.
  • Effective communication skills to interact with engineers, technical teams, and senior management to gather requirements, and describe software product features, technical designs, and product strategy.

Preferred Qualifications

  • MS / Ph.D. in Computer Science or related field.
  • Experience managing production systems with a strong availability SLA.
  • Knowledgeable in software engineering best practices throughout the entire software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations.
  • Experience working with large-scale distributed systems

What the Candidate Will Do

  • Collaborate in a team environment with significant ownership and autonomy over projects.
  • Work on the next phase of fulfillment and product lines for our 1P, 3P, and SaaS customers, addressing significant organizational-level challenges that impact Uber's operations.
  • Design, develop and deliver high-quality features promptly with accountability.
  • Partner with engineering managers, product managers, and other engineering teams to define project requirements and execution plans.
  • Ensure that system designs, including APIs, architecture, and dependency selection, result in scalable, resilient solutions that minimize support costs and enhance the partner experience.

For New York City, NY-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. 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.

Sample Uber interview questions

  • 1

    Design a truck tracking system that supports filtering by truck number and includes an interface

    system designmedium
  • 2

    Design Uber Eats

    system designmedium
  • 3

    Given the root of a binary tree, return the length of the diameter of the tree

    codingmedium
  • 4

    Given a sorted array of integers (which may include negatives), return the squares of the numbers

    codingmedium

Get started to unlock a personalized interview prep pack for this role.

Ready to apply?
You'll be redirected to Uber's application page.

Similar roles

See how RiseMe works

Match, tailor, and prep so you send fewer applications and land more interviews.