Formal Verification Engineer - Firmware

NVIDIA NVIDIA · Semiconductors · Santa Clara, CA +2 · Remote

NVIDIA is seeking a Formal Verification Engineer to ensure the correctness, security, and reliability of low-level firmware. The role involves using formal methods like Model Checking and Theorem Proving to verify firmware components, focusing on hardware-firmware interfaces and critical functionalities. Responsibilities include developing formal models, analyzing counterexamples, and researching new verification techniques.

What you'd actually do

  1. Develop high-level, mathematically precise models and specifications for complex firmware behaviors (e.g., security protocols, memory management, boot sequencing) using formal specification
  2. Apply various formal verification techniques, including Model Checking, Theorem Proving, and Equivalence Checking, to verify firmware correctness.
  3. Focus on the interface between hardware and firmware, formally verifying critical handshakes, register accesses, and control flows.
  4. Develop abstract models of hardware components (e.g., MMIO registers, state machines) required for firmware verification.
  5. Analyze counterexamples generated by formal tools to identify root causes of design/firmware flaws.

Skills

Required

  • Bachelor's or Master's degree in Computer Science, Electrical Engineering, or a related field or equivalent experience
  • 3+ years of relevant experience in formal verification of hardware, software, or embedded systems
  • Good understanding of the principles of Model Checking and/or Theorem Proving
  • Strong proficiency in C/C++ (for firmware analysis) and scripting languages (e.g., Python, Perl)
  • Direct experience verifying critical firmware components such as Boot ROM/BIOS, Security Enclaves, Power Management, or Interrupt Controllers
  • Experience with specialized techniques like Abstract Interpretation, SAT/SMT Solvers, or employing formal approaches in security-critical code

Nice to have

  • Ph.D. is a plus

What the JD emphasized

  • formal methods
  • firmware verification
  • hardware-firmware co-verification