Job Description
As a Senior Software Engineer, you will play a pivotal role in the development of advanced, general-purpose robots designed to operate in human environments and work with human tools. This position demands a high degree of ownership and responsibility, driving projects from conception through to completion, ensuring that robots perform precisely and reliably in real-world scenarios. You will be responsible for building the software that runs on our on-board computer to enable real-time control, seamless integration of robot data and models, and effective fault detection, diagnostics, and recovery.
Deliver production-grade real-time C++ software infrastructure
Integrate low-level firmware data with high-level controls logic over real-time task graphs
Implement and tune state estimation (IMU, kinematic, odometry fusion) and diagnostic monitors that map sensor faults to DTCs
Characterize and improve the quality of robot kinematics, estimation, and actuation
Bring up new robot embodiments
Integrate learned policies (RL locomotion / motion imitation) into the real-time controls stack
Perform root-cause analysis for complex hardware-software integration issues
Develop API for controls and autonomy systems to interact with robot hardware and simulation
Maintain comprehensive and accurate architecture and design documentation, including HIL and simulation test coverage
Deliver reliable software through code reviews, continuous integration, and automated testing
We are a company committed to creating diverse and inclusive environments where people can bring their full, authentic selves to work every day. We are an equal opportunity/affirmative action employer that believes everyone matters. Qualified candidates will receive consideration for employment regardless of their race, color, ethnicity, religion, sex (including pregnancy), sexual orientation, gender identity and expression, marital status, national origin, ancestry, genetic factors, age, disability, protected veteran status, military or uniformed service member status, or any other status or characteristic protected by applicable laws, regulations, and ordinances. If you need assistance and/or a reasonable accommodation due to a disability during the application or recruiting process, please send a request to HR@insightglobal.com.To learn more about how we collect, keep, and process your private information, please review Insight Global's Workforce Privacy Policy: https://insightglobal.com/workforce-privacy-policy/.
Required Skills & Experience
Technical Skills: Strong modern C++, OOP skills, multi-threading, and Linux application development
Deep knowledge of robotics fundamentals (kinematics, dynamics, controls, estimation, and system identification), with bonus points for hands-on experience with floating-base dynamics, contact/constraint modeling, or sensor fusion
Understanding of rigid-body motion and frame transformations
Comfortable in CMake + colcon ROS2 workspaces
Familiarity with at least some of: MuJoCo, Drake, Eigen, ROS2, Flatbuffers, BehaviorTree.CPP
Experience leading hardware-in-the-loop or simulation-based testing of control software
Familiarity with software testing methodologies and version control (e.g., Git)
Strong communication skills and familiarity with Agile processes (sprint planning, design/code reviews)
Benefit packages for this role will start on the 1st day of employment and include medical, dental, and vision insurance, as well as HSA, FSA, and DCFSA account options, and 401k retirement account access with employer matching. Employees in this role are also entitled to paid sick leave and/or other paid time off as provided by applicable law.