Compute Runtime Software Engineer

Apple Inc.
Seattle, WA, United States
5 days ago
Apply on www.juju.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Experienced
Experience required
3 years minimum
Working hours
Regular working hours
Job source

Tech stack

Kubernetes Security Systems Engineering C++ (Programming Language) Cloud Computing Cloud Computing Security Code Coverage Code Review Computer Programming Data Centers Software Design Documents Linux File Systems
+18 more
Hardware Virtualization Hypervisor Kernel-Based Virtual Machine Linux Kernel Network Virtualization Open Source Technology Quick EMUlator (QEMU) Linux Containers Mesos System Programming Virtual Machines Virtualization Technology Software Security Containerization Kubernetes Information Technology Code Testing Docker

Job description

We’re a fast-moving, highly skilled team of systems engineers designing and developing the virtualization-based runtimes that run Virtual Machines and Linux Containers across our data center and Apple platforms - with privacy, security, and performance as first-class requirements. Beyond the datacenter, we maintain Apple Container, our open source project bringing native container support to macOS desktops. We’re looking to add talented, passionate people who love hard systems problems and want to build foundational technology used across Apple and the open source community - engineers early in their systems programming career looking to grow fast on a high-paced, experienced team. Description We build the container runtime technology that Apple’s own services and developers depend on. Our systems engineers develop virtualization-based runtimes - using macOS virtualization and VMM solutions like Cloud Hypervisor and sandboxed container solutions - to run Virtual Machines and Linux Containers across our data center and Apple platforms, with a relentless focus on privacy, security, and performance. This is a foundational systems team: we work at the level of kernel and container security, image distribution, filesystems, and virtualization. Much of this work is greenfield, solving problems unique to running on Apple’s own hardware in the data center, at a scale and with constraints the rest of the industry hasn’t had to solve for. Beyond the datacenter, we maintain Apple Container, our open source desktop tooling that lets developers around the world run containers natively on macOS. We’re looking for a strong foundation in systems programming and a genuine curiosity about how containers and virtualization work under the hood, paired with the drive to learn quickly on a high-paced, experienced team.

Requirements

We love open source and collaboration at every level. Minimum Qualifications + Bachelor’s Degree in Computer Science, or equivalent related experience. + At least 3+ years of Software design and development experience in infrastructure engineering (compute, storage and network virtualization), containerization, or systems programming, with strong fundamentals + Programming proficiency in C, C++, Swift or Go + Familiarity with some or all of the following topics: Linux containerization, Linux filesystems, Image distribution, Content storage, Kernel and container security + Ability to contribute to design docs and technical discussions, and to write clear, well-tested code Preferred Qualifications + Experience with Linux system programming + Experience participating in code review, giving and receiving feedback on correctness and test coverage + Exposure to writing tests for regression prevention or negative-case validation + Development experience in one or more of: Cloud security, Container / Linux Kernel security and API security + Experience troubleshooting and diving into metrics to identify resource contention and bottlenecks + Experience designing benchmarks and load tests to characterize performance and establish scalability models + Development experience with container orchestration systems such as Docker, Kubernetes or Mesos is a plus + Development experience with virtualization and container technologies such as Apple Container, Kata, Firecracker, or KubeVirt is a plus + Systems programming experience on Darwin with Swift is a plus + Programming system virtualization based on Cloud Hypervisor, rust-vmm, macOS Virtualization Framework, QEMU, or KVM is a plus + Understanding of various shared networked storage solutions (iSCSI, NFS, cluster file systems) is a plus 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.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.juju.com
Prepare application

Good distractions

Loading talks and stories from around this role…