Baremetal Software Developer - CPU Design Verification

As a bare-metal program development engineer, you will work with the architects, CPU designers, compiler team, performance team, and system software team to make sure every delivered Sifive cores IPs/IPs are reaching even beyond the production quality expectations.


  • Responsibilities:

  • Cowork with CPU designers and architects and familiar with the cutting edge RISCV/SiFive SPEC documents of the high-end cores/uncore IPs. 
  • Writing directed and random bare-metal tests as appropriate to test CPU functions.
  • Make sure the quality of the bare-metal programs to assure the high qualify of Sifive products.  
  • Working with cross-functional teams (hardware engineering, software engineering). 
  • Requirements:

  • Bachelor's, or Master's in Computer Science, Electrical Engineering, or a similar discipline.
  • 2+ years of experience in bare-metal programming, not limited to RISCV
  • Understanding of processor and SoC architecture, or a strong desire and ability to learn.
  • Proficiency in C, Python, Linux, and knowledge on how to use embedded development tools such as JTAG and associated debug tools.
  • Experience with distributed revision control systems such as git.
  • Familiarity or academic experience with hardware design and verification.
  • Open-minded about new technologies and ways to solve problems
  • Experience in CPU or system verification is a plus