Virtualisation Engineer at Apple
London, England, United Kingdom -
Full Time


Start Date

Immediate

Expiry Date

09 Nov, 25

Salary

0.0

Posted On

10 Aug, 25

Experience

0 year(s) or above

Remote Job

Yes

Telecommute

Yes

Sponsor Visa

No

Skills

Hardware Virtualization, Device Drivers, Memory Management, Communication Skills, Kernel

Industry

Computer Software/Engineering

Description

Are you a big-picture thinker who loves setting ambitious goals? Do you have a passion for understanding how each line of code affects all the others? In the Core Operating Systems group, you’ll ensure the OS is inseparable from each device’s identity as a whole. That’s because this group is committed to building fully integrated operating systems that combine hardware, software, and apps into a single Apple experience. Your dedication to cross-disciplinary collaboration will help develop groundbreaking technologies, such as iOS, macOS, watchOS, and tvOS.

DESCRIPTION

The Virtualization team is looking for a highly skilled and motivated software engineer to join our core development group. We are responsible for building the foundational virtualization technologies that power innovative features, enabling developers and users to run diverse operating systems and environments reliably on their Mac. As a member of this team, you will work at the heart of our virtualization stack, contributing to the kernel-level support, the Hypervisor framework, and the Virtualization framework. This is a unique opportunity to work on low-level system software, influence hardware-software co-design, and build highly reliable systems that are critical to the Apple ecosystem. If you are passionate about operating systems, computer architecture, and building robust, high-performance systems, we encourage you to apply. Key Responsibilities - Design, implement, and maintain kernel-level virtualization support for Apple platforms. - Develop and enhance features within Apple’s Hypervisor and Virtualization frameworks. - Implement and improve device emulation and bus emulation logic to support a wide range of virtualized hardware. - Collaborate with hardware teams to integrate support for new virtualization-related features. - Write high-quality, well-tested, and maintainable code in C/C++. - Design and implement comprehensive test suites to ensure the reliability and correctness of virtualization components. - Debug complex issues spanning kernel, hypervisor, user-space, and guest operating system layers. - Optimize performance of virtual machines. - Work cross-functionally with other teams (e.g., drivers, frameworks, QA) to deliver integrated solutions. - Participate in code reviews and technical design discussions.

MINIMUM QUALIFICATIONS

  • Knowledge of Armv8 or Armv9 CPUs architectures.
  • Knowledge of OS internals and system programming, device drivers, and memory management.
  • Excellent C and C++ programming skills.

PREFERRED QUALIFICATIONS

  • Proficient in virtualization technologies.
  • Skilled in kernel and device driver development.
  • Familiar with Arm assembly programming.
  • Knowledgeable in hardware virtualization.
  • Well-versed in testing methodologies and designing testable systems.Strong collaborator with excellent written and verbal communication skills.

  • Submit C

How To Apply:

Incase you would like to apply to this job directly from the source, please click here

Responsibilities

Please refer the Job description for details

Loading...