Virtualization Software Engineer Intern
Apple
Virtualization Software Engineer Intern
Apple
Designs phones, computers and their operating systems
Imagine what you could do here. At Apple, new ideas quickly become products, services and experiences that people love. As an intern in the Core Virtualization team, you'll do real engineering work alongside experienced engineers on technology that ships across the Apple ecosystem. The Core Virtualization team builds features that bring hardware, system software and apps together into one Apple experience. If you like to know how things work at the lowest level, from CPU architecture to the kernel to the frameworks developers use, this internship is a chance to learn from the people who build them.
Exposure to virtualization technologies (for example KVM, QEMU, Xen, Hyper-V or similar) through coursework, research, open source or personal projects. Familiarity with the Arm architecture (Armv8/Armv9) or experience with any assembly language. Experience with kernel development, device drivers or bare-metal / embedded programming. Experience debugging low-level software with tools such as LLDB/GDB. Interest in software testing and in designing systems that are easy to test. Curiosity, eagerness to learn, and clear written and verbal communication.
Currently enrolled in a Bachelor's, Master's or PhD programme in Computer Science, Computer Engineering, Electrical/Electronic Engineering or a related field. Solid programming skills in C and/or C++. Coursework or project experience in at least one of: operating systems, computer architecture, systems programming or compilers. Understanding of core OS concepts such as processes, memory management, and interrupts/exceptions.
The Virtualization team builds the core technology that lets developers and users run macOS and other operating systems and environments reliably on their Mac. Our work covers kernel-level support, the Hypervisor framework and the Virtualization framework. As an intern, you'll own a meaningful project with guidance from a dedicated mentor and support from the wider team. Depending on your interests and the team's needs, you might: - Explore, prototype and build new features in Apple's Hypervisor or Virtualization frameworks. - Help improve existing features in the Apple virtualization stacks. - Write tests and test tools that improve the reliability and correctness of virtualization components. - Investigate and debug issues that span the kernel, the hypervisor, user space and guest operating systems. - Measure and analyse virtual machine performance and look for ways to improve it. - Take part in code reviews and design discussions, and present your work to the team at the end of your internship. You'll write production-quality C and C++, learn how a modern OS and hypervisor work on Apple silicon, and see how hardware and software teams work together to deliver new features.
Apple designs and sells consumer electronics, from iPhone smartphones and Mac computers to tablets and wearable devices. Its operating systems manage apps and built-in functions for communication and work, while iCloud stores files and synchronizes data across devices. Customers buy additional digital services through subscriptions such as Apple Music and Apple TV, and developers distribute software through the App Store. Apple earns money from hardware sales, subscriptions and digital transactions, selling directly to customers and through retailers and mobile carriers around the world. It was founded in 1976 and has its headquarters in Cupertino, California.
Explore more opportunities at Apple