Software Engineer II - Device Drivers
Summary
Develops and maintains C++ device drivers for autonomous truck sensors, integrating hardware interfaces and optimizing real-time performance in Linux environments.
About Torc
Torc has been a leader in autonomous vehicle technology since 2007. Now part of the Daimler family, we’re focused on building the software that will bring autonomous trucks to market.
The Team
The Device Drivers team builds and maintains the software that configures and interfaces with our sensors, moving data from sensors to the systems that consume it primarily using C++.
What You’ll Do
- Design and implement software integrating external sensors (PCIe, DMA, Ethernet, CAN) into the system using C++, including debugging and performance tuning at the system level.
- Maintain software releases and testing artifacts.
- Optimize real-time behavior, memory usage, and performance of real-time applications running in multi-threaded, multi-core environments.
- Maintain automated build pipelines, test environments, and test tooling using C++/Python/Bash. Partner with DevOps, QA, Hardware, and Networking teams to troubleshoot issues and ensure system security, stability, and scalability.
- Integrate and maintain third-party and open-source software.
- Contribute to technical design discussions and documentation.
- Provide technical guidance to junior engineers on driver design and debugging approaches.
What You’ll Need
- Bachelor’s in Computer Science, or a related field, with 4+ years of experience or a Master’s with 0-3+ years of relevant experience.
- Strong C/C++ proficiency and hands-on experience with device drivers/user-space drivers, Linux embedded development, systemd service management, general Linux system administration, and real-time systems (latency analysis via CyclicTest, ftrace).
- Working knowledge of build systems (Make, CMake, Yocto, Buildstream, or Bazel), containers/namespace isolation, and hardware interfaces (SPI, I2C, UART, Automotive Ethernet, CAN, GPIO).
- Comfort with OS fundamentals (system calls, memory/process management, semaphores, mutexes, message queues, shared memory), networking protocols (TCP/IP, SSH, HTTP), and debugging tools (GDB, strace, Valgrind).
- Git-based version control, CI/CD practices, and Agile/Scrum team experience.
- Nice to have: Nvidia DriveOS exposure, ISO 26262/61508 familiarity, and Automotive ASPICE (V-Cycle) knowledge.
Perks of Being a Full-Time Torc’r
Competitive comp with bonus and stock options, 100% paid medical/dental/vision, 401(k) with 6% match, generous flexible PTO from day one, and AD&D/Life Insurance.
Torc is committed to a diverse, inclusive workplace and does not discriminate on the basis of race, religion, color, national origin, gender, sexual orientation, gender identity/expression, age, veteran status, or disability.
US Pay Range
$139,000 - $166,800
Skills
As published by greenhouse · 14 questions · 1 written answer
Basics
First Name, Last Name, Email, Phone, Resume/CV, Cover Letter, Location
Short answers (6)
- How did you first hear about this job? Please list the site, event, or person that referred you.
- What is your availability or desired start date?
- What are your salary expectations?
- If you checked either 'I am a Citizen or Legal Permanent Resident of a different country' or 'I reside in a different country and have a valid work visa there' please indicate the applicable country or countries. Type N/A if not applicable.
- LinkedIn Profile
- Website / Portfolio optional
Pick from a list (7)
- Are you local to Ann Arbor, MI?
- Are you legally authorized to work in the United States for TORC Robotics?
- Do you require or will you require sponsorship for employment visa status (e.g., H-1B visa status, etc.) to work legally in the United States for TORC Robotics?
- U.S. Export Control Requirements - Are you a citizen, national, or resident of any of the following countries/regions? Check each that apply:
- If you checked any of the boxes above other than None / Not applicable, then please provide additional information regarding your immigration and residency status. Check each that apply:
- Do you have an agreement between you and your current or former employer that may restrict your ability to accept this offer of employment with Torc or restrict any work that you may do for Torc?
- Do you have any relatives or family members currently employed at Torc Robotics?
Written answers (1)
- If there is any additional information you would like us to consider when evaluating your application, please provide it below. optional