Software Engineer I - Device Drivers

Torcrobotics

Ann Arbor, MI, United States
**
C/c++ programming proficiency
Linux embedded systems development
Device drivers and user space drivers
** Torc Robotics is seeking a Software Engineer I for their Device Drivers team, focused on developing and maintaining software for integrating sensors in autonomous trucks. The ideal candidate will have experience in embedded systems, device drivers, and C/C++ programming, along with a collaborative spirit to work with cross-functional teams. **

Job Summary

  • The Device Drivers team develops and maintains software used to configure and interface with sensors in the system to pass data generated from sensors to consumers in the system.
  • Write software to integrate external sensors to the system, perform system-level debugging, and optimize performance, memory usage, and real-time behavior of embedded applications.
  • Torc offers a competitive compensation package, 100% paid medical, dental, and vision premiums, a 401K plan with a 6% employer match, and flexibility in schedule with generous paid vacation.

Matching Summary

Match Score: 75

** Torc Robotics is seeking a Software Engineer I for their Device Drivers team, focused on developing and maintaining software for integrating sensors in autonomous trucks. The ideal candidate will have experience in embedded systems, device drivers, and C/C++ programming, along with a collaborative spirit to work with cross-functional teams. **

Skills & Requirements

Must-have

  • C/C++ programming proficiency
  • Linux embedded systems development
  • Device drivers and user space drivers
  • System-level debugging and performance tuning
  • Real-time embedded systems knowledge
  • Hardware interfaces (SPI, I2C, CAN)

Nice-to-have

  • Agile/Scrum team experience
  • Nvidia DriveOS exposure
  • ISO 26262 knowledge desirable
  • Automotive ASPICE knowledge

Key Requirements

  • 1-5+ years of experience
  • Bachelor's or Master's Degree
  • Experience with PCIe, DMA, Ethernet, CAN
  • Experience with latency analysis (CyclicTest, ftrace)
  • Knowledge of build systems (Make, CMake, Yocto)
  • Familiarity with system calls, memory management
  • Experience with debugging tools (GDB, strace)
  • Experience with multi-threaded systems
  • Knowledge of OS concepts (Semaphore, Mutex)
  • Knowledge of software version control (Git), CI/CD
  • Experience with Python, Bash scripting

Work Rights

Not specified

Tailored Resume

Cover Letter