About The Position

Apple Services Engineering (ASE) designs, builds, and operates the cloud infrastructure, server systems, and platform technologies that power many of Apple's most beloved experiences. Within ASE, the Storage Platforms organization develops the systems that store, protect, and serve Apple's data at massive scale, with a mission to deliver storage that is durable, secure, highly available, and operated with excellence. Engineers on this team will have the rare opportunity to work on storage device-optimized low-level storage, large-scale distributed systems, and high-performance IO stacks operating at mission-critical levels of availability and durability. Apple Object Storage is a massive scale storage system that provides the foundation for storing unstructured object data across Apple. The Apple Key-Value Store provides the metadata storage to make that happen, as well as supports other distributed Key-Value workloads within Apple Cloud platform. We are looking for a passionate lead engineer/architect with experience in developing large-scale services and infrastructure to take a central role in designing and building our next version. Join our friendly, collaborative, highly-motivated team! DESCRIPTION We are looking for collaborative, curious, and pragmatic Software Engineers to be part of this innovative team. In this role, you will: Directly impact the direction for the backend of many critical Apple internet services for years to come. Designing, building and maintaining the software and services to improve the feature set, availability, scalability and security of Apple's internal cloud infrastructure. Ability to make tradeoffs on availability and performance while prioritizing durability are crucial. Design and implement features for a distributed key-value store like automatic repairs, shard splits and rebalances. Massively scalable currently spread across 2000+ hosts and handles 5M+ transactions per second to support critical infrastructural systems and frameworks. We are building a strongly consistent, distributed, ordered key-value database using custom transaction log on Raft/ZAB using RocksDB as storage engine. Collaborate with internal teams, including customer teams and the storage reliability engineering team. Focused on building testable, maintainable code and scalable processes across the team.

Requirements

  • 10 years of professional software development experience on software or infrastructure systems
  • 5 years of experience building and operating distributed systems
  • Strong analytical and problem-solving skills, with meticulous attention to detail.
  • Experience coding in one or more of these programming languages: Rust, C++, Java or C#
  • Bachelor’s Degree in Computer Science, an engineering-related field, or equivalent related experience.

Nice To Haves

  • MS or PhD in Computer Science
  • Proven track record for building, launching and operating large-scale production internet services
  • Knowledge of Java, non-blocking and thread safe programming
  • Knowledge of distributed databases, distributed storage, or similar mass-scale Distributed Systems
  • Familiarity with RocksDB

Responsibilities

  • Directly impact the direction for the backend of many critical Apple internet services for years to come.
  • Designing, building and maintaining the software and services to improve the feature set, availability, scalability and security of Apple's internal cloud infrastructure.
  • Ability to make tradeoffs on availability and performance while prioritizing durability are crucial.
  • Design and implement features for a distributed key-value store like automatic repairs, shard splits and rebalances.
  • Collaborate with internal teams, including customer teams and the storage reliability engineering team.
  • Focused on building testable, maintainable code and scalable processes across the team.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service