Software Engineer, Apple Services Engineering

Apple Inc.
San Francisco, United States of America
6 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

San Francisco, United States of America

Tech stack

Java
Amazon Web Services (AWS)
C++
Computer Programming
Databases
Data Stores
Relational Databases
Distributed Systems
Amazon DynamoDB
Cryptographic Protocols
Fault Tolerance
Memcached
NoSQL
X.509
Queueing Systems
Redis
Software Engineering
Data Streaming
Multithreading
Google Cloud Platform
Containerization
Kubernetes
Cassandra
Kafka
gRPC

Requirements

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! \n\nWe 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.\n\nWe are looking for engineers who have exceptional expertise in building fault-tolerant distributed systems. Our engineers demonstrate unique leadership skills and can excel in a complex environment that obsesses about the customer experience.

7+ years of industry experience developing software in Java, C, or C++\nExperience working with distributed NoSQL and relational database technologies\nExpertise in synchronous and asynchronous network application I/O frameworks\nExpertise in programming in concurrent and multi-threaded environments\nIndustry experience building and operating large-scale multi-tiered distributed systems\nBachelor's degree in an engineering-related field or equivalent related experience

Strong background with KV data stores, e.g., FoundationDB, DynamoDB, or Cassandra\nStrong fundamentals in storage systems, e.g., schema design, indexes, and transactions\nFamiliar with high-performance caching mechanisms, e.g., Redis or Memcached \nFamiliar with event streaming and queueing systems, e.g., Kafka \nExperience using AWS, Google Cloud Platform, and cloud-native technologies (Containers, Kubernetes, gRPC)\nExperience with TLS, X.509 certificates, or similar security and cryptographic protocols

Apply for this position