Job Search and Career Advice Platform

Enable job alerts via email!

Software Engineer FoundationDB

Apple

Greater London

On-site

GBP 50,000 - 80,000

Full time

Today
Be an early applicant

Generate a tailored resume in minutes

Land an interview and earn more. Learn more

Job summary

A global technology company is seeking an experienced Software Engineer to develop next-generation cloud services infrastructure. This role involves designing and maintaining a multi-tenant relational database, collaborating with cross-functional teams, and ensuring system performance and reliability. Ideal candidates should have a Bachelor's degree in Computer Science, solid programming experience in Java, C, or C++, and extensive knowledge of distributed database technologies. This position offers a chance to work on foundational systems like CloudKit for billions of users.

Qualifications

  • Bachelor's degree in Computer Science, Software Engineering, or an equivalent degree.
  • Experience developing software in Java, C, or C++.
  • Experience working with distributed NoSQL or relational database technologies.
  • Extensive experience with debugging and profiling.
  • Expertise in programming in concurrent and multi-threaded environments.
  • Industry experience building and operating large-scale multi-tiered distributed systems.

Responsibilities

  • Design, develop, and support a multi-tenant relational database.
  • Partner with teams to develop new customer-facing features.
  • Drive project execution from design reviews to production releases.
  • Deploy, scale, and maintain highly concurrent services.
  • Triage and remediate production issues.

Skills

Java
C
C++
Distributed NoSQL
Relational database technologies
Debugging and profiling
Concurrent programming
Multi-threaded environments
Large-scale distributed systems

Education

Bachelor's degree in Computer Science or Software Engineering

Tools

Redis
Memcached
Job description
Summary

We are looking for an experienced Software Engineer to help develop the next-generation of Apple’s cloud services infrastructure. You will be working on FoundationDB Record Layer, Apple’s open source relational database, which is built on top of the FoundationDB key-value store and powers CloudKit.

CloudKit is a foundational privacy-focused 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 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

We are looking for engineers with a passion for developing world class, highly scalable, and resilient database systems with a particular focus towards ensuring quality, performance, and correctness. Particular areas of focus involve transaction and concurrency management, query language, planning and optimisation as well the design and development of custom storage, indexing, and search structures.

About

Our engineers demonstrate unique leadership skills and can excel in a complex environment that obsesses about the customer experience. As a software engineer in FoundationDB, you will:

  • Design, develop, and support a extremely multi-tenant relational database
  • 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
  • Bachelor's degree in Computer Science, Software Engineering, or an equivalent degree.
  • Experience developing software in Java, C, or C++
  • Experience working with distributed NoSQL or relational database technologies
  • Extensive experience with debugging and profiling.
  • Expertise in programming in concurrent and multi-threaded environments
  • Industry experience building and operating large-scale multi-tiered distributed systems
Preferred Qualifications
  • A solid understanding of relational databases, SQL, and query planning and execution.
  • Strong fundamentals in storage systems, e.g., schema design, indexes, and transactions
  • Familiar with high-performance caching mechanisms, e.g., Redis or Memcached

At Apple, we’re not all the same. And that’s our greatest strength. We draw on the differences in who we are, what we’ve experienced and how we think. Because to create products that serve everyone, we believe in including everyone. Therefore, we are committed to treating all applicants fairly and equally. As a registered Disability Confident employer, we will work with applicants to make any reasonable accommodations. Apple will consider for employment all qualified applicants with criminal backgrounds in a manner consistent with applicable law. Learn more

Get your free, confidential resume review.
or drag and drop a PDF, DOC, DOCX, ODT, or PAGES file up to 5MB.