We’re changing the way people think about transportation. Not that long ago we were just an app to request premium black cars in a few metropolitan areas. Now we’re a part of the logistical fabric of more than 600 cities around the world. Whether it’s a ride, a sandwich, or a package, we use technology to give people what they want, when they want it.
For the people who drive with Uber, our app represents a flexible new way to earn money. For cities, we help strengthen local economies, improve access to transportation, and make streets safer.
And that’s just what we’re doing today. We’re thinking about the future, too. With teams working on autonomous trucking and self-driving cars, we’re in for the long haul. We’re reimagining how people and things move from one place to the next.
About the Role
Here at Uber our mission is to make transportation as reliable as running water, everywhere, for everyone. Uber serves billions of trips per year and we are currently making investments into the systems and infrastructure necessary to support 100+ million trips per day. A key enabler for the success and growth of Uber’s business is a world-class technical infrastructure managed with automation through software.
The Uber Metal (uMetal) organization builds and manages the compute, storage and network infrastructure that supports Uber’s workloads globally. Within uMetal, the Software Platform team delivers the automation capabilities and tools that help ensure Uber’s infrastructure (network, compute, DC) is always available and functions at peak performance.
What You’ll Do
The Software Platform team is looking for a (Senior) Software Engineer to help design, develop and deliver next-generation automation solutions that will help increase the efficiency, reliability, performance and agility of Uber’s infrastructure across physical and virtual server environments. These solutions will be leveraged by the teams managing Uber’s global infrastructure daily.
The team is looking for someone with a passion for developing mission-critical software that creates simple abstractions for complex infrastructure. If you value simplicity, work comfortably in a collaborative, agile environment, and are excited to learn, we’d like to talk to you.
What You’ll Need
BS degree in Computer Science or related engineering field. Masters/Ph.D. preferred.
5+ years of relevant software engineering experience.
Solid background in multiple programming languages, e.g. Go, Java, Python or C/C++.
Passion about system architecture and building distributed systems at hyper scale.
Prior experience with infrastructure automation, Data Center Infrastructure Management (DCIM), Linux environments, imaging solutions and/or configuration management (Puppet, Chef, Salt) is a plus.
Understanding of DHCP, PXE, DNS and TCP/IP are also a bonus.
Experience developing service oriented systems, REST.
Excellent written and verbal communication skills and the ability to write detailed design documents.
You have a knack for helping the team grow by inspiring and mentoring less experienced engineers.
At Uber we don’t just accept difference—we celebrate it, we support it, and we thrive on it for the benefit of our employees, our products and our community. Uber is proud to be an equal opportunity workplace. We are committed to equal employment opportunity regardless of race, color, ancestry, religion, sex, national origin, sexual orientation, age, citizenship, marital status, disability, gender identity or Veteran status.