(Senior) Software Engineer, Production Engineering - uMetal
Engineering in San Francisco, CA
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.
About the role
We actively challenge existing hardware trends and are always seeking the best solution to a problem. Not only are we solving our own problems, but because of our scale, we are solving problems that other companies have not yet had. This role involves a wide variety of technologies across large number of disciplines. You will be expected to jump in and develop strong solutions at scale. We do not have responsibilities set in stone, and are always looking for talented individuals to push us forward. We value the input of all our teammates, and it is important that you can contribute right away both with ideas and hands on engineering. You will have an opportunity to make an immediate impact that improves the quality of our infrastructure.
About the team
The uMetal team provides the on-demand metal service to keep Uber’s innovation running. uMetal builds the base layer of compute resources for developers, riders, drivers, and self-driving cars rely on every day. Supporting billions of rides and fast-forwarding to the future of self-driving cars, Uber’s data center team has some of the most interesting challenges around.
What You'll Do
This role is responsible for automating how we manage our servers in the datacenter fleet. The automation will drive onboarding racks/servers, provisioning servers, asset tracking, automatically validating, and performing remediation of servers. This role is also responsible driving the architecture and design of our next generation hw monitoring system. It’s exciting to drive efficiency with how we manage our hyperscale datacenter hw fleet.
What You'll Need
BS degree in Computer Science or related engineering field.
5+ years of relevant software engineering experience.
Solid background in multiple programming languages, e.g. Go, Python, Angular.js, Node.js, React.js, etc.
Prior experience with infrastructure automation, Data Center Infrastructure Management (DCIM), Linux environments, imaging solutions, and configuration management (Puppet, Chef, Salt).
Excellent written and verbal communication skills and the ability to write detailed design documents.
Experience with helping the team grow by inspiring and mentoring less experienced engineers.
Experience with partnering with internal customers and creating solutions spanning multiple teams.
Strong experience with Operating Systems.You should have strong experience in the Linux environment and a solid understanding of its fundamentals such as kernel parameters.
Understanding of DHCP, PXE, DNS and TCP/IP are also a bonus.
Experience developing service oriented systems, REST
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.