Uber logo

Senior Software Engineer, Programming Systems Group

Uber

Job Description

Uber Engineering is expanding rapidly as we tackle exciting challenges at scale globally. As our team and codebase grow, there is an increasing need for automatic analysis tools to maintain high code quality and performance while allowing our engineers to adapt quickly. To support this need, the Programming Systems Group is seeking talented engineers to develop new static and dynamic analysis tools, programming models, and apply them to Uber's codebase.

Responsibilities

  • Drive exciting, ambitious, previously unsolved projects from end to end.
  • Collaborate closely with product managers and data scientists.
  • Make data-driven decisions with exceptional execution.
  • Be motivated to own projects and push them forward independently.
  • Have a passion for improving Uber for our customers.

Qualifications

  • MS or PhD degree in Computer Science, Computer Engineering, or related field.
  • Prior experience with static analysis, dynamic analysis, or machine learning applied to program analysis.
  • Solid understanding of modern program analysis and machine learning techniques.
  • Excellent coding and software design skills.
  • Ability to communicate effectively with both technical and business partners.
  • Experience in simplifying/converting business problems into technical problems.
  • Research mentality with a bias towards action to structure a project from idea to experimentation to prototype to implementation.

Preferred Skills

  • Deep understanding of innovative program analysis techniques.
  • Experience in developing static analyses.
  • Understanding of machine learning concepts and their application to program analysis problems.
  • Passion for writing clean, efficient, and well-tested code.

About the Team

The team is focused on building tools to improve performance and reliability across various languages, including Java (mobile and backend), Swift, Go, Kotlin, and TypeScript. The work involves building or extending core infrastructure and developing new optimizations/analyses targeted at key issues. Recent projects include Piranha & NullAway static analysis tools. We aim to make our tools open source and share our work through blog posts or academic papers. We actively participate in the research community, attending conferences, organizing workshops, and serving on program committees.

Join us in our mission to enhance Uber's codebase and contribute to the broader engineering community.

Benefits
Extracted with AI

  • Flexible work environment
  • Opportunities for professional growth
  • Participation in research community

Similar jobs

Last update: 23 minutes ago

Uber logo
Uber

Staff Software Engineer - Backend

Join Uber as a Staff Software Engineer - Backend, focusing on membership systems. Work with Java, Python, C++, and more in Amsterdam.

Uber logo
Uber

Staff Software Engineer - Backend

Join Uber as a Staff Software Engineer - Backend to develop and enhance solutions for millions of members globally.

Uber logo
Uber

Senior Software Engineer: Configuration Management/Deployment

Join Uber's Amsterdam team as a Senior Software Engineer focusing on configuration management and deployment. Solve infrastructure challenges at scale.

Uber logo
Uber

Staff Software Engineer, Fullstack, Capacity & Efficiency Engineering

Join Uber as a Staff Software Engineer in Amsterdam, focusing on fullstack development and capacity efficiency engineering.

Uber logo
Uber

Software Engineer - Backend - Membership

Join Uber as a Backend Software Engineer to develop member-first experiences in a collaborative team, impacting global foundations.

Uber logo
Uber

Senior Software Engineer (Elasticsearch)

Join Uber as a Senior Software Engineer specializing in Elasticsearch, working on sophisticated infrastructure across data centers and cloud.

Uber logo
Uber

Staff Software Engineer: Data & Infrastructure Platforms - Metrics & Alerting

Join Uber's Amsterdam team as a Staff Software Engineer focusing on Data & Infrastructure Platforms, specializing in Metrics & Alerting.

Uber logo
Uber

Senior Software Engineer - Capacity & Efficiency Engineering

Join Uber as a Senior Software Engineer in Amsterdam, focusing on capacity and efficiency engineering with skills in Python, Java, and distributed systems.

Uber logo
Uber

Senior Software Engineer - Production Engineering

Join Uber as a Senior Software Engineer in Amsterdam, focusing on production engineering and reliability.

Uber logo
Uber

Senior Software Engineer - Platform CI

Join Uber as a Senior Software Engineer in Amsterdam to enhance our Developer Platform using AWS, Java, Python, and Docker.

Uber logo
Uber

Senior Software Engineer - Machine Learning

Join Uber as a Senior Software Engineer in Machine Learning, focusing on developing member-first experiences in Amsterdam.

Uber logo
Uber

Senior Software Engineer - Backend

Join Uber as a Senior Software Engineer - Backend, focusing on membership experience and cross-team collaboration.

Uber logo
Uber

Senior Software Engineer - Backend

Join Uber's Membership team as a Senior Software Engineer - Backend, focusing on developing member-first experiences.

TomTom logo
TomTom

Senior Software Engineer III - Java

Join TomTom as a Senior Software Engineer III in Amsterdam, focusing on Java and back-end development in a hybrid work environment.

Uber logo
Uber

Senior Software Engineer - Backend - Maps

Join Uber as a Senior Software Engineer in Amsterdam to innovate and scale backend map services.

Uber logo
Uber

Staff Software Engineer - Backend

Join Uber as a Staff Software Engineer - Backend, focusing on membership systems, in Amsterdam. Requires 7+ years experience.

Uber logo
Uber

Senior Backend Software Engineer - Earnings Experience

Join Uber as a Senior Backend Software Engineer to build scalable systems for earnings experience.

Uber logo
Uber

Staff Software Engineer, Backend

Join Uber as a Staff Software Engineer, Backend, to lead impactful projects and mentor a talented team.

Uber logo
Uber

Staff Software Engineer - Backend

Join Uber as a Staff Software Engineer - Backend, focusing on membership systems. Work with Java, Python, and C++ in Amsterdam.

Uber logo
Uber

Software Engineer II - Web/FrontEnd

Join Uber's Membership team as a Software Engineer II focusing on Web/FrontEnd development to enhance user experience globally.

Uber logo
Uber

Senior Software Engineer - Java, AWS

Join Uber as a Senior Software Engineer focusing on Java and AWS, driving service standards and best practices.

Uber logo
Uber

Sr Staff Engineer - Earner Growth

Senior Staff Engineer role in Amsterdam focusing on software development and system architecture for Uber's Incentives Platform.

Uber logo
Uber

Staff Software Engineer - Java

Join Uber as a Staff Software Engineer focusing on Java, Spring, and distributed systems in Amsterdam.

Uber logo
Uber

Software Engineer II, Backend - Production Engineering

Join Uber as a Software Engineer II in Backend Production Engineering, focusing on reliability and efficiency of tech platforms.