Software Engineer - Mobile at Uber
About the Role
We are seeking a strong engineer on Uber's mobile networking team to enable an extremely reliable & high speed network to Uber's marketplace from any location on the planet. Uber's apps & services demand real-time, low latency connectivity to ensure magical user experiences and a highly efficient marketplace. Given Uber operates across 10000+ cities with different wireless networks (cellular/wifi), connecting devices (mobile apps, bikes/scooters/cars, trucks) and varying proximity to data centers, technical challenges in achieving this goal is both very challenging and foundational to the entire business.
The Mobile Networking team at Uber is responsible for the core networking stack that carries all of Uber's traffic across Android/iOS. Critical functionalities include managing certificates, routing requests to appropriate domains, efficient performance logging, etc. And we manage all different
transport stacks (HTTP, TLS, QUIC), used by Uber's mobile apps such as Rider, Partner, Eats, Freight & so on. Our team also manages the model gen and service gen for feature teams to interact with the networking library efficiently. We also build libraries for devices to pick the most performant datacenter/edge to connect to and manage how the device responds to datacenter level outages. Lastly, we also invest in large scale network analytics, monitoring and alerting across the globe for Uber's traffic, built on top of our massive big data platform.
---- What the Candidate Will Do ----
The Mobile Networking team is looking for a Software Engineer. As a member of this team, you will
- Build the foundational network stack for Android/iOS/Linux based devices and integrate it in a consistent fashion across all our apps while working with product and platform teams.
- Deeply integrate with mobile platforms, to optimize network performance specifically based on device's location, hardware capability and network connectivity.
- Build instrumentation & data collection systems that gather several TBs of network data, to understand deeply how HTTP/QUIC performs in varying network conditions across the world
- Drive forward the next generation of Uber's edge & datacenter strategy to ensure consistent performance for our users, from any location in an Uber city.
- Debug hard-to-locate bugs or leaks that impact part of the users before it becomes a larger problem
- Optimize your code and help improve the bar within the team
---- Basic Qualifications ----
- You have a good understanding of the Network stack and/or have built Android or iOS apps with a good understanding of SDK internals
- B.S. in Computer Science or a related field (or, a proven track record in software development)
- Experience with Java, Kotlin, Swift, Objective C or similar (bonus points for more than one).
---- Preferred Qualifications ----
- Proven record of building iOS or Android apps with an emphasis on end user performance optimization.
- Experience working with internet-focused network concepts & technologies such as DNS, reverse proxies, IPv4/IPv6, TCP/UDP, TLS/HTTP.
- Knowledge of UDP based protocols such as QUIC.
- Data Engineering and analysis at a massive scale for the global mobile network performance metrics, visualization and alerting on detecting trends
- You have excellent interpersonal skills and a portfolio of successful execution.
- Excellent written and verbal communication skills.
- You can collaborate well with other engineering teams to articulate requirements and design.
- Ability to assess new technologies and make pragmatic choices that help guide us towards a long-term vision.
- An open, curious, and bold approach to problem-solving while striving for the best solution.
- Passion for driving continual improvement initiatives on engineering best practices like coding, testing, or monitoring.
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 10,000 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 proud to be an Equal Opportunity/Affirmative Action employer. All qualified applicants will receive consideration for employment without regard to sex, gender identity, sexual orientation, race, color, religion, national origin, disability, protected Veteran status, age, or any other characteristic protected by law. We also consider qualified applicants regardless of criminal histories, consistent with legal requirements. If you have a disability or special need that requires accommodation, please let us know by completing this form.