Staff Software Engineer - Fulfillment Logistics

Uber Uber · Consumer · San Francisco, CA +1 · Engineering

Staff Software Engineer role focused on the Fulfillment platform, powering logistics for Uber's various businesses. The role involves leading the design and architecture of next-phase fulfillment capabilities, optimizing existing systems for scalability, reliability, and efficiency, and collaborating with cross-functional teams to launch new products and scale critical platforms. Requires strong experience in distributed systems, stream processing, and software engineering best practices.

What you'd actually do

  1. Lead the design and architecture of the next phase of fulfillment and product lines for our 1P, 3P, and SaaS customers, prioritizing scalability, reliability, and efficiency.
  2. Collaborate with several cross-functional teams to define requirements and translate them into technical specifications.
  3. Optimize existing Fulfillment platform capabilities for efficiency, speed, and accuracy.
  4. Devise and implement solutions that seamlessly scale with the growing needs of our user base.
  5. Mentor junior engineers, fostering a culture of knowledge exchange and continuous improvement

Skills

Required

  • Computer Science or related field (or equivalent experience)
  • 8+ years of full-time engineering experience
  • Systematic problem-solving approach
  • Knowledge of algorithms, data structures and complexity analysis
  • Strong understanding of distributed systems or stream processing
  • Strong understanding of computer science fundamentals
  • Object-oriented design
  • Data structures
  • Algorithm design
  • Problem-solving
  • Complexity analysis
  • Proficient in at least one programming language (Golang, Java, C#, or C++)

Nice to have

  • 5+ years of experience building and managing distributed systems
  • Highly efficient coding in Golang, Java or any similar languages
  • Comfortable dealing with system complexity
  • Knowledgeable in software engineering best practices throughout the entire software development life cycle
  • Coding standards
  • Code reviews
  • Source control management
  • Build processes
  • Testing
  • Operations
  • Great sense of ownership

What the JD emphasized

  • 8+ years of full-time engineering experience
  • Strong understanding of distributed systems or stream processing
  • Strong understanding of computer science fundamentals