Develop the next-generation of Apple’s cloud services infrastructure, specifically focusing on CloudKit, Apple’s foundational privacy-focused database platform, which securely stores users’ data and seamlessly keeps it synchronized across all their Apple devices.
Requirements
- 4+ years 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
- Can excel in a complex environment that obsesses about the customer experience
- Bachelor's degree in Computer Science, Software Engineering, or an equivalent degree.