About the Role
About the Role
As a Kernel / Hypervisor Engineer at AWS, you will work on Firecracker, an open-source virtual machine monitor designed for serverless and container workloads. This role involves low-level systems programming in Rust, focusing on hypervisor components, device emulation, and memory management to enhance the performance and security of AWS services.
Key Job Responsibilities
- Design, develop, and maintain hypervisor and VMM components in Rust, including virtual device emulation, memory management, and vCPU scheduling.
- Optimize boot latency, memory footprint, and I/O throughput for ephemeral microVM workloads at global scale.
- Harden the security boundary between guest and host, contributing to threat modeling and implementing isolation mechanisms.
- Contribute to the upstream Linux kernel where needed to support Firecracker's roadmap.
- Mentor and coach junior engineers, drive code quality through reviews, and champion best practices.
- Participate in on-call rotation to ensure operational excellence of Firecracker-based services.
A Day in the Life
Your day might start by reviewing pull requests on the Firecracker open-source repository, providing feedback to community contributors or teammates. You then dive into implementing a new virtio device or optimizing a hot path in the VMM, writing Rust and reasoning about memory safety and performance trade-offs. After lunch, you collaborate with an internal AWS service team that consumes Firecracker to debug a subtle guest-host interaction - perhaps a vCPU scheduling anomaly or an unexpected memory mapping behavior. You wrap up by writing a design doc for an upcoming kernel interface change, getting input from colleagues across the team. Throughout the day, you balance deep technical work with collaboration, working in the open on GitHub alongside a global community.
About The Team
We are the Compute Capsule team within AWS Lambda, based in Dublin, Ireland. We own Firecracker end-to-end - from its open-source development on GitHub to its deployment at scale inside AWS. We focus on serverless and container virtualization, trusted compute, and server fleet tooling. We value work-life balance, respect each other's time, and invest in growing every team member through mentorship, challenging assignments, and training. We believe diverse perspectives make us stronger and actively seek team players who thrive in collaborative, inclusive environments.
Basic Qualifications
- Experience (non-internship) in professional software development.
- Hands-on experience with low-level systems programming (e.g., kernel, hypervisor, firmware, or embedded systems).
- Proficiency in at least one systems language: C, C++, or Rust.
- Solid understanding of Linux internals (syscalls, memory management, process).
- Experience with virtualization technologies (KVM, Xen, QEMU, or similar).
Preferred Qualifications
- Experience with Rust in production systems.
- Contributions to open-source projects (kernel, hypervisor, or systems tooling).
- Experience with device emulation or virtio.
- Familiarity with hardware-assisted virtualization (Intel VT-x, AMD-V, or Arm virtualization extensions).
- Knowledge of performance profiling and optimization at the systems level (perf, ftrace, eBPF).
- Bachelor's degree or higher in Computer Science, Engineering, or a related field.
Requirements
Low-level systems programming
Hands-on experience with kernel, hypervisor, firmware, or embedded systems.
Proficiency in systems languages
Proficiency in at least one systems language such as C, C++, or Rust.
Linux internals knowledge
Solid understanding of Linux internals including syscalls and memory management.
Virtualization technologies
Experience with virtualization technologies like KVM, Xen, or QEMU.
Nice to Have
Experience with Rust in production systems.
Contributions to open-source projects related to kernel or hypervisor.
Experience with device emulation or virtio.
Familiarity with Intel VT-x, AMD-V, or Arm virtualization extensions.
Benefits
Work-life balance
We value work-life balance and respect each other's time.
Mentorship opportunities
Invest in growing every team member through mentorship and training.