Site Reliability Engineering (SRE) is what you get when you treat operations as if it’s a software problem. Our mission is to progress, protect, and provide for the software and systems behind all of Google’s public services * Search, Ads, Gmail, Android, YouTube, and App Engine, to name just a few * with an ever-watchful eye on their availability, latency, performance, and capacity.

This is an unusual job, unlike others in the industry. Like traditional operations groups, we keep important, revenue-critical systems up and running despite hurricanes, bandwidth outages, and configuration problems . Unlike traditional operations groups, we also have full access to and authority to fix, extend, and scale the code to keep it working and harden it against all the vagaries of the Internet. We hire people from both systems and software backgrounds. Strong candidates will have experience with both.

Just as what we do is unique, where we do it is unique too. At Google, we have the good fortune to have developed many interesting systems ranging from planet-spanning databases to near real-time scalable data warehousing to fault-tolerant datastream joining . In SRE, we flip between the fine-grained detail of disk driver I/O scheduling to the big picture of continental-level service capacity, across a range of systems and a user population measured in billions. We own those products in production. We drive reliability and performance across massive scale by mastering the full depth of the stack. We literally do learn something new every day * usually surprising things * that have the potential to transform the lives of billions of our users around the world.

As a Software Engineer on the SRE team, you will have the opportunity to handle the complex problems of scale which are unique to Google, while using your expertise in coding, algorithms, complexity analysis and large-scale system design.

Responsibilities

  • Design, write and deliver software to improve the availability, scalability, latency and efficiency of Google’s services.
  • Solve problems relating to mission critical services and build automation to prevent problem recurrence with the goal of automating response to all non-exceptional service conditions.
  • Influence and create new designs, architectures, standards and methods for large-scale distributed systems.
  • Engage in service capacity planning and demand forecasting, software performance analysis and system tuning.
  • Conduct periodic on-call duties using a follow-the-sun model. Minimum qualifications

  • BS degree in Computer Science or related technical field, or equivalent practical experience.
  • Experience with algorithms, data structures, complexity analysis and software design.
  • Experience in one or more of the following languages: C, C++, Java, Python, Go. Preferred qualifications

  • Knowledge and understanding of network theory, such as different protocols (TCP/IP, UDP, ICMP, etc.), MAC addresses, IP packets, DNS, OSI layers, and load balancing.
  • Understanding of Unix/Linux systems from kernel to shell and beyond, taking in system libraries, file systems, and client-server protocols along the way.
  • Expertise in designing, analyzing and troubleshooting large-scale distributed systems.
  • Familiarity with running web services at scale; understanding of Unix systems internals and networking.
  • Systematic problem solving approach, coupled with a strong sense of ownership and drive. Area

Behind everything our users see online is the architecture built by the Technical Infrastructure team to keep it running. From developing and maintaining our data centers to building the next generation of Google platforms, we make Google’s product portfolio possible. We’re proud to be our engineers’ engineers and love voiding warranties by taking things apart so we can rebuild them. We’re always on call to keep our networks up and running, ensuring our users have the best and fastest experience possible.

Technical Infrastructure

Make Google’s services fast and reliable for billions of users.

Learn more about our Technical Infrastructure roles

San Francisco

From Beat poets to the Summer of Love to the original Burning Man, the City by the Bay has been an epicenter for people looking to change the world. At Google San Francisco we’re keeping the tradition alive, with engineering and sales teams empowering users with new ways to create, communicate, and do business.

Learn more about our San Francisco office

Desired Skills and Experience

See application page for details