Senior Embedded Software Engineer
Location:Â USA - Melbourne
Interview Process:Â Phone/Teams interview with CTP, followed by client-level and onsite interview.
Position Overview
We are seeking a highly experienced Senior Embedded Software Engineer to design and deliver real-time software for autonomous systems operating in constrained, mission-critical environments.
This role requires a strong combination of hands-on C++ development, real-time embedded systems expertise, software architecture ownership, and exposure to autonomy, navigation, and AI-enabled systems. The ideal candidate should be comfortable working as both a deep individual contributor and a system-level thinker capable of shaping architecture and guiding development.
Key Responsibilities
- Design, develop, and maintain real-time embedded software using C++.
- Architect modular, scalable software systems for autonomous platforms.
- Develop navigation, guidance, control, and autonomy-related components.
- Integrate AI/ML-driven capabilities into embedded or edge environments.
- Work across hardware interfaces, middleware, RTOS, messaging frameworks, and application-level autonomy logic.
- Collaborate with systems, hardware, and test teams to deliver end-to-end functionality.
- Drive software architecture decisions around interfaces, data flow, timing, and resource constraints.
- Support debugging, performance tuning, and real-time system optimization.
- Contribute to Agile execution and CI/CD improvements for embedded software.
Required Skills
- 8+ years of embedded software development experience.
- 8+ years of strong C++ development experience, preferably modern C++.
- 8+ years of experience with real-time operating systems such as VxWorks, RTEMS, or embedded Linux.
- Strong software architecture and system design experience.
- Strong understanding of multithreading, synchronization, concurrency, and memory management.
- Experience with deterministic timing and real-time constraints.
- Experience with embedded debugging tools such as JTAG, trace, and low-level diagnostics.
- Experience integrating software with custom hardware or SoCs.
Preferred Skills
- Experience with autonomous navigation systems in marine, aerospace, robotics, or ground systems.
- Familiarity with ROS or NASA Core Flight System.
- Exposure to AI/ML concepts such as edge inference, sensor fusion, perception, or decision-making.
- Experience with GNC algorithms.
- Knowledge of communication protocols such as UDP/TCP, CAN, serial, DDS, etc.
- Experience in safety-critical or high-reliability systems such as aerospace, defense, or maritime.
Nice-to-Have Experience
- Experience with unmanned systems such as USV, UAV, or UGV.
- Space or satellite systems experience.
- Defense or C5ISR environment experience.
- Real-time autonomy at the edge.
- Experience deploying AI/ML models to embedded, edge, or GPU-accelerated systems.
- Experience with Kalman filters, probabilistic estimation, occupancy grids, route planning, and mission planning.
- Experience with synthetic data, digital twins, or simulation environments such as CARLA, Gazebo, AirSim, or similar.