Senior Software Engineer (Rust, Web Services) - Apple Services Engineering at Apple
London, England, United Kingdom -
Full Time


Start Date

Immediate

Expiry Date

17 Jun, 25

Salary

0.0

Posted On

17 Mar, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Web Services, Concurrent Programming, Rust, Storage Solutions, Kubernetes, Web Technologies, Storage Systems

Industry

Information Technology/IT

Description

SUMMARY

Posted: 13 Feb 2025
Role Number:200591177
We are looking for senior software engineers to join our small team with big responsibilities. The role involves a tremendous amount of individual responsibility and influence over the direction of the core service. We believe in small agile teams and their ability to deliver high-quality, high-impact software. We share code ownership and knowledge through the Agile technique of pair-programming. Our codebase is written entirely in modern Rust using the latest technologies and coding practices. We rely on sustainable coding through focus on readable, maintainable, and performant code. As such, we lean heavily on Rust and its great tooling to fearlessly develop highly efficient distributed systems code. We use multiple levels of testing to ensure we have low-level performance (such as tests to validate the number of allocations and bytes used) as well as correctness (such as tests with fault injection, and race condition simulation). Combined with the powerful borrow checker and strong type system of Rust, we can develop complex systems with confidence.

DESCRIPTION

We are building a new distributed multi-tiered data orchestration service to support critical Artificial Intelligence/Machine Learning systems and services with direct business and customer value. We are looking for an experienced developer to join our collaborative and friendly team. Someone with a desire to learn. With a passion for clean, maintainable code. Someone that enjoys the duality of working on high level concepts as well as optimizing low-level performance. All members of the team are responsible for the complete life-cycle of features. This includes identifying areas of improvement, proposing changes, driving implementation, and supporting it in production.

MINIMUM QUALIFICATIONS

  • Experience designing, implementing, and supporting highly scalable applications and web services
  • Experience working with Rust (e.g., asynchronous (async/await), sharing models (Sync/Send), etc.)
  • Experience with concurrent programming (e.g., locking, memory synchronization, atomic operations, etc.)
  • Experience with distributed system concepts (e.g., distributed consensus, replication, failure detection, etc.)

PREFERRED QUALIFICATIONS

  • Experience with blob storage solutions
  • Experience with distributed key-value databases
  • Experience with Kubernetes and containers
  • Experience with Linux system internals
  • Experience with storage systems and internals + back-end web technologies
Responsibilities

Please refer the Job description for details

Loading...