This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
Uber is changing the way people think about transportation. Whether it's a ride, a sandwich, or a package, we use technology to give people what they want, when they want it. We're looking for engineers to join our team to help grow UberEats business that enables eaters to discover new food items/restaurants/grocery items and restaurants to grow their customer base. You'll work with teams behind apps used by millions globally every day. In hundreds of cities, people tap their phones to get a ride, get food delivered, or earn extra cash with Uber; we're looking for engineers that can help us ensure every one of those experiences is magical. UberEats ads business enables eaters to discover new foods, and restaurants to grow their customer base. You’ll work with teams behind apps used by millions globally every day and be a part of the technical foundations of a new product.
Job Responsibility
Collaborates with stakeholders within the team to build and maintain backend services and solutions to support user-facing products
Partners with stakeholders and leads team efforts to build and maintain backend services and solutions to support user-facing products, downstream services, or infrastructure tools and platforms used across Uber
Design, develop, and maintain robust and scalable software solutions
Collaborate with product managers, cross-engineering teams, data scientists and other partners to gather requirements and translate them into technical specifications
Identify opportunities and lead of the entire development lifecycle end-to-end, from architecture design and coding to deployment
Conduct thorough code reviews, offering constructive feedback to maintain high code quality and elevate coding standards
Stay up-to-date with the latest technologies and industry trends, evaluating their potential impact on our software systems and recommending appropriate integrations or improvements
Requirements
Bachelor's degree or equivalent in Computer Science, Engineering, Mathematics or related field with at least 2+ year of full-time Software Engineering work experience OR PhD in Computer Science, Engineering, Mathematics or related field
Proficiency in at least one programming language such as Java, C++, Python, or Go
3+ years of experience with backend development, building and delivering end-user products.
Nice to have
Master's degree or higher in Computer Science, Engineering, Mathematics or related field
More than 3 years of full-time Software Engineering work experience
Proven experience building highly available distributed systems (at Uber scale) and working across multiple backend services
Experience working on scalable backend systems utilizing a microservices architecture
High bar for quality as demonstrated by code reviews, documentation, unit and integration testing
Experience with optimization techniques and algorithmic development
Strong problem-solving skills, with expertise in algorithms, data structures, and complexity analysis