Watch this video to learn more about Google Inc.
Job Type
Job Details
- Bachelor’s degree in Computer Science, a related field, or equivalent practical experience.
- 2 years and above experience one or more programming languages (e.g., Python, C, C++, Java, JavaScript).
- 2 years of experience working with administration (e.g., filesystems, inodes, system calls) or networking (e.g., TCP/IP, routing, network topologies and hardware, SDN).
Preferred qualifications:
- Master's degree in Computer Science or Engineering.
- Experience in managing and operating global-scale production systems in cloud environments.
- Experience architecting, developing, and troubleshooting systems.
- Experience designing, analyzing, and troubleshooting distributed systems.
Site Reliability Engineering (SRE) combines software and systems engineering to build and run large-scale, massively distributed, fault-tolerant systems. SRE ensures that Google Cloud's services—both our internally critical and our externally-visible systems—have reliability, uptime appropriate to customer's needs and a fast rate of improvement. Additionally SRE’s will keep an ever-watchful eye on our systems capacity and performance.
Much of our software development focuses on optimizing existing systems, building infrastructure and eliminating work through automation. On the SRE team, you’ll have the opportunity to manage the complex challenges of scale which are unique to Google Cloud, while using your expertise in coding, algorithms, complexity analysis and large-scale system design. SRE's culture of diversity, intellectual curiosity, problem solving and openness is key to its success. Our organization brings together people with a wide variety of backgrounds, experiences and perspectives. We encourage them to collaborate, think big and take risks in a blame-free environment. We promote self-direction to work on meaningful projects, while we also strive to create an environment that provides the support and mentorship needed to learn and grow.
- Improve the whole life-cycle of services from inception and design, through deployment, operation, and refinement.
- Manage support services before they go live through activities such as system design consulting, developing software platforms and frameworks, capacity planning, and launch reviews.
- Provide guidance to other team members on managing availability and performance of mission critical services, on building automation to prevent problem recurrence, and on building automated responses for non-exceptional service conditions.
- Maintain services once they are live by measuring and monitoring availability, latency, and overall system health, and lead sustainable incident response.
- Scale systems sustainably through mechanisms like automation and evolve systems by driving changes that improve reliability and velocity.