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 performance, availability, and scalability of this massive-scale, strongly-consistent database which underpins iCloud and various Apple services.
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.
- Apple is an equal opportunity employer that is committed to inclusion and diversity.
- Submit Resume