close chevron-right chevron-down arrow-right arrow-left facebook linkedin instagram twitter email medium
hero

Make a great move

companies
Jobs

C++ Embedded Software Engineer, II - Linux

Algolux

Algolux

Software Engineering
Ann Arbor, MI, USA
USD 139k-166,800 / year
Posted on Jul 9, 2025

About the Company

At Torc, we have always believed that autonomous vehicle technology will transform how we travel, move freight, and do business.

A leader in autonomous driving since 2007, Torc has spent over a decade commercializing our solutions with experienced partners. Now a part of the Daimler family, we are focused solely on developing software for automated trucks to transform how the world moves freight.

Join us and catapult your career with the company that helped pioneer autonomous technology, and the first AV software company with the vision to partner directly with a truck manufacturer.

Job Overview:

We are seeking a skilled and motivated C++ Embedded Software Engineer to join our engineering team. The ideal candidate will have a strong background in C++ development in a Linux environment, with experience in embedded systems. You will contribute to the design, implementation, testing, and maintenance of embedded software components for Automotive ECUs.

Meet the team:

The TORC OS team builds the critical platform components like Base OS, Device drivers, middleware layer and Application SDK that powers Torc’s Level 4 autonomous trucking platform. Our mission is to enable safe, efficient, and scalable deployment of software across real-time autonomous driving systems. We design and optimize the software infrastructure that integrates AI models with GPU-based processing, ensuring high performance, deterministic execution, and seamless integration with the broader autonomy stack.

We work closely with Perception, Planning, Systems, Validation, Hardware, and Safety teams to ensure our software run reliably in both simulation and real-world environments — bridging cutting-edge AI with safety-critical automotive systems.

Key Responsibilities:

  • Design, develop, and maintain robust C++ code for embedded Linux systems.
  • Collaborate with hardware engineers and other software team members to define system requirements and architecture.
  • Optimize performance, memory usage, and real-time behavior of embedded applications.
  • Integrate and maintain third-party software and device drivers.
  • Develop and execute unit, integration, and system-level tests.
  • Write and maintain technical documentation, including design documents and user manuals.
  • Participate in code reviews, design discussions, and agile development processes.

Required Qualifications:

  • Bachelor’s or Master’s degree in Computer Science, Electrical Engineering, or a related field.
  • 6+ years of professional experience in C++ development for embedded Linux systems.
  • 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 in 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 in working with scrum / Agile teams.

Preferred Qualifications:

  • 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.
  • Knowledge of Nvidia CUDA
  • Experience with Vector Cast or GTest

Hiring Range for Job Opening
US Pay Range
$139,000$166,800 USD

At Torc, we’re committed to building a diverse and inclusive workplace. We celebrate the uniqueness of our Torc’rs and do not discriminate based on race, religion, color, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, age, veteran status, or disabilities.

Even if you don’t meet 100% of the qualifications listed for this opportunity, we encourage you to apply.