Sonatech is seeking a Senior Software Engineer to take technical ownership of embedded software development for advanced undersea acoustics systems, ensuring real-time responsiveness, secure operation, and seamless hardware integration for U.S. Navy missions.
Requirements
- Strong proficiency in C, C++ (preferably C++11 or later) and Python.
- Deep understanding of embedded Linux, bare-metal firmware, and real-time systems.
- Demonstrated experience taking ownership of software architecture and execution in a cross-functional engineering environment.
- Experience collaborating across disciplines to integrate embedded systems into larger networked or software-defined systems.
- Experience using Python for scripting, test automation, or reviewing DSP-related models; ability to support translation into C++.
- Familiarity with SBOM standards (e.g., SPDX, CycloneDX) and experience with associated tooling.
- Hands-on experience with DevOps practices and CI/CD tools (e.g., GitLab CI, Kubernetes).
Responsibilities
- Lead the technical execution of software projects from architecture through deployment.
- Define and evolve system-level software architecture, interface design, and implementation strategy.
- Provide technical leadership and influence across projects and subsystems.
- Collaborate closely with hardware, systems, FPGA, and test teams to ensure effective system-level integration.
- Design and implement secure software interfaces for integration with external systems and third-party platforms.
- Contribute to containerized deployments and overall system design using Kubernetes in secure environments.
- Apply cybersecurity principles, NetBoot approach, SBOM standards, performance monitoring and fault location techniques.
Other
- 10+ years of professional experience in embedded software development.
- Excellent communication skills and ability to work with systems, hardware, FPGA, and software teams.
- U.S. Citizenship and eligibility for DoD Secret security clearance.
- Onsite attendance required (remote work not available).
- Bachelor's or Master's degree in Computer Science, Software Engineering, or related field.