About the Role
The matching team directly contributes to Uber's growth and profitability by intelligently optimizing dispatch decisions. The team is dealing with a high-scale realtime backend system that's solving a complex mathematical optimization problem using machine learning.
In 2019, our matching system optimized 1.6 trillion possible pairs and fulfilled 6 billion trips. Though we made some breakthroughs to the system in the past few years, we are still only scratching the surface of the problem. We are looking for a talented software engineer who can move us to the next level. As a software engineer in the Matching Inference team, you will utilize both scalable backend engineering and machine learning skills to make a direct impact on Uber's mission.What You'll Do
- Translate business level metrics to an engineering/science problem
- Solving the complicated optimization problem by combining a highly scalable backed system and machine learning models.
- Be responsible for the End to End of the product - ML model pipeline & backend system design, implementation, AB testing, and rollout.
- Collaborating in a team environment across all functions, including but not limited to engineers, product managers, data scientists, operations
- BS, MS, or PhD in Computer Science, Math or a related technical field, or equivalent experience.
- 2+ years of experience in software engineering focusing on prediction and optimization problems.
- Sound understanding of computer architecture and CS fundamentals.
- Proficient in one of the following programming languages: Java, Go, Python, C/C++.
About the Team
- Detailed problem-solving approach and knowledge of algorithms, data structures, and complexity analysis.
- Experience working on large-scale distributed systems
- Experience working on large scale Machine Learning platforms,
- Grit, drive and a strong feeling of ownership coupled with collaboration
- Advanced degree in Computer Science and related field.
- Engineering work, internships, relevant course-work, or project experience in any of the following areas: machine learning, search, ranking, recommendation systems, pattern recognition, data mining, or artificial intelligence
- Proven experience developing sophisticated software systems scaling to millions of users with production quality deployment, monitoring and reliability
- Proven track record to translate insight into business recommendations.
- Strong engineering and science skills.
The Marketplace Dynamics Group (Matching, Surge and Shared Rides), within the broader Marketplace group (https://marketplace.uber.com/), optimizes driver and rider matching algorithms for supply efficiency. We also build real time dynamic pricing mechanisms to balance market reliability and welfare, and identify and explore new growth areas for Uber through the shared rides platform
Uber's Marketplace Engineering team creates the technology behind our ridesharing marketplace by connecting riders with drivers at the push of a button. Our solutions expand user access, deliver reliability, and provide more transportation choices to users across our global markets.
We do this by building scalable real-time systems that analyze thousands of trip assignments every second to maximize marketplace throughput. This team has a direct impact on Uber's growth and profitability by running the marketplace more efficiently, improving rider convenience, and driver utilization.