SlipstreamJobs tracks this role from the company's public career site. Apply directly on the employer's site.
Apple's Virtualisation team is seeking a systems engineer to join the virtualised devices group. This role focuses on building foundational technologies for supporting external devices within virtual machines, spanning hardware passthrough and software device emulation. You will work across the entire system stack—from kernel to libraries, frameworks, and applications—designing and implementing support for external devices in virtual machines.
Key responsibilities include:
- Contributing to the Virtualisation and AccessoryAccess frameworks
- Designing and implementing support for external devices in virtual machines
- Writing high-quality, well-tested, maintainable code in C++ and Swift
- Designing and implementing comprehensive test suites to ensure reliability and correctness across the stack
- Debugging complex issues spanning kernel, user-space, and guest operating system layers
- Optimizing performance of virtualised devices
- Working cross-functionally with drivers, frameworks, and QA teams to deliver integrated solutions
- Participating in code reviews and technical design discussions
- Picking up new subsystems and device technologies as team priorities evolve
This role values broad systems fluency and the ability to learn new device technologies over deep prior expertise in any single area. You will have a major impact on the design and implementation of Apple's virtual machines and virtualisation frameworks, collaborating with experts across Apple's software and hardware organizations.
Minimum Qualifications:
- Strong C++ programming skills
- Strong understanding of operating systems internals and systems programming
- Demonstrated ability to work effectively across different layers of a software stack (kernel, user-space, framework, application)
- Excellent collaborative skills with strong written and verbal communication
- Bachelor's degree or equivalent experience in computer science or a related field
Preferred Qualifications:
- Knowledge of USB or other device/bus technologies
- Familiarity with virtualisation/hypervisor concepts
- Experience with device emulation or hardware passthrough/redirection
- Driver development experience
- Swift programming skills