Software Engineer II

Torc Robotics, Inc.
Ann Arbor, United States of America
3 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Junior

Job location

Ann Arbor, United States of America

Tech stack

Automation of Tests
C++
Command-Line Interface
CMake
Computer Engineering
Continuous Integration
Software Debugging
Linux
Programming Tools
Eigen (C++ Library)
Middleware
Integrated Development Environments
Python
OpenCV
Posix
Software Tools
Robotic Automation Software
SciPy
Sensor Fusion
Software Engineering
Data Logging
Scripting (Bash/Python/Go/Ruby)
GIT
Build Tools
Lidar
GNSS
Docker

Job description

JOB DESCRIPTION: Ensure the accuracy and reliability of perception systems across the autonomous vehicle platform. Develop and maintain software tools and algorithms that calibrate and validate multi-modal sensors including cameras, Lidar, and IMUs-both in simulation and on real vehicles. Design and implement automated calibration pipelines and mathematical models for intrinsic and extrinsic sensor alignment. Execute full software lifecycle activities to ensure spatial and temporal synchronization, directly supporting the safety and robustness of autonomous driving. Build validation frameworks to detect sensor degradation, collaborate with perception teams to refine sensor models, and utilize simulation to verify that software updates maintain peak system performance.

Requirements

Minimum Requirements: Master's degree in Computer Engineering, Mechanical Engineering, Robotics, or related software engineering technical field and 1 year of experience in an occupation related to autonomy robotic algorithm software development. Must have experience with each of the following: Camera Geometry (intrinsic/extrinsic models), sensor alignment, and coordinate frame transformations (e.g., SE(3), SO(3)); Python and C++, leveraging libraries like OpenCV, SciPy, and Eigen (or other advanced linear algebra libraries) for robust real-time and offline sensor calibration, as well as simulation; ROS/ROS 2 or equivalent robotics middleware (e.g., DDS) for data logging, replaying bags, message parsing, and real-time debugging of sensor streams; multi-sensor fusion and calibration involving key modalities: Lidar, Camera, IMU, and GNSS, specifically in the context of robotics, ADAS, or autonomous vehicles; modern development tools (Docker, Bazel or similar build systems like CMake, and Git) to develop reproducible, containerized calibration workflows integrated into CI/CD/CT (Continuous Testing) pipelines; and robotic systems, working within a Linux/POSIX development environment, and utilizing bash/zsh and command-line tools for scripting, debugging, and system management.

Alternative Requirements: Bachelor's degree in Computer Engineering, Mechanical Engineering, Robotics, or related software engineering technical field and 5 years of experience in an occupation related to autonomy robotic algorithm software development. Must have experience with each of the following: Camera Geometry (intrinsic/extrinsic models), sensor alignment, and coordinate frame transformations (e.g., SE(3), SO(3)); Python and C++, leveraging libraries like OpenCV, SciPy, and Eigen (or other advanced linear algebra libraries) for robust real-time and offline sensor calibration, as well as simulation; ROS/ROS 2 or equivalent robotics middleware (e.g., DDS) for data logging, replaying bags, message parsing, and real-time debugging of sensor streams; multi-sensor fusion and calibration involving key modalities: Lidar, Camera, IMU, and GNSS, specifically in the context of robotics, ADAS, or autonomous vehicles; modern development tools (Docker, Bazel or similar build systems like CMake, and Git) to develop reproducible, containerized calibration workflows integrated into CI/CD/CT (Continuous Testing) pipelines; and robotic systems, working within a Linux/POSIX development environment, and utilizing bash/zsh and command-line tools for scripting, debugging, and system management., Minimum Requirements: Master's degree in Computer Engineering, Mechanical Engineering, Robotics, or related software engineering technical field and 1 year of experience in an occupation related to autonomy robotic algorithm software development. Must have experience with each of the following: Camera Geometry (intrinsic/extrinsic models), sensor alignment, and coordinate frame transformations (e.g., SE(3), SO(3)); Python and C++, leveraging libraries like OpenCV, SciPy, and Eigen (or other advanced linear algebra libraries) for robust real-time and offline sensor calibration, as well as simulation; ROS/ROS 2 or equivalent robotics middleware (e.g., DDS) for data logging, replaying bags, message parsing, and real-time debugging of sensor streams; multi-sensor fusion and calibration involving key modalities: Lidar, Camera, IMU, and GNSS, specifically in the context of robotics, ADAS, or autonomous vehicles; modern development tools (Docker, Bazel or similar build systems like CMake, and Git) to develop reproducible, containerized calibration workflows integrated into CI/CD/CT (Continuous Testing) pipelines; and robotic systems, working within a Linux/POSIX development environment, and utilizing bash/zsh and command-line tools for scripting, debugging, and system management.

Alternative Requirements: Bachelor's degree in Computer Engineering, Mechanical Engineering, Robotics, or related software engineering technical field and 5 years of experience in an occupation related to autonomy robotic algorithm software development. Must have experience with each of the following: Camera Geometry (intrinsic/extrinsic models), sensor alignment, and coordinate frame transformations (e.g., SE(3), SO(3)); Python and C++, leveraging libraries like OpenCV, SciPy, and Eigen (or other advanced linear algebra libraries) for robust real-time and offline sensor calibration, as well as simulation; ROS/ROS 2 or equivalent robotics middleware (e.g., DDS) for data logging, replaying bags, message parsing, and real-time debugging of sensor streams; multi-sensor fusion and calibration involving key modalities: Lidar, Camera, IMU, and GNSS, specifically in the context of robotics, ADAS, or autonomous vehicles; modern development tools (Docker, Bazel or similar build systems like CMake, and Git) to develop reproducible, containerized calibration workflows integrated into CI/CD/CT (Continuous Testing) pipelines; and robotic systems, working within a Linux/POSIX development environment, and utilizing bash/zsh and command-line tools for scripting, debugging, and system management.

Apply for this position