Senior Hypervisor and Virtualization Engineer (ARM Architecture)
Job Description
We are seeking a highly skilled and experienced Senior Hypervisor and Virtualization Engineer to join our team. The ideal candidate will have a deep understanding of ARM architecture and a proven track record in developing and optimizing hypervisor & virtio solutions.
Responsibilities
- Hypervisor Development: Design, develop, and maintain high-performance, secure, and reliable hypervisors for ARM-based platforms.
- Virtualization Technologies: Implement and optimize virtualization technologies, including memory management, device emulation, and I/O virtualization.
- Performance Optimization: Analyze and optimize hypervisor performance, focusing on key metrics like CPU utilization, caching coherency effect, memory overhead, and I/O latency.
- Security and Reliability: Ensure the security and reliability of the hypervisor by implementing robust security features and conducting thorough testing and validation.
- Collaboration: Collaborate with customer engineers to integrate the hypervisor into complex system architectures..
- Problem-Solving: Troubleshoot and resolve complex technical issues related to hypervisor and low-level RTOS based firmware performance, stability, and security.
- Innovation: Stay up-to-date with the latest advancements in virtualization technologies and contribute to the development of innovative solutions.
Qualifications
- Strong proficiency in C/C++ programming and system-level software development.
- Deep understanding of ARM architecture, including memory management units (MMUs), virtual memory, and cache coherency.
- Experience with hypervisor development, such as KVM, Xen, or proprietary hypervisors.
- Knowledge of virtualization technologies like virtio, virtualization extensions, paravirtualization, and hardware-assisted virtualization.
- Embedded firmware development running in a real-time operating system (RTOS) with hardware & software program interactions.
- Experience with PCIe virtualization, including SR-IOV and other virtualization techniques.
- Extensive experience to use QEMU’s emulation abilities to debug complex interactions between the various layers of the virtualised stack.
- Experience with performance optimization techniques, including profiling, benchmarking, and code optimization.
- Strong problem-solving and debugging skills.
- Excellent communication and collaboration skills.
If you are a talented and motivated engineer with a passion for virtualization and ARM architecture, we encourage you to apply.