Site Reliability Engineer - Redis

Cupertino, California, United States
Software and Services

Summary

Posted:
Role Number:200549871
The Apple Service Engineering - Redis SRE team is looking for Site Reliability Engineers with experience in developing processes, tools, and automation for managing distributed systems in production environments. Our SRE team combines software and systems engineering and system administration practices to build and run large-scale, massively distributed, fault-tolerant systems. Our software ensures that Apple’s services are reliable, scalable and secure, and we leverage both open source and home-grown technologies to provide managed data infrastructure services. You will help building next generation search infrastructure and platform services, collaborating cross-functionally with various ASE teams, from store and commerce to search and recommendations. You’ll create platforms that can rapidly scale to serve personalized and non-personalized data with very low latencies. You should be someone who is not afraid to question assumptions, are a good standout colleague under tight deadlines, and can take on problems with elegant technical solutions.

Key Qualifications

  • Demonstrated expertise developing database systems, storage engines, distributed systems, or performance engineering.
  • Experience developing critical internet services and/or platform infrastructure.
  • Proficient in modern Java and optionally Python / Go.
  • Optional experiencing with managing services run on Kubernetes
  • Optional experience with EC2, EBS, and Terraform

Description

The ASE Redis SRE team develops applications and tooling that are safe, reliable, scalable, and fast. This work requires an innovative spirit and an extraordinary degree of care and difficulty in engineering. Team members contribute to all major components of Redis deployment infrastructure, including maintenance automation, backup service application, monitoring and alerting tooling/dashboards, deployment architecture, focused on stability, performance, and scaling. Success in this role requires expertise in several of the following: - Understanding of core SRE concepts - Monitoring, Alerting, Incident management. - Understanding of database concepts (consistency models, isolation levels, crash and recovery semantics). - Performance engineering (design concepts, profile-guided optimization). - Service management across a bare metal, virtualized (EC2),Kubernetes platforms. - Fundamentals of system-level hardware and networking components (storage devices and controllers, network interfaces, CPU and memory layout in server-class systems). - Operating systems concepts (process scheduling, disk and network I/O, performance). - Datacenter architecture (networking topologies, host placement strategies, and failure modes); design of multi-datacenter systems; failure domains; and wide-area networking. This role also requires excellent communication and a high degree of customer focus when engaging with internal platform customers. As a distributed team, ability to work optimally with colleagues based in other locations is also essential; experience in this area is a plus. Prior experience with development or maintenance of distributed databases / storage systems is recommended. Apple values craftsmanship and Performance is a key ingredient. Come join us at Apple Services Engineering and help us deliver services and applications that are fluid and responsive. You will collaborate with engineers from across Apple to define the metrics, set targets, uncover optimization opportunities, define quality guardrails, and ship a product/service that will delight our customers. This role is for engineers who enjoy deep technical engineering that spans large cross-organizational projects. Your openness to learning and implementing new technologies will contribute to the continuous evolution of our organization.

Education & Experience

BS or MS in Computer Science / related fields or equivalent work experience

Additional Requirements

Pay & Benefits