Job Description
Summary
CloudKit manages data at a massive scale! It is a strongly-consistent database of structured data that serves billions of active Apple customers. Considered the bedrock of iCloud, it is purpose built to be performant, highly available, and extremely scalable. CloudKit is a framework designed to the highest standards of user privacy that not only empowers developers to build highly collaborative and secure applications but is also the storage foundation for Apple’s signature cloud experiences, such as Photos, Drive, Notes, Keynote, News, and many third-party applications!
We are a world-class team who has a real passion for engineering and delivering high quality services to Apple’s customers. As a key member of a versatile organization, you will introduce new fundamental capabilities that will help power entirely new applications and scale existing ones.
Description
• 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
Minimum Qualifications
- 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
- Bachelor's degree in Computer Science, Software Engineering, or an equivalent degree.
Preferred Qualifications
- Strong background with KV data stores, e.g., FoundationDB, DynamoDB, or Cassandra
- Strong fundamentals in storage systems, e.g., schema design, indexes, and transactions
- Familiar with high-performance caching mechanisms, e.g., Redis or Memcached
- Familiar with event streaming and queueing systems, e.g., Kafka
- Experience using AWS, GCP, and cloud-native technologies (Containers, Kubernetes, gRPC)
- Experience with TLS, X.509 certificates, or similar security and cryptographic protocols