Site Reliability Engineer (SRE) – Object Storage

Seattle, Washington, United States

Software and Services

Summary

People at Apple don’t just build products — they craft the kind of experience that have revolutionized entire industries. The diverse collection of our people and their ideas inspire innovation in everything we do. Imagine what you could do here! Join Apple, and help us leave the world better than we found it. Apple Cloud infrastructure is BIG. The storage SRE teams of Apple Cloud are building and running the next generation distributed storage systems to support Apple’s most critical services. Operating at our scale, across multiple geographically dispersed data centers, and servicing users with vast data need presents unique challenges. As a Storage SRE at Apple, you’ll need to tackle these problems using your deep understanding of storage, data analysis, programming, teamwork, and expertise in Linux system internals. Storage SREs at Apple involve themselves across the full infrastructure stack; from tuning the block storage layer to content delivery network traffic management!

Other Posts You May Be Interested In

Description

We are looking for seasoned software and systems engineers to join the Object Storage SRE team at Apple. The role involves tremendous amount of individual responsibility and influence over the direction the platform, shaping its use by many critical Apple Cloud services for years to come. You are solution-oriented and have a passion for software delivered as a service to improve reuse, efficiency, and simplicity. Your work will affect hundreds of millions of users and be essential to the success of some of the most visible current and future Apple features. The role involves understanding the team’s priorities; taking ownership of projects or deliverables; crafting solutions and building buy-in for those designs; and successful delivery of those designs in order to meet the project goal. The role involves giving technical feedback to colleagues to assist them in the delivery of their designs, features and projects, as well as driving technical standards across the two-site team in collaboration with other senior members of the team. The team has an on-call rota including the week-ends and the successful candidate should expect to handle alerts and other critical issues in order to maintain a high level of availability and functionality for our provided services. The team is divided into two locations and cross-timezone meetings are a core feature of how our team collaborates, reaches agreements, and executes to deliver projects. At Apple Cloud, we run a mix of open source, vendor licensed, and internally developed tools to perform functions such as system configuration management, provisioning, software development & deployment, logging, and monitoring. You’ll learn these tools and have opportunities to improve them. We think critically and strive to balance the best solution with the need to get things done for each engineering challenge we face. Good ideas are heard and results are rewarded. The candidate may be expected to travel to different Apple locations nationally or internationally.

Minimum Qualifications

  • 7+ years experience in building, operating, and scaling distributed storage systems in a private, public, or hybrid cloud environment, or working with other large-scale, stateful systems such as distributed databases.
  • The ability to design, author, understand, and release code in languages like Go (preferred), Java, Python, or Rust.
  • Good understanding of block, object, and file storage solutions in Linux (such as LVM, XFS, ext4, S3, Ceph, Gluster, NFS).
  • Understanding of Linux internals, standard networking protocols, and distributed systems.
  • Experience with provisioning, data migration, backup & recovery, at-scale testing, disaster recovery, and capacity planning.

Preferred Qualifications

  • Acute drive to automate manual operations and to improve them through repeated iteration.
  • Awareness of best practices for deployment of storage systems – implication of physical and virtual deployment models to change management. failure domains, hardware lifecycle management, etc.
  • Hands-on experience managing large numbers of diverse systems with configuration management or software delivery platforms (such as Puppet, Chef, Ansible, and Spinnaker).
  • Experience with deploying, supporting and monitoring new and existing services, platforms, and application stacks.
  • Familiarity with microservices architecture and container orchestration with Kubernetes.
  • Familiarity with relational & non-relational databases (such as Cassandra, Postgres, & RocksDB)

Pay & Benefits

  • At Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $135,400 and $250,600, and your base pay will depend on your skills, qualifications, experience, and location.

    Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses — including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. 

Disclaimer: Job Posting Sources

Various reliable job search engines, such as Indeed, LinkedIn, ZipRecruiter, CareerBuilder, Monster, Glassdoor, Getwork, Snagajob, and FlexJobs, are the source of the job postings on our platform. Although we make every effort to present accurate and current information, we are unable to guarantee the accuracy, completeness, or dependability of the job postings from these outside sources.

When applying for jobs found on these platforms, users are advised to perform their own due diligence. We are not liable for any errors, omissions, or inaccuracies in the job postings, and neither do we support any particular employer or job posting.

Additionally, please be aware that job listings may change without warning and that some may not be relevant or active at the time of viewing.

Users who access job postings from these outside sources through our platform consent to indemnify us for any liability resulting from the use of such information.