The RoleWe're hiring a Robotics Software Engineer to help develop a new platform for automated maritime survey and ISR data collection. In this role, you will design, build, integrate, and test software and hardware systems on unmanned maritime platforms.
We're looking for a generalist robotics engineer with strong software fundamentals, hands-on hardware integration experience, and solid systems engineering skillset. This role is ideal for someone who enjoys building real-world robotic systems that operate in challenging, unstructured environments outside the lab.
What You'll Do- Design, develop and test software for unmanned maritime robotic systems
- Develop and maintain autonomy software using frameworks such as ROS or MOOS-IvP
- Interface with lower-level flight controllers such as ArduPilot or PX4
- Develop and tune vehicle guidance, navigation & control algorithms
- Integrate sensors, payloads, compute, networking, and actuators
- Develop software interfaces to devices using CAN-bus, NMEA 2000, J1939, MAVLink, etc.
- Develop algorithms for simultaneous localization & mapping (SLAM) and multi-target tracking
- Build tools for system diagnostics, logging, monitoring, replay, and post-mission analysis
- Debug complex software and system integration issues in both lab and field environments
- Deploy to the field to support field testing and iterative product development
- Collaborate with a larger team to design a unified hardware and software architecture
Required Qualifications- 3-5+ years of professional software development or robotics engineering experience
- Bachelor's degree in Computer Science, Electrical Engineering, Mechanical Engineering, or similar software or engineering background.
- Programming experience in C++, Python, Rust, or similar systems-oriented languages
- Strong familiarity with Linux-based systems and command-line tools
- Experience integrating hardware, sensors, and embedded devices into production systems
- Experience with vehicle and embedded communications protocols such as CAN, NMEA 2000, J1939, MAVLink, serial, or Ethernet
- Familiarity with robotics frameworks such as ROS, ROS 2, MOOS-IvP, ArduPilot, or similar
- Comfortable working across software, electrical, mechanical, and operational disciplines
- Experience using Git and modern software development workflows
Preferred Qualifications- Experience with maritime robotics or autonomous vehicle systems
- Experience deploying robotic systems in field environments
- Experience with embedded Linux, RTOS-based systems, or firmware development
- Experience integrating navigation, perception, or mission sensors
- Experience with simulation, automated testing, or hardware-in-the-loop testing
- Familiarity with Docker, CI/CD, and deployment workflows
- Ability to read electrical schematics and troubleshoot hardware systems
- Basic CAD or mechanical design experience
- Comfortable supporting field operations and testing on a boat; able and willing to travel