Hypervisor Development Engineer

Location: Bangalore, India
Experience: 3–8 Relevant Years
Employment Type: Full-Time

Job Summary

We are looking for a skilled Hypervisor Development Engineer / Virtualization Software Engineer with strong expertise in system software, virtualization, operating system internals, CPU architecture, and low-level programming.

The candidate will be responsible for designing, developing, debugging, and optimizing hypervisor components for virtualized environments, cloud infrastructure, embedded systems, automotive platforms, telecom systems, or enterprise virtualization products.

The role involves working close to hardware and operating system layers, including CPU virtualization, memory virtualization, device virtualization, interrupt handling, I/O virtualization, and virtual machine lifecycle management.

Key Responsibilities

Hypervisor Development

  • Design, develop, and maintain hypervisor software components.
  • Work on Type-1 or Type-2 hypervisors.
  • Develop virtualization support for:
    • CPU virtualization
    • Memory virtualization
    • I/O virtualization
    • Interrupt virtualization
    • Device passthrough
  • Implement and optimize virtual machine creation, execution, suspension, migration, and teardown.

Virtual Machine Monitor Development

  • Work on VMM components such as:
    • vCPU scheduling
    • VM exits and entry handling
    • Trap and emulate logic
    • Guest memory management
    • Hypercalls
    • Virtual interrupt delivery
  • Debug guest OS boot, runtime, and crash issues.

Hardware Virtualization

  • Work with processor virtualization technologies such as:
    • Intel VT-x
    • Intel EPT
    • AMD-V
    • AMD RVI/NPT
    • ARM Virtualization Extensions
    • ARM Stage-2 Translation
  • Handle low-level CPU state management, privilege transitions, and exception handling.

Memory Virtualization

  • Implement and optimize:
    • Shadow page tables
    • Extended Page Tables
    • Nested Page Tables
    • Stage-2 page tables
    • IOMMU mappings
    • Memory isolation
  • Debug memory faults, address translation issues, and guest memory corruption.

Device Virtualization

  • Develop and maintain virtual device models.
  • Work with:
    • VirtIO
    • PCI/PCIe virtualization
    • SR-IOV
    • VFIO
    • Device passthrough
    • Emulated storage, network, console, and timer devices
  • Optimize virtual I/O performance.

Performance Optimization

  • Analyze and improve hypervisor performance.
  • Optimize:
    • VM exit overhead
    • Context switching
    • vCPU scheduling
    • Interrupt latency
    • I/O throughput
    • Memory access performance
  • Support benchmarking and performance profiling.

Debugging & Validation

  • Debug complex issues across guest OS, hypervisor, firmware, and hardware.
  • Analyze:
    • VM crashes
    • Guest kernel panics
    • Hypervisor faults
    • Boot failures
    • Performance regressions
  • Use tools such as:
    • GDB
    • kgdb
    • crash
    • ftrace
    • perf
    • QEMU monitor
    • kernel logs
    • serial console debugging

Required Technical Skills

Programming

  • Strong programming skills in:
    • C
    • Assembly
    • Shell scripting
  • Good knowledge of:
    • Python
    • Makefiles
    • Build systems

Operating System Internals

Strong understanding of:

  • Process and thread management
  • Memory management
  • Page tables
  • Interrupt handling
  • Scheduling
  • Synchronization
  • System calls
  • Boot process
  • Kernel debugging

Virtualization Technologies

Experience with one or more of:

  • KVM
  • Xen
  • QEMU
  • VMware ESXi
  • Hyper-V
  • ACRN
  • Jailhouse
  • seL4-based virtualization
  • Custom embedded hypervisors

CPU Architecture

Good understanding of:

  • x86/x86_64 architecture
  • ARM/ARM64 architecture
  • Privilege levels
  • MMU
  • TLB
  • Cache coherency
  • Interrupt controllers
  • Timer architecture
  • Bootloaders and firmware interfaces

Linux Kernel Knowledge

  • Linux kernel architecture
  • Kernel module development
  • KVM internals
  • Device drivers
  • Memory management
  • Scheduler internals
  • PCIe and DMA concepts

 Preferred Qualifications

  • Experience developing or modifying hypervisors.
  • Experience with KVM, Xen, QEMU, or embedded hypervisors.
  • Knowledge of secure virtualization and trusted execution environments.
  • Experience with:
    • Secure boot
    • TPM
    • ARM TrustZone
    • Intel SGX/TDX
    • AMD SEV
  • Knowledge of real-time virtualization.
  • Experience with safety-critical systems such as automotive or aerospace platforms.
  • Familiarity with cloud virtualization, container runtimes, or orchestration platforms.
  • Experience with Yocto, Buildroot, U-Boot, or embedded Linux.
  • Understanding of ISO 26262, MISRA C, or safety-certified software is a plus.

Educational Qualifications

  • Bachelor’s or Master’s degree in:
    • Computer Science
    • Electronics & Communication
    • Information Technology
    • Related Discipline
Job Category: Engineering
Job Type: Full Time
Job Location: Bengaluru

Apply for this position

Maximum allowed file size is 5 MB. Allowed Type(s): .pdf