About the Role
As an engineer on the team, you will be building production systems to enable some of the most important parts of Uber's business - Fares, Matching, Safety, Pickup Experience, and more. Our backend systems stream more than 6 TB of data a day, producing insights like Crash Detection that improve the Uber experience for both Riders and Drivers.
What You'll Do
- Collecting and Processing sensor data at trip scale (12 TB / day)
- Build streaming systems to process and transform sensor data for use in our ML systems
- Productionize Machine Learning models (crash detection, phone handling, harsh braking) that provide insight about Trips and Customer experiences
- Use analytics identify issues, root cause problems and validate solutions that improve our systems
- Build batch data pipelines to do offline analysis of sensor data and various ML models
- Work closely with customer teams to productionize, integrate and validate systems end to end
What You'll Need
- Strong programming and debugging skills: Joy of coding (we mainly use Java & Python) and 3+ years of professional industry experience
- Big Data: Experience working with data at scale, including experience with some or all of the following: Hadoop, Hive, Kafka, Flink, Spark, SQL
- Architecture chops: you should have opinions on constructing software systems and good knowledge of the principles of fault-tolerance, reliability, testing and durability. You should be able to evaluate solution tradeoffs between correctness, robustness, performance, space, and time.
- Production Systems: Experience designing and deploying high performance production services with robust monitoring and logging practices.
- Processing Pipelines: Ability to build and interact with very large data processing pipelines, distributed data stores, and distributed file systems.
- Fast learner: We're looking for software engineers who thrive on learning new technologies and don't believe in one-size-fits-all solutions. You should be able to adapt easily to meet the needs of our massive growth and rapidly evolving business environment.
- A team player: You believe that you can achieve more on a team -- that the whole is greater than the sum of its parts. You rely on others' candid feedback for continuous improvement.
Bonus Point if
- You have experience with ML infrastructure and running models in production
- You have experience working with sensor or other time-series data (audiovisual, barometric, etc)
About the Team
Uber is deeply rooted in the physical world -- our business requires a clear understanding of complicated real-world interactions and behaviors. The Sensing and Perception team seeks to understand these interactions about every trip through the use of sensors.
We create actionable insights that our partner product teams (Rider, Driver, Eats, Safety et al) use to improve customer and trip experiences. We do this by researching new models and algorithms and building platforms to serve our insights to customers at Uber scale.
This team is responsible for collecting and processing sensor data including GPS, IMU, Barometer, and more across phones and other Driver devices. Our team owns the core location pipeline ("Blue-Dot") at Uber that drives decisions across systems like ETA, Traffic, Routing, Safety, Fares, Matching and more.
We are part of a newly created org - UberAI - whose mission is to "to transform data into intelligence by pushing the frontiers of research, developing high quality scalable platforms, and collaborating on innovative applications."
Come join our team!
At Uber, we ignite opportunity by setting the world in motion. We take on big problems to help drivers, riders, delivery partners, and eaters get moving in more than 600 cities around the world.
We welcome people from all backgrounds who seek the opportunity to help build a future where everyone and everything can move independently. If you have the curiosity, passion, and collaborative spirit, work with us, and let's move the world forward, together.