Software Engineer II
Uber started out to solve a simple problem: the need to get a ride across town. Six years and one billion trips later, we've stumbled upon something a bit bigger: a new way to help tackle congestion—one of the most serious challenges cities face today.
Using technology, Uber makes it quick and easy for people headed in the same direction at the same time to share their journey. It's carpooling at the press of a button. And by getting more people into fewer cars we've proven you can reduce congestion and pollution overtime. UberPOOL in Los Angeles, for example, cut the number of kilometres driven across town by 12.7 million and carbon dioxide pollution by 1,400 metric in just eight months in Los Angeles.
Longer term, we're optimistic that smartphone apps like Uber can also offer a real alternative to individual car ownership. After all, if you can press a button and get an affordable ride across town in minutes 24-hours a day, why bother to own a car? There is an alternative to a world that looks like a parking lot and moves like a traffic jam. Join Uber to help make that future possible.
About the Role
If you are interested in making a direct impact to the company's bottom line, join the Ad Tech team. Uber spends a significant amount on our ad and marketing efforts which can be optimized significantly and directly speed up the company's path to profitability. Help us build the software systems that will make this happen. The team is in its early stages, so you can drive products from inception to adoption and further iterations.
What You'll Do
- Work on systems to track and report on ad spend ROI.
- Build systems to automate ad operations.
- Build and work with real-time/batch data pipelines that track and attribute ad spend to actions that Uber users take (e.g. take rides, eats orders, etc.).
- Build systems that detect ad fraud and help us eliminate malicious or fraudulent ad networks.
- Build systems that increase our organic traffic (SEO and content).
- Work on systems that will use advanced machine learning techniques to optimize spend within different channels
- Build systems that will help us target the right kind of potential users out there in the world who haven't tried Uber yet. This involves working with datasets that are world population scale (billions of rows).
What You'll Need
- 3+ years experience
- Architecture: Knowledge of data structures and an eye for architecture. You can discuss the tradeoff between architectural choices, both on a theoretical level and on an applied level.
- Strong coding/debugging abilities: You have advanced knowledge of at least one programming language, and are happy to learn more. Our core languages are Java, Python, and Scala.
- Big data: Experience with Distributed systems such as Hadoop, Hive, Spark, Kafka, Vertica is preferred.
- Data pipeline: Strong understanding in SQL, Database. Experience in building data pipelines is a great plus. Love getting your hands dirty with the data implementing custom ETLs to shape it into information.
- A team player: You believe that you can achieve more on a team — that the whole is greater than the sum of its parts. You rely on others' candid feedback for continuous improvement.
- Design and business acumen: You understand requirements beyond the written word. Whether you're working on an API used by other developers, an internal tool consumed by our operation teams, or a feature used by millions of customers, your attention to details leads to a delightful user experience.
Back to top