Senior Software Engineer - ASE Data Infrastructure
Job Description
Summary
The Apple Services Engineering (ASE) team is one of the most exciting examples of Apple’s long-held passion for combining art and technology. We are the people who power the App Store, Apple TV and Sports, Apple Music, Podcasts, and Books along with Cloud and Infrastructure Services platforms. As part of Apple Services Engineering (ASE), you will have a meaningful role in designing, developing, and deploying high-performance systems that handle millions of queries every single day. This enormous scale brings challenges that require extraordinarily creative problem-solving. By focusing on and respecting the customer's needs, you'll be responsible for helping us build the technology that works for so many customers around the world.
Description
The ASE Data Infrastructure team is looking for senior software engineers to help build the next generation of our object storage infrastructure. Our mission is to build software to enable other Apple engineering teams to work with data with as little friction as possible. To achieve this mission, you will build novel systems and solve problems at scale.
In this role, you will review and provide constructive feedback on pull requests and designs, fostering an environment of continuous learning and knowledge sharing. In collaboration with other senior team members, across multiple sites, you will define the standards so that our solutions are delivered with high quality and reliability.
In this role, you will review and provide constructive feedback on pull requests and designs, fostering an environment of continuous learning and knowledge sharing. In collaboration with other senior team members, across multiple sites, you will define the standards so that our solutions are delivered with high quality and reliability.
Minimum Qualifications
- Bachelor’s or Master’s degree in Computer Science or related field with 7+ years of experience.
- Hands on experience with C++ or C or Rust.
- Knowledge of distributed systems.
- Ability to collaborate well as part of a distributed team.
Preferred Qualifications
- In-depth experience with object storage implementations such as S3, GCS, Azure Blob Storage, MinIO and Ceph.
- Proficiency in Rust.
- Experience debugging and driving performance analysis of end-to-end distributed systems.
- Micro-services architecture and container orchestration.
- Relational and non-relational databases (such as PostgreSQL and Cassandra).
- Data migration, disaster recovery and capacity planning.
- Linux systems.