Job Description
Summary
The Apple Services Engineering(ASE) team builds and provides systems and infrastructure that power Apple’s services (such as iCloud, iTunes, Siri, and Maps). We are the foundation on which Apple’s software developers build the products that our customers love. Our services have to scale globally, stay highly available, and "just work.” If you love designing, engineering and running systems and infrastructure that will help millions of customers, then this is the place for you!
Apple Service Engineering (ASE)’s Compute team is seeking an experienced software engineer to build and enhance massive clusters hosting Virtual Machines, Containers and associated infrastructure that can scale to meet the demands of Apple’s Services offerings. You will work with world-class engineers on core components of Virtualization and Containerization technologies, customize it to help fit Apple’s diverse needs, and engage with the upstream community to drive Apple’s requirements. Ultimately, you will help build the platform that delivers our applications at scale to our end users.
Description
A domain expert with expertise in multiple technical areas, used to designing major features and able to resolve highly complex issues creatively and effectively taking ownership of major features and technologies to demonstrate a significant impact within the organization.
Approach complex issues with creativity, ready to take risks and course-correct effectively to produce an impact on the organization through broad implementation of new ideas.
Drive ideas from inception to implementation establishing a reputation sought out throughout the organization for advice and consultation through setting standards, process and technical direction. Ready to actively mentor engineers at all levels.
Minimum Qualifications
- BS or MS in Computer Science or equivalent experience.
- At least 15+ years of software design and development experience in cloud service orchestration (API-based control plane) with an emphasis on “infrastructure-as-a-service” (compute, storage and network virtualization)
- Strong experience with building and scaling core components of Kubernetes or similar orchestration systems
- Highly proficient in Golang and Java with a track record of designing and developing highly scalable web API-based request processing systems (Spring, Kafka)
- Experience integrating with and extending Apache CloudStack is a plus, or general infrastructure automation experience
- Programming Linux system virtualization based on Libvirt, QEMU, KVM
- Experience building and operating large-scale distributed systems
Preferred Qualifications
- Understanding of various storage solutions (iSCSI, NFS, cluster file systems)
- Understanding of various networking concepts (SDN, VXLAN, VPC networking, tap devices, multi queue networking)
- Security design at the host (process isolation), storage (encryption) and network (access control) level
- Excellent verbal and written communication skills to effectively collaborate with multidisciplinary teams.
- Ability to articulate complex technical concepts to both technical and non-technical stakeholders.