Uber AI Building Blocks establishes core, reusable ML systems that can be applied across problems. Through close collaboration we deliver innovative Machine Learning/AI solutions for core business problems.
We focus on productionizing ML to improve end user experiences and drive the business. As a core offering, we are developing a platform around recommendation and personalization across Uber products. We strive to understand our riders, drivers, restaurants and build more personal experience across all users. As an engineer, you will be responsible for building these systems that are high performant and can operate at high scale (imagine every Uber trip) while leveraging state-or-art research in Recommendations. You will deliver these solutions from inception to production.
What You'll Do
- Build backend systems & microservices that will recommend products to users across Uber's suite of businesses. These systems will be used by other services in various contexts like search, feed and intent generation
- Help build a predictions engine that can support a wide variety of personalization and recommendations use cases
- Partner with product teams to analyze key business problems
- Collaborate with data science and engineering teams to integrate and validate machine learning solutions end-to-end
- Build & manage realtime and batch data pipelines that build interrelationships between products, items and users. These systems will leverage Uber's core ML infrastructure to power these use cases
- Strong programming and debugging skills: Joy of coding (we mainly use Go, Java & Python) and 5+ years of professional industry experience
- Big Data & Microservices: Experience working with data at scale, including experience with some or all of the following: Hadoop, Hive, Kafka, Flink, Spark, SQL, document databases, knowledge graphs
- 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
- Experience working with graph databases, knowledge graphs, recommendation systems
- ML infrastructure experience
- 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
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 10,000 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.
Uber is proud to be an Equal Opportunity/Affirmative Action 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