
Storage Infrastructure - Apple Service Engineering
Required skills
- large-scale distributed systems
- high-performance IO stacks
- first principles
- Rust
- C++
- Java
- C#
- Bash
- Python
- Perl
Nice to have
- data structures
- algorithms
- concurrency
- fault tolerance
- consistency
- distributed rate limiting
Role summary
Apple Services Engineering (ASE) is seeking collaborative, curious, and pragmatic Software Engineers to design, build, and operate cloud infrastructure, server systems, and platform technologies for Apple's services. The Storage Platforms organization focuses on developing systems for storing, protecting, and serving massive amounts of data with a mission for durability, security, and high availability. Engineers will work on low-level storage, large-scale distributed systems, and high-performance IO stacks, building components from the ground up. The role involves shaping product features and architecture, requiring strong analytical skills and experience in building storage systems, with proficiency in languages like Rust, C++, Java, or C#, and scripting languages.
Description
We are looking for collaborative, curious, and pragmatic Software Engineers to be part of this innovative team. In this role, you will: Shape the product's features and architecture as it scales orders of magnitude Demonstrate passion for large-scale distributed systems and creating robust storage solutions.
Minimum Qualifications
3 years of professional software development experience Strong analytical and problem-solving skills, with meticulous attention to detail. Experience in building storage systems 2+ years of coding in one or more of these programming languages: Rust, C++, Java or C# Experience with scripting languages (Bash, Python, Perl) Bachelor’s Degree in Computer Science, an engineering-related field, or equivalent related experience.
Preferred Qualifications
Excellent knowledge of software testing methodologies & practices Deep understanding of core computer science concepts, including data structures, algorithms, and concurrency. Solid grasp of distributed systems fundamentals such as fault tolerance, consistency, and distributed rate limiting. Experience designing and operating large-scale distributed systems such as databases or storage platforms. Proficient with UNIX/Linux
Sample Apple interview questions
- 1
Design a typeahead box for a search engine
system designmedium - 2
Design a rate limiter
system designmedium - 3
Architect a key-value store for distributed systems.
system designmedium - 4
Design a system to schedule jobs in a distributed environment
system designmedium
Get started to unlock a personalized interview prep pack for this role.
Similar roles
Wi-Fi Certification Quality Engineer, Wireless Technologies & EcosystemsApple · Cupertino, CA · Onsite
US Carrier Sales Consumer Offers LeadApple · Cupertino, CA · Onsite
Principal Software Engineer, Storage InfrastructureMicrosoft · Redmond, WA · Hybrid
AI Storage Infrastructure Engineer - remote in the USMirantis · Remote · Remote
Senior Software Engineer, Storage InfrastructurePlanet · Remote · Remote- Principal Architect, Compute & Storage InfrastructureConnor, Clark & Lunn Financial Group · Vancouver, BC · Hybrid
