Apple is looking to develop the next-generation of its cloud services infrastructure, specifically focusing on the CloudKit platform, a foundational privacy-focused database that securely stores user data and synchronizes it across Apple devices. The goal is to enhance its performance, availability, and scalability to serve billions of customers and power new applications.
Requirements
- 3+ years of industry experience developing software in Java, C, or C++
- Experience working with distributed NoSQL and relational database technologies
- Expertise in synchronous and asynchronous network application I/O frameworks
- Expertise in programming in concurrent and multi-threaded environments
- Industry experience building and operating large-scale multi-tiered distributed systems
- Strong background with KV data stores, e.g., FoundationDB, DynamoDB, or Cassandra
- Strong fundamentals in storage systems, e.g., schema design, indexes, and transactions
Responsibilities
- Design, develop, and support a multi-tenant platform with many underlying technologies
- Partner with teams across Apple to develop and ship new customer-facing features
- Drive end-to-end project execution, from design reviews and through production releases
- Deploy, scale, and maintain highly concurrent and throughput-intensive services
- Triage, investigate, and remediate production and operational issues
Other
- Exceptional expertise in building fault-tolerant distributed systems.
- Unique leadership skills and can excel in a complex environment that obsesses about the customer experience.
- Bachelor's degree in Computer Science, Software Engineering, or an equivalent degree.