Oxide Computer Company logo

Operating System Virtualization Engineer

Oxide Computer Company·$275,000 – $275,000

Primary stack

RustC

Job description

About the Position

Do you love operating systems implementation, digging into the gritty interface where software meets machine? We are seeking a Software Engineer specializing in operating system virtualization to join our remote team.

We are looking for an engineer to work on our Rust-based VMM, Propolis, and its containing illumos-based host operating system, Helios. These technologies sit at the center of the Oxide technology stack, interfacing directly with a wide range of hardware, embedded software, and third-party firmware to support the Oxide control plane and its virtual machine instances. The Rust-based VMM is a de novo implementation based on the bhyve hypervisor.

Responsibilities

As an engineer working on host system software and virtualization, you will:

  • Work with a helpful and experienced team to design, build, and bring up host system software, in-kernel virtualization, and the user-space VMM on current and future Oxide computers
  • Read and write code in Rust (Propolis), C (Helios), and/or microprocessor assembly. All the code you write will be open source.
  • Grow and apply your understanding of microprocessors, through deep familiarity with available documentation, interacting directly with real hardware, and producing your own documents where the vendor’s fall short
  • Contribute to the security and resiliency of the system by designing for failure from the ground up
  • Participate in a rigorous code review process and help your colleagues maintain our software in a production-ready state at all times
  • Apply a customer-centric view to the development of new end-to-end features and functions and help realize them across the stack
  • Contribute to the design of new Oxide hardware and software components elsewhere in the stack

Requirements

You will thrive in this role if you:

  • Are familiar with operating systems or virtualization concepts and comfortable in C, Rust, or other low-level systems languages
  • Seek the versatility of working from core OS architecture to hardware interface to networking to virtual device development.
  • Enjoy the freedom of blazing your own architectural trails and solving problems from first principles
  • Have previously worked in the guts of virtualization technologies such as KVM, Hyper-V, bhyve, or related systems
  • Are up to the challenge of interfacing with hardware that has missing or inaccurate documentation
  • Appreciate the hard-won thrill of debugging a knotty problem to root cause
  • Believe in fully documenting your ideas for both current colleagues and your own future self
  • Enjoy reading excellent documentation produced by others
  • Make the tools you wish you had
  • Communicate effectively with engineers across a range of disciplines to exchange knowledge and expertise

Before Applying

Before applying for this role, you should:

  • Experiment with Propolis, using tools like DTrace to explore the system
  • Browse our public Requests for Discussion to get a flavor for how we work
  • Listen to Hiring Processes with Gergely Orosz to familiarize yourself with the Oxide hiring process.
  • Prowl around the code in Propolis or Helios
    • Helios on the genesis of our illumos derivative as discussed in RFD 26
    • Holistic Boot on our approach to BIOS-free booting
    • Unshrouding Turin (or Benvenuto a Torino) on the work we’re doing for AMD’s Turin microprocessor
    • Holistic Engineering on our integrated hardware/software approach
    • Virtualizing Time on the thorniness of getting time to work in a hypervisor
  • Listen to some of our episodes of Oxide and Friends. A few recommendations:

Life at Oxide

We are very explicit about our values, and they can be seen in daily life at Oxide, for example:

  • Our rigor means we enjoy and take pride in the craft of engineering.
  • Our urgency means that we are not above the judicious short-cut.
  • Our versatility is reflected in our greatest strength: the breadth of our team.
  • Our transparency can be seen in our consensus-driven RFD process.
  • Our responsibility means that we both lead and follow: we have our own domains, but we also help others on their parts.
  • Our curiosity shows in our insatiable desire to learn – and our empathy in our love of teaching others.
  • Our humor is a big part of our daily lives: we are inveterate wise-crackers whose video meetings spill into simultaneous text chat.

Working at Oxide

Remote First

Most of our team are based outside of the Bay Area. We do ask that your workday overlaps with Pacific Time for at least four hours.

Flexible Working Hours

Our families and lives outside of our jobs are very important to us; our schedules are flexible to reflect and support that.

Premium Healthcare

We offer the best medical PPO, dental, and vision plans we can find and cover 100% of premiums for employees and dependents.

Compensation

Everyone at Oxide makes $275,000 USD, regardless of location. (Some sales positions have a lower base salary and contain a commission component.)

Apply Now

Authentication required

It is required that you authenticate with an email in order to apply. You may also read through the materials that we ask every applicant to complete. By clicking log in you agree to the use of cookies that we use to authenticate your session.

Log in

View materials

Applying for:

Operating System Virtualization Engineer

Resume

Should be a pdf file

Upload

Materials

Please make a copy of this document and follow the instructions. When completed, please export this document as a pdf and attach it here

Upload

Optionally include relevant links

© Oxide Computer Company. This job description was sourced from the employer's public career page. TheJob is not the employer — we index the posting and route candidates to the source. All content rights and hiring decisions belong to the employer.

Oxide Computer Company logo
Oxide Computer Company

Enterprise Software

Popular searches