NIO Inc.

Systems Verification & Concurrent Kernel Architecture Research Intern

NIO Inc.
Apply
6 months ago
San Jose, CA, USAIntern

Responsibilities

  • Formalize locking protocols in TLA+ and Spin to prove the absence of deadlocks and circular waits.
  • Apply ESBMC and CBMC bounded model checking to C source code for data races, pointer-safety issues, and invariant violations.
  • Verify memory-barrier placement across ARMv8 and RISC-V hardware memory models.
  • Use LLMs to synthesize formal invariants and environment harnesses, then audit the results for logical soundness.
  • Analyze concurrency state-space explosion and investigate rare interleaving failures in kernel primitives.

Requirements

  • Currently pursuing or have completed a PhD or Master’s degree in Computer Science, Computer Engineering, Applied Mathematics, or a related field, with relevant research projects and publications.
  • Deep proficiency in C, including memory alignment, volatile keywords, and hardware interrupts.
  • Ability to read ARMv8 assembly and assess whether compiler optimizations compromise synchronization.
  • Strong understanding of L1/L2 cache coherency, MESI, lock hierarchies, weak-memory hardware, and memory barriers.
  • Ability to model software as a discrete state machine and reason rigorously about formal proofs and model-checker failures.

Benefits

  • Three-month, full-time research internship.
  • Work focused on high-assurance concurrent-kernel verification and automated formal methods.

Tech Stack

C

Categories

NIO Inc.

About NIO Inc.

5,001-10,000 employees
Contact me