Software Engineer for Collaborative AI Robotics

Are you ready to build the future of collaborative AI robotics? Are you a curious and proactive developer with an eagerness to learn?

The IHMC group in sunny Pensacola, FL, is looking for a creative and driven Software Engineer to join our team! We want you to help build and run collaborative autonomy across simulation and real robotic platforms. You’ll work with a small, interdisciplinary team to integrate autonomy software with physical platforms, bring up reliable demos, and run repeatable experiments. This role is a strong fit for someone who enjoys hands-on robotics work, can debug multi-process systems, and cares about the details necessary for producing reliable systems.

Primary Responsibilities:

  • Develop, run, and iterate on robotics experiments in simulation and/or on real robots (ground robots and/or UAVs depending on the project)
  • Build and troubleshoot ROS2-based systems (nodes, topics/services, launch files) and support repeatable demo bring-up
  • Assist with autonomy integration: connect autonomy outputs to robot adapters, safety gating, and telemetry/logging
  • Tune basic controllers (e.g., PID) and support practical control experiments
  • Develop and maintain experimentation infrastructure (e.g., logging, replay, debugging workflows)
  • Collaborate closely with teammates while owning day-to-day implementation and debugging tasks

Required Qualifications:

  • Bachelor’s degree in relevant field
  • Authorized to work in the United States
  • Programming proficiency in Python and/or C++
  • ROS2 experience (building/running nodes, topics/services, launch and troubleshooting)
  • Basic controls understanding, including PID concepts and basic practical tuning
  • Hands-on robotics experimentation experience (simulation and/or real robots)
  • Comfort with multi-process robotics stacks
  • Working understanding of robot communication patterns
  • Strong collaboration and communication skills (can work independently while coordinating tightly with a team)
  • Solid understanding and strong experience using Git
  • Accustomed to writing good tests and discerning what a good test suite looks like

Preferred Experience:

Any of the following will strengthen your application:

  • Master’s degree in relevant field
  • Simulation experience for robotics/autonomy (e.g., Gazebo Classic/Harmonic, Isaac Sim, Webots, Unreal, Unity)
  • PX4 + ROS2 integration experience (MAVROS/MAVLink, SITL/HITL; flight/robot experiments in sim and/or outdoors)
  • Docker-based workflows for reproducible robotics stacks (including multi-container setups)
  • Logging/telemetry pipelines (rosbag2, MCAP, run manifests/metadata, replay/debug workflows)
  • Practical ROS2/DDS networking familiarity
  • Experience with message serialization/schemas (e.g., Protobuf) and basic compatibility/versioning mindset
  • Building basic agent middleware patterns (local IPC, run lifecycle events, diagnostics, reconnection behavior, simple safety gating/estop behavior)
  • Multi-robot/multi-agent experimentation and writing clean, reusable ROS2 packages
  • Hardware familiarity (platform integration, wiring/soldering, bring-up/checkout)

Competencies:

  • Ability to learn quickly and continuously.
  • Ability to perform job functions independently and able to solve complex problems without significant assistance, or with limited supervision, and work effectively either on own or as part of team.
  • Excellent written and oral communication skills.
  • Collaborative mindset with a focus on team success within a tightly coupled, interdisciplinary team.

To Apply:

Email to robotjobs@ihmc.org with the subject line “Software Engineer for Collaborative AI Robotics – YourLastName” and include the following:

  1. Current resume in pdf format. Name your file: “YourLastName_Resume.pdf”.
  2. Cover letter in pdf format. Name your file: “YourLastName_CoverLetter.pdf”
  3. Download this Pre-Interview Questionnaire pdf, fill it out and attach it. Name your file: “YourLastName_Questionnaire.pdf”