Logo
Apple

Senior Software Engineer - Apple Cloud Distributed Key-Value Store

Apple, Cupertino, CA


SummaryPosted: Role Number:200561279Apple systems have huge scale and store many exabytes of data. The Apple Object Store is a massive scale storage system that provides the foundation of data storage 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.DescriptionWe are building a distributed, ordered key-value database that handles millions of transactions per second to support critical infrastructural systems and frameworks. Cluster spans 1000s of SSDs/Nodes across large geographic regions. - Strongly consistent distributed key-value store built using a custom distributed transaction log based on Raft/ZAB and using RocksDB as the storage engine. - Distributed key-value store supports features like automatic repairs, shard splits, rebalances to name a few. - Durability, availability, and performance are crucial. - You will have the opportunity to directly impact the direction for the backend of many critical Apple internet services for years to come. - You will also need to build working, collaborative relationships within our team and across teams at Apple. This engineer's work will affect hundreds of millions of users and be essential to the success of some of the most visible current and future Apple features. - We are looking for a passionate Software Engineer 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! RESPONSIBILITIES WILL INCLUDE: - Designing, building and maintaining the software and services to improve the feature set, availability, scalability and security of Apple's internal cloud infrastructure. Collaborating with internal teams, including customer teams and the storage SRE team. - Finally, we are looking for engineers that are focused on building testable, maintainable code.Minimum QualificationsBS in Computer Science, or equivalent experience.At least 10 years of experience building and operating software systemsAt least 5 years of experience building and operating distributed systemsPreferred QualificationsMS or PhD in Computer ScienceProven track record for building, launching and operating large-scale production internet servicesKnowledge of Java and non-blocking and thread safe programmingKnowledge of distributed databases, distributed storage, or similar mass-scale Distributed SystemsPay & BenefitsAt Apple, base pay is one part of our total compensation package and is determined within a range. This provides the opportunity to progress as you grow and develop within a role. The base pay range for this role is between $175,800 and $312,200, and your base pay will depend on your skills, qualifications, experience, and location.Apple employees also have the opportunity to become an Apple shareholder through participation in Apple’s discretionary employee stock programs. Apple employees are eligible for discretionary restricted stock unit awards, and can purchase Apple stock at a discount if voluntarily participating in Apple’s Employee Stock Purchase Plan. You’ll also receive benefits including: Comprehensive medical and dental coverage, retirement benefits, a range of discounted products and free services, and for formal education related to advancing your career at Apple, reimbursement for certain educational expenses — including tuition. Additionally, this role might be eligible for discretionary bonuses or commission payments as well as relocation. Learn more about Apple Benefits.Note: Apple benefit, compensation and employee stock programs are subject to eligibility requirements and other terms of the applicable plan or program.Apple is an equal opportunity employer that is committed to inclusion and diversity. We take affirmative action to ensure equal opportunity for all applicants without regard to race, color, religion, sex, sexual orientation, gender identity, national origin, disability, Veteran status, or other legally protected characteristics. Learn more about your EEO rights as an applicant.