Stay in Touch



Software Engineer - Location Services - Geocoding Team






San Francisco, CA, US


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.

Uber is making transportation as reliable as running water for everyone, everywhere. And Maps is a critical piece to ensure efficiency and reliability for every trip across millions of riders around the globe!


Pickups are half of the equation to the perfect trip, and a large part of the efficiency comes from helping riders orient themselves in the physical space, and making the rendezvous between the rider and the driver as smooth as possible. This is even more critical in the self driving world, where there is no opportunity for a rider to contact the driver.


The Geocoding team is building out the geospatial indexing and ranking platform to enable spatial localization of users, as well as to provide suggestions for pickup locations. We aim to leverage the rich Maps data to tailor reverse geocoding to Uber’s use-cases, as well as the telemetry data from the device to semantically identify where our riders are requesting from. Being able to better localize our riders enables us to suggest better rendezvous points, thereby resulting in the perfect pickup experience!


We are a very small team of engineers responsible for determining the origin of all trips worldwide. We’re looking for a backend engineer to help us build out this platform and scale it to the tens of thousands of queries we receive every second. You will be working with some of the world's most experienced mapping professionals, data scientists, programmers, and research scientists on a very user-facing product. This is your chance to develop cutting-edge technology that will make a huge impact on the efficiency of every Uber trip!


Here are the skills we are looking for:

  • Strong computer science fundamentals.
  • Strong programming skills (we mainly use Java & Python).
  • Experience in the fields of Information Retrieval, Search, Ranking, Machine Learning.
  • Experience with large data processing pipelines, distributed data stores, map-reduce, and distributed file systems.
  • Architecture chops. You should have opinions on constructing software systems and good knowledge of the principles of scalability, fault-tolerance, reliability and durability.
  • Experience designing and deploying high performance production services with robust monitoring and logging practices.
  • Passion and a desire to learn!
  • Bonus points if you have worked with geospatial data or built geospatial services and have experience with Lucene and similar search systems.


Why join us:

  • Teammates. You would be working with sharp, motivated teammates in a fast-paced, collaborative environment.
  • Impact. This is a ground floor opportunity with the team, and you will be part of shaping the strategic direction of the company.
  • Data. Uber is a very data driven company and the large volume of data we get from millions of riders and trips daily provides endless opportunities for machine learning and data analysis.
  • High scalability engineering. Building world class engineering for high throughput and low latency distributed systems. We take ownership in creating elegant and reliable code.
  • Fun problem solving. We love solving challenging problems and building things that have never been built before.

Apply for the job

Subscribe to our blog.


Blog & Newsletter Signup