We are looking for a Software Engineer II to join the Uber Eats Search Engineering team, where you will help build and optimize high-performance search systems that deliver relevant and personalized results at scale. In this role, you will contribute to search ranking, indexing, query processing, and infrastructure improvements. You will work closely with other engineers, data scientists, ML engineers, and product teams to enhance the search experience and improve system efficiency.
Requirements
Experience
2+ years of experience in software engineering
Skills
Strong programming skills in Python, Java, or Go
Experience with data structures, algorithms, and information retrieval concepts
Understanding of distributed systems, caching, and performance optimization
Experience with SQL and NoSQL databases for indexing and storage
Responsibilities
Develop and optimize search algorithms, ranking models, and query processing techniques.
Enhance search relevance by improving indexing, retrieval, and ranking mechanisms.
Implement and maintain scalable search pipelines and distributed indexing systems.
Work with machine learning engineers to integrate AI-driven search ranking and personalization models.
Analyze search performance metrics and run A/B experiments to measure improvements.
Optimize latency, throughput, and scalability of search infrastructure.
Contribute to system design and architecture decisions to improve search quality and efficiency.
Write clean, efficient, and maintainable code in Python, Java, or Go.
Collaborate with cross-functional teams to enhance search relevance and user experience.
Monitor and troubleshoot search-related production issues to ensure system reliability.