Software Engineer - Wireless Network Infrastructure
Uber is a technology company that is changing the way the world thinks about transportation. We are building technology people use everyday. Whether it’s heading home from work, getting a meal delivered from a favorite restaurant, or a way to earn extra income, Uber is becoming part of the fabric of daily life.
We’re making cities safer, smarter, and more connected. And we’re doing it at a global scale-energizing local economies and bringing opportunity to millions of people around the world.
Uber’s positive impact is tangible in the communities we operate in, and that drives us to keep moving forward.
We are seeking an exceptional engineer to contribute to our wireless network infrastructure team responsible for the wireless network performance of our apps. Optimizing wireless network performance from the perspective of India and China is a very high priority given the poor mobile networks and data center proximity issues. Mobile Networks are different and specifically emerging markets provide a very challenging network characteristics. And yet we continue using the same legacy protocol stack (TCP/HTTP/SSL) to connect mobile devices to the cloud. This team’s goal is to change this with radically new technology.
What you’ll do
Instrument the Uber apps to understand the network characteristics around the world in all cities Uber operates.Work with network and/or security protocols, innards of mobile operating systems and create a global distributed system around brand new protocols similar to QUIC or QUIC itself!Make Uber network calls from mobile 5X faster!
What you’ll need
Inherently inquisitive and motivated by big engineering problems.An optimistic, team-player mindset.B.S. in Computer Science or related field (or, a portfolio of accomplishments in software development)At least 3 years experience in working on performance-critical systemsExcellent understanding of all aspects of the network call anatomy such as DNS lookup, TCP and TLS connection establishment, HTTP/1.1, SPDY, HTTP/2.System level programming in C++ (supported by Java and Go)iOS and Android platform specific work (C++, Java/ObjC)Superb understanding of systems architecture and common performance tradeoffs.Data Engineering and analysis at massive scale for the global mobile network performance metrics, visualization and alerting on detecting trendsExperience in developing effective tools to help uncover inefficiencies in mobile app performance due to network communication overhead.Understanding of end to end network flow: Mobile, Radio Access Network, Core Network to POP’s and frontend proxies.Knowledge of QUIC protocol.Mobile development experience in Android or iOS.Experience in organizing meetups and public speaking.Experience improving client performance in production environments across a wide range of disparate devices.
Be sure to check out the Uber Engineering Blog to learn more about the team.
Employees are given Uber credits every month.The rare opportunity to change the way the world moves. We’re not just another social web app, we’re moving real people and assets and reinventing transportation and logistics globally.Smart, engaged co-workers.
401(k) plan, gym reimbursement, nine paid company holidays.Full medical/dental/vision package to fit your needs.Unlimited vacation policy; take time when you need it.
Uber is an equal opportunity employer and enthusiastically encourages people from a wide variety of backgrounds and experiences to apply. Uber does not discriminate on the basis of race, color, religion, sex (including pregnancy), gender, national origin, citizenship, age, mental or physical disability, veteran status, marital status, sexual orientation or any other basis prohibited by law.
Meet Some of Uber's Employees
Community Management Specialist
Brian makes sure that every Uber user has an amazing experience. He troubleshoots roadblocks to customer happiness and also does outreach to attract new Uber users.
Back to top