Software Engineer - Object Storage,
22 days ago United Kingdom
About us
Working at Apple means doing more than you ever thought possible and having more impact than you ever imagined.
- Size: 10,000+ employees
- Industry: Technology: Manufacturing
Why you should apply for a job to Apple:
Ranked as one of the Best Technology Companies in 2020
3.7/5 in overall job satisfaction
3.1/5 in supportive management
66% say women are treated fairly and equally to men
65% would recommend this company to other women
66% say the CEO supports gender diversity
Ratings are based on anonymous reviews by Fairygodboss members. See all reviews ›
Join the Apple Cloud Object Store team as a software engineer to help lead the development of one of Apple's largest storage platforms - used by hundreds of internal services at exabyte scale. You'll take ownership of some of the hardest problems in large-scale distributed storage: from keeping thousands of tenants fairly and safely sharing the same infrastructure, to improving durability, performance, and scalability as the platform continues to grow. This is a role for an engineer who can drive complex, ambiguous technical problems end-to-end and shape the direction of the platform, not just execute against a fixed spec.
Description
Operating a shared storage platform at exabyte scale means constantly balancing competing demands: keep the system fast and available for everyone, protect it from any single tenant's traffic, and keep evolving the architecture without disrupting the services built on top of it. As a lead engineer on this team, you'll help set direction across several of these areas, including:
Multi-tenant isolation and fairness. Keeping thousands of tenants safely sharing the same infrastructure - enforcing quotas, shaping and rate limiting traffic, and containing the blast radius when one tenant's behavior threatens to degrade everyone else.
Availability and durability at scale. Designing for hardware and component failure as a constant, not an edge case, while keeping data durable and available across a massive, distributed fleet.
Performance and efficiency. Finding and eliminating bottlenecks in a complex system, and making sure optimization effort goes where it has the most impact.
Architectural evolution. Retiring legacy approaches, simplifying fragmented systems, and making large-scale changes safely in a system that can't afford downtime.
You can find out more about our work here: https://www.usenix.org/conference/fast26/presentation/baron","responsibilities":"Identify, scope, and lead major projects that materially impact the reliability, performance, scalability, and maintainability of the storage platform.
Drive architecture and design decisions in your focus area - for example, how rate limiting and quota enforcement are structured across the platform - and represent that direction in cross-team design reviews and roadmap discussions.
Work across teams to identify improvement areas, build consensus, and turn ambiguous problems into concrete, sequenced plans.
Mentor other engineers and raise the technical bar for the team, including in areas like testing, observability, and operational readiness.
Take on new problem areas across the storage platform as priorities shift, applying the same depth of ownership regardless of the specific domain.
Preferred Qualifications
Experience with flow control, overload protection, or admission-control systems (e.g., adaptive throttling, load shedding, backpressure).
Experience with object storage systems or similar backend storage engines.
Experience building observability/telemetry that makes complex system behavior explainable to engineers or customers.
Familiarity with distributed state-propagation protocols (e.g., gossip protocols).
Familiarity with modern data lake architectures and query engines
Minimum Qualifications
In-depth experience as a backend software engineer with a strong grasp of computer science fundamentals: networking, filesystems, security concepts.
Experience designing, building, and operating large-scale distributed systems, with a strong grasp of concepts like availability, congestion control, observability, and fault tolerance.
Experience driving complex, ambiguous technical projects end-to-end and collaborating across teams to build consensus.
Experience with at least one of: multi-tenant resource isolation, rate limiting, or quota systems; large-scale storage systems; or distributed systems performance/reliability work.
Description
Operating a shared storage platform at exabyte scale means constantly balancing competing demands: keep the system fast and available for everyone, protect it from any single tenant's traffic, and keep evolving the architecture without disrupting the services built on top of it. As a lead engineer on this team, you'll help set direction across several of these areas, including:
Multi-tenant isolation and fairness. Keeping thousands of tenants safely sharing the same infrastructure - enforcing quotas, shaping and rate limiting traffic, and containing the blast radius when one tenant's behavior threatens to degrade everyone else.
Availability and durability at scale. Designing for hardware and component failure as a constant, not an edge case, while keeping data durable and available across a massive, distributed fleet.
Performance and efficiency. Finding and eliminating bottlenecks in a complex system, and making sure optimization effort goes where it has the most impact.
Architectural evolution. Retiring legacy approaches, simplifying fragmented systems, and making large-scale changes safely in a system that can't afford downtime.
You can find out more about our work here: https://www.usenix.org/conference/fast26/presentation/baron","responsibilities":"Identify, scope, and lead major projects that materially impact the reliability, performance, scalability, and maintainability of the storage platform.
Drive architecture and design decisions in your focus area - for example, how rate limiting and quota enforcement are structured across the platform - and represent that direction in cross-team design reviews and roadmap discussions.
Work across teams to identify improvement areas, build consensus, and turn ambiguous problems into concrete, sequenced plans.
Mentor other engineers and raise the technical bar for the team, including in areas like testing, observability, and operational readiness.
Take on new problem areas across the storage platform as priorities shift, applying the same depth of ownership regardless of the specific domain.
Preferred Qualifications
Experience with flow control, overload protection, or admission-control systems (e.g., adaptive throttling, load shedding, backpressure).
Experience with object storage systems or similar backend storage engines.
Experience building observability/telemetry that makes complex system behavior explainable to engineers or customers.
Familiarity with distributed state-propagation protocols (e.g., gossip protocols).
Familiarity with modern data lake architectures and query engines
Minimum Qualifications
In-depth experience as a backend software engineer with a strong grasp of computer science fundamentals: networking, filesystems, security concepts.
Experience designing, building, and operating large-scale distributed systems, with a strong grasp of concepts like availability, congestion control, observability, and fault tolerance.
Experience driving complex, ambiguous technical projects end-to-end and collaborating across teams to build consensus.
Experience with at least one of: multi-tenant resource isolation, rate limiting, or quota systems; large-scale storage systems; or distributed systems performance/reliability work.
Additional Information
- Posted: 22 days ago
