Job Information
Apple Software Engineer - Distributed Systems, Compute Platform in Cupertino, California
Role Number: 200651673-0836
Summary
Our team is on a mission to build innovative infrastructure and tools to help other engineers be more productive and make software easier to create, build, and distribute. We believe that streamlining software engineering is an important part of unlocking developer creativity and innovation, and we love it when Apple customers see that in the products we ship. We are looking for distributed systems engineers to join our efforts.
Our team works on evolving a set of innovative distributed backend services and tools to deliver a high volume of functional, deterministic computations for various workloads.
We believe that every engineer brings unique skills and perspectives. Far more than any specific experience or skill, we are looking for engineers who want to build great reliable software and services, learn and develop their skills, and ultimately enable others to develop amazing applications. You would join a small, tight-knit group of engineers who build exciting new technology, and have fun while doing so.
Description
You'll be developing novel distributed architectures, products and services to accelerate software build, test, and deployment. If you enjoy working on distributed systems and delivering performance & reliability at scale, then we have many exciting problems for you to work on! You’ll find ways to combine our unique problem domain with established distributed system techniques in order to achieve high performance, reliability, and long-term maintainability. You'll analyze problem requirements, existing solutions, and available systems and make high-level architectural decisions about how to design the backend, considering both medium and long-term goals. You will work alongside your team to implement them while developing appropriate testing and operational mechanisms. You will be most successful here as a flexible and proactive engineer who thrives in a supportive, respectful, and balanced work environment with interesting and challenging problems to tackle. You have excellent judgement and integrity with the ability to make timely and sound decisions. You know how to drive constructive discussion of design points, learn from your team, and use your experience to advocate and teach others.
Minimum Qualifications
Solid understanding of distributed software system fundamentals
Experience with high-performance, strongly typed languages such as: Swift, Rust, C++, Scala
Familiarity with caching, compilers, networking, and operating systems
Ability to efficiently develop, debug, and support new technologies in a changing environment
Strong interest in distributed systems, reliability, and performance
Preferred Qualifications
Familiarity with some large infrastructure systems like Kubernetes
Familiarity with CI/CD solutions like Jenkins
Familiarity with application and service monitoring tools and techniques
Experience with incident management and response
Apple is an equal opportunity employer that is committed to inclusion and diversity. We seek to promote 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 (https://www.eeoc.gov/sites/default/files/2023-06/22-088_EEOC_KnowYourRights6.12ScreenRdr.pdf) .