Software Engineering Intern, Apple Services Engineering

AppleLondon, EnglandOn-siteInternshipListed 2 hours ago

Apply now

About this role

We are looking for a Software Engineering Intern to help develop the next-generation of Apple's cloud services infrastructure. You will be working on the FoundationDB query engine that powers CloudKit, Apple's foundational privacy-focused database platform, which securely stores users' data and seamlessly keeps it synchronized across all their Apple devices.

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 it 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 an intern in a versatile organization, you will contribute to new fundamental capabilities that will help power entirely new applications and scale existing ones.

We are looking for students who have a passion for building fault-tolerant distributed systems. Our engineers thrive in a complex environment that prioritises the customer experience.

Minimum Qualifications

Currently pursuing a Bachelor's or Master's degree in Computer Science, Software Engineering, or an equivalent degree
Experience developing software in Java, C, or C++, gained through coursework, projects, or prior work
Coursework or project experience with data structures and algorithms
Available to work full-time for the duration of the internship

Preferred Qualifications

Background with KV data stores, e.g., FoundationDB, DynamoDB, or Cassandra
Fundamentals in storage systems, e.g., schema design, indexes, and transactions
Familiar with database query processing, e.g., query planning, execution, or optimisation
Exposure to concurrent and multi-threaded programming