View all jobs

Staff Firmware Engineer

Remote, Canada or US · Computer/Software
We are looking for a firmware developer to help create firmware for our next generation products. Pre-silicon, you will work with hardware designers and the runtime software team to create solutions for initialization, management and debugging of our leading edge AI accelerators. Your software will configure and control hardware blocks such as PCIe, LPDDR, SPI and various of our specific modules. You will play a key role in initial bring up and validation of silicon and will work closely with the runtime team to verify the functionality provided to the host device drivers. You are a capable communicator, organized and detail oriented.

We work in a fast paced, startup environment and you will welcome the opportunity to expand the scope of your role in all phases of the project.


    • Bachelor’s degree in electrical or computer engineering, software engineering, or a related discipline.
    • 5+ years experience in firmware development for embedded processors and near real-time systems.
    • Good verbal and written communication skills.
    • Strong C/C++ programming and debugging skills.
    • Adept in creating high-performance, reliable, multi-threaded programs.
    • Experienced in team oriented software development methods including version control, code review and architectural planning.

Preferred Skills & Experience

    • Experience in writing low level code to interact with hardware peripherals.
    • Experience with PCIe hardware and drivers.
    • Experience with debug tools such as JTAG and gdb.
    • Familiar with RISC-V processor architecture and tool chains.
    • Experienced with real-time executives such as FreeRTOS or Zephyr.
    • Familiar with instruction set simulators such as QEMU.
    • Experienced in chip and board bring up.

Share This Job

Powered by