About the Role
We are looking for a Software Engineer to play a key role in refining and optimizing our search capabilities. You will get to work on cutting edge technologies and will get to work with industry experts ranging from distributed systems to machine learning.
What the Candidate Will Do
- Design and implement new features in our search infrastructure solutions at Uber.
- Join on call rotation, driving continuous improvements on system availability, scalability, performance and efficiency.
- Collaborate with other infrastructure teams, production engineer team and product manager to drive adoption and standardize processes, and to design and implement high impact, cross-product features.
Basic Qualifications
- BS or MS in Computer Science or a related technical discipline, or equivalent experience.
- 3+ years of experience with software design and shipping code for large scale production systems
- Proficient in one of the following programming languages: Java, Go, C/C++ or similar languages. Good scripting skills and ability to pick up new ones.
- Systematic problem solving approach and knowledge of algorithms, data structures and complexity analysis
Preferred Qualifications
- 3 years of experience in building large-scale distributed systems
- Proficient in Golang/Java
- Experience in architectures involving multiple microservices and their interaction with web services.
- Experience designing and implementing highly scalable, robust, and fault-tolerant services
- Experience working with distributed databases, preferably with very large amounts of data
For San Francisco, CA-based roles: The base salary range for this role is USD$158,000 per year - USD$175,500 per year.
For Sunnyvale, CA-based roles: The base salary range for this role is USD$158,000 per year - USD$175,500 per year.