Apple logo

Software Engineer - Object Storage,

Apple

On-site๐Ÿ‡ฌ๐Ÿ‡งUnited KingdomleadPosted 8h ago

Job description

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.","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.