Junior Software Engineer (Robot Operating Systems)
On-site · Richmond, California, United States
Job Summary
Junior Software Engineer responsible for developing software for control, navigation, and communication of autonomous maritime systems across embedded, real-time, and application layers; collaborate with electrical and mechanical teams to integrate software with hardware; process diverse sensor inputs (cameras, radar, sonar, GPS, satellite, cellular) to support autonomy; contribute to obstacle detection, vehicle coordination, and multi-domain operations; develop simulation tools for testing and validation; troubleshoot across software, networking, and hardware; maintain architecture and APIs documentation; support field testing and deployment while meeting U.S. citizenship and degree requirements.
Required Qualifications
- U.S. Citizenship
- Bachelor’s degree in Computer Science, Engineering, or a related field
- Minimum of 2 years of software engineering experience
- Strong proficiency in C/C++, especially in embedded or real-time systems
- Experience with build tools such as CMake, Make, GCC/Clang, and version control with Git
- Solid understanding of software architecture, testing, and debugging
- Experience working in Linux/UNIX environments
- Knowledge of networking protocols including TCP/IP, UDP, CAN, serial communications, and wireless systems
Apply with one swipe on Sorce. We auto-fill applications and apply on your behalf — no cover letters, no 40-minute forms.
Hiring someone like this?
Get your role in front of qualified candidates on Sorce.