Skip to content


Seattle, Washington Full Time Posted: Wednesday, 15 February 2017
Applicants must be eligible to work in the specified location
Software Engineer -- Infrastructure (Cherami)Uber is on the lookout for top-notch software engineers to join our Infrastructure team. This role involves building and managing robust distributed systems to solve infrastructure challenges that delight our quickly growing platform engineering and product engineering teams, enabling the whole engineering organization to iterate at top speed in an open, decentralized environment. Specifically, you will be working directly on our open-sourced, distributed message queueing system--Cherami.You will be part of a team of strong software and systems engineers, executing in a fast paced environment. If you love working on software products that touch the physical world and want some serious experience under exponential growth conditions, this is it. Moreover, your work will be open-sourced from day one.Are you among the rare breed of software engineers with a passion for systems, designing and managing highly reliable infrastructure? As an Infrastructure software engineer in you will be solving the hardest computer science problem such as consistency in distributed systems, cross-regional fault-tolerance and high performance storage engine. You should have a demonstrable ability to debug complicated failures and be able to grok complex systems from high level design all the way down to their syscalls.Responsibilities:Design and deliver software and tools to advance the reliability of infrastructure including availability, performance, efficiency & scaling.Systems architecture design, including management of upstream and downstream dependencies.Provide technical leadership, influence and partner with fellow engineers to architect, design and build infrastructure that can stand the test of scale and availability, while reducing operational overhead.Drive efficiencies in systems and processes through automation: capacity planning, configuration management, performance tuning, monitoring and root cause analysis.Participate in periodic on-call rotations and be available for escalations.Collaborate with platform, product and security engineering teams, and enable successful use of infrastructure and foundational services.Requirements:BS or MS in Computer Science or a related technical discipline, or equivalent experience.5+ years of experience building and managing distributed systems. Sound understanding of fundamentals and principles of distributed systems.Highly proficient in one of the following programming languages: Go, Java, C/C++. Good Scripting skills and ability to pick up new ones.Systematic problem solving approach and knowledge of algorithms, data structures and complexity analysis.Experience with a relational database (MySQL, PostgreSQL)Good working knowledge of networking (TCP/IP, HTTP, Thrift).Power-user Linux knowledge and willingness to explore Linux internals.A good understanding of large-scale distributed systems and algorithms in practice: ZooKeeper, Cassandra, Paxos, RAFT, consistent hashing etc.Grit, drive and a strong feeling of ownership coupled with collaboration and leadership.PERKS:Employees are showered with Uber credits each month.The rare opportunity to change the world such that everyone around you is using the product you built. We're not just another social web app, we're moving real people and assets and reinventing transportation and logistics globally.Sharp, motivated co-workers in a fun office environment.BENEFITS (U.S.)401(k) plan, gym reimbursement, nine paid company holidays.Full medical/dental/vision package to fit your needs.Unlimited vacation policy; work hard and take time when you need it.We're bringing Uber to every major city in the world. We need brains and passion to make it happen and to make it happen in style.

Seattle, Washington, United States of America
Uber Corporate
Uber Corporate
2/15/2017 11:19:43 PM

We strongly recommend that you should never provide your bank account details to an advertiser during the job application process. Should you receive a request of this nature please contact support giving the advertiser's name and job reference.