Software Engineer (Virtualisation)

Apple, Inc.

Greater London

On-site

GBP 90,000 - 120,000

Full time

4 days ago
Be an early applicant

A complete application in a minute

Tailored resume and cover letter, ready to send.

Get past ATS filters

Job summary

Apple in London is seeking a Software Engineer in the Virtualisation team to help design and implement framework support for external devices within virtual machines. You will work across kernel, user-space, and guest OS boundaries, contributing to the Virtualisation and AccessoryAccess frameworks with a focus on reliability and performance.

As part of a collaborative team, you will write high-quality C++ and Swift, review code, and help debug complex issues spanning multiple layers.

Qualifications

  • Strong understanding of operating systems internals and systems programming.
  • Ability to work across kernel, user-space, framework, and application layers.
  • Excellent written and verbal communication.

Responsibilities

  • Contribute to the Virtualisation and AccessoryAccess frameworks.
  • Design and implement support for external devices in virtual machines.
  • Write high-quality, well-tested C++ and Swift code.
  • Design and implement test suites to ensure reliability across the stack.
  • Debug complex issues spanning kernel, user-space, and guest operating system layers.
  • Optimize performance of virtualised devices.
  • Work cross-functionally with drivers, frameworks, and QA teams to deliver integrated solutions.
  • Participate in code reviews and technical design discussions.
  • Pick up new subsystems and device technologies as team priorities evolve.

Skills

OS internals
Systems programming
Cross-layer collaboration
Communication skills

Education

Bachelor's degree in CS or related field

Job description

Selection changes the language of the page/content

Software Engineer (Virtualisation)

London, England, United Kingdom Software and Services

Apple is where individual imaginations gather together, committing to the values that lead togreat work. Every new product we build, service we create, or Apple Store experience wedeliver is the result of us making each other’s ideas stronger. That happens because every oneof us shares a belief that we can make something wonderful and share it with the world,changing lives for the better. It’s the diversity of our people and their thinking that inspires theinnovation that runs through everything we do. When we bring everybody in, we can do thebest work of our lives. Here, you’ll do more than join something — you’ll add something.Join the Virtualisation team and work on projects that span the entire system, from the kernelto libraries, frameworks, and applications. As a Virtualisation engineer, you will have a majorimpact on the design and implementation of Apple's virtual machines and virtualisationframeworks. You will also collaborate with experts across Apple's software and hardwareorganizations to virtualise operating system products. We are looking for a passionatecandidate who wants to work on products that affect the lives of millions of users.

Description

The Virtualisation team is looking for a talented systems engineer to join the virtualised devicesgroup. Our team builds the foundational technologies for supporting external devices withinvirtual machines, spanning hardware passthrough and software device emulation. We'veshipped USB passthrough support in the Virtualisation framework and created theAccessoryAccess framework, and we're expanding the scope of both. This role touches kernel,user-space, and guest OS boundaries, and we value broad systems fluency and the ability topick up new device technologies over deep prior expertise in any single one.

Responsibilities
  • Contribute to the Virtualisation and AccessoryAccess frameworks.
  • Design and implement support for external devices in virtual machines.
  • Write high-quality, well-tested, maintainable code in C++ and Swift.
  • Design and implement test suites to ensure reliability and correctness across the stack.
  • Debug complex issues spanning kernel, user-space, and guest operating system layers.
  • Optimize performance of virtualised devices.
  • Work cross-functionally with drivers, frameworks, and QA teams to deliver integrated solutions.
  • Participate in code reviews and technical design discussions.
  • Pick up new subsystems and device technologies as team priorities evolve.
Minimum Qualifications
  • Strong understanding of operating systems internals and systems programming.
  • Demonstrated ability to work effectively across different layers of a software stack (e.g., 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.

At Apple, we're not all the same. And that's our greatest strength. We draw on the differences in who we are, what we've experienced and how we think. Because to create products that serve everyone, we believe in including everyone. Therefore, we are committed to treating all applicants fairly and equally. As a registered Disability Confident employer, we will work with applicants to make any reasonable accommodations. Apple will consider for employment all qualified applicants with criminal backgrounds in a manner consistent with applicable law. Learn more

At Apple, we believe accessibility is a fundamental human right. You’ll find that idea reflected in everything here — in our culture, our benefits and our digital tools. By welcoming as many perspectives as possible, we help you build a career where you feel like you belong. Learn about accessibility in Apple’s workplace

Get your free, confidential resume review.

or drag and drop your file here.

Similar jobs

Similar jobs worth comparing

Software Engineer (Virtualisation)
Software Engineer (Virtualisation)

Apple, Inc. • Greater London

On-site
GBP 90,000 - 135,000
Software Engineer (Virtualisation)
Software Engineer (Virtualisation)

Apple • Greater London

On-site
GBP 80,000 - 120,000
Software Engineer, Virtualisation: Kernel to VM Frameworks
Software Engineer, Virtualisation: Kernel to VM Frameworks

Apple Inc. • Greater London

On-site
GBP 90,000 - 135,000
Virtualisation Engineer: Device & Kernel Systems (C++/Swift)
Virtualisation Engineer: Device & Kernel Systems (C++/Swift)

Apple, Inc. • Greater London

On-site
GBP 90,000 - 120,000
Software Engineer, London
Software Engineer, London

Apple, Inc. • Greater London

On-site
GBP 90,000 - 140,000
Software Engineer - Private Cloud Compute, On-Device Client Frameworks
Software Engineer - Private Cloud Compute, On-Device Client Frameworks

Apple, Inc. • Greater London

On-site
GBP 90,000 - 150,000
Site Reliability Engineer, London
Site Reliability Engineer, London

Apple Inc. • Greater London

On-site
GBP 90,000 - 130,000
Software Engineer, London
Software Engineer, London

Lex • Greater London

On-site
GBP 90,000 - 120,000
DevOps Software Engineer
DevOps Software Engineer

Apple, Inc. • Greater London

On-site
GBP 90,000 - 130,000
Software Engineer, Swift Server Networking
Software Engineer, Swift Server Networking

Apple • Greater London

On-site
GBP 90,000 - 140,000