SONIA Autonomous Underwater Vehicle

At SONIA, a competitive autonomous underwater vehicle team, I led the software team in a complete architectural overhaul of our submarine's control system. SONIA has a 17-year history in the international ROBOSUB competition, where autonomous submarines navigate complex underwater courses and interact with various objects.

SONIA Submarine

Technical Challenge

The team was operating a stable but aging Java-based control system that had become difficult to extend and maintain. With a small team of 12 students, we needed an architecture that would:

Architecture Design

I designed a three-layer ROS-based architecture that separated concerns while maintaining clear data flow:

SONIA Architecture Diagram

Implementation Strategy

To manage risk while delivering value, I developed an incremental migration approach. We began by rewriting individual sensor drivers, validating each against the legacy system.

The semantic mapping system was developed as a parallel process, running alongside our existing navigation code. This approach proved invaluable – we could demonstrate the new system's capabilities without risking competition performance.

Leadership Impact

Leading this transformation required more than technical expertise. I managed a team of five software developers while maintaining my full-time student status, coordinating closely with our mechanical and electrical teams for system integration. We established new coding standards and documentation practices, creating a foundation for long-term maintainability.

The mentoring aspect proved particularly rewarding. I worked with new team members to build their understanding of ROS development and autonomous systems, creating documentation and training materials that would serve future teams.

Results

The new architecture transformed our submarine's autonomous capabilities with measurable improvements across all systems.

Our semantic mapping system now fused multi-sensor data into a coherent world model, tracking objects in 3D space even when temporarily out of view. Our custom Extended Kalman filter, combining DVL, IMU, and depth sensor data, achieved better positional accuracy – critical for precise navigation during competition runs.

Real-time parameter tuning enabled quick adaptation to varying pool conditions. Development velocity increased dramatically: mission scripts now took days rather than weeks to develop, and system issues could be diagnosed through visualization tools rather than requiring multiple pool sessions.

The platform became the foundation for subsequent generations of SONIA's software stack.