Torc Robotics logo
Torc Roboticstoday

Software Engineer, II - Middleware

$139,000–$166,800 year

On-site · Ann Arbor, Michigan, United States

Type
Full Time
Level
Mid Level
Education
Bachelors Degree
Company size
Unknown
Industry
Automotive Technology

Job Summary

Software Engineer II - Middleware for embedded Linux in autonomous driving systems. Design, develop, and maintain C++ middleware components (ROS2, SOME/IP); optimize performance, memory usage, and real-time behavior; integrate third-party drivers; collaborate with hardware engineers; contribute to open-source community; ensure safety-focused adjustments and testing across unit, integration, and system levels; work with PCIe data transport, automotive Ethernet, and various peripheral interfaces; participate in agile processes and thorough documentation.

Required Qualifications

  • Bachelor’s degree in Electrical Engineering, Hardware Engineering, Computer Engineering or related field and 4+ years experience OR Master’s degree in a related field and 2-4 years experience
  • Deep Knowledge of a Middleware Framework, e.g. ROS2, SOME/IP or similar
  • Experience with PCIe Data Transportation
  • Experience with Open-Source Collaboration
  • 6+ years of professional experience in C++ development for embedded Linux systems.
  • Experience with NVIDIA DriveOS
  • Experience with Embedded Linux Software development
  • Proficient in modern C++ (C++11/14/17), object-oriented design, and software engineering principles.
  • Strong understanding of Linux internals, including user space vs kernel space, device trees, and system boot-up.
  • Experience with cross-compilation toolchains and build systems (e.g., CMake, Make, Yocto, Buildroot, Bazel).
  • Solid debugging and performance tuning skills using tools like GDB, Valgrind, strace, etc.
  • Experience working in multi-threaded, multi-core, and multi-processor systems.
  • Solid understanding of Semaphore, Mutex, Message Queue, shared memory and other operating system concepts.
  • Experience with real-time operating systems (RTOS) or real-time Linux.
  • Familiarity with hardware interfaces such as SPI, I2C, UART, Automotive Ethernet, CAN, and GPIO.
  • Knowledge of software version control (e.g., Git), CI/CD practices, and issue tracking systems.
  • Experience with Python, Bash scripting, or other relevant tools for automation and testing.
  • Previous work in industries like automotive, IoT, robotics, or telecommunications.
  • Automotive ASPICE knowledge – V Cycle
  • ISO-26262 knowledge and experience with designing software for safety critical systems and/or automotive ECUs.
  • Experience with Vector Cast or GTest for unit testing.
  • Experience working with scrum / Agile teams.
  • Experience in the certification process of automotive products
  • You enjoy working in an agile environment
Sorce

Apply with one swipe on Sorce. We auto-fill applications and apply on your behalf — no cover letters, no 40-minute forms.

Hiring someone like this?

Get your role in front of qualified candidates on Sorce.

Get started

$139k – $167k / yr

Software Engineer, II - Middleware · Torc Robotics

Apply on Sorce