Senior Systems Test Sofware Engineer
Saronic Technologies
Austin, TX, USA · San Diego, CA, USA
Location
Austin, TX; San Diego, CA
Employment Type
Full time
Location Type
On-site
Department
Software
Saronic Technologies is a leader in revolutionizing autonomy at sea, dedicated to developing state-of-the-art solutions that enhance maritime operations through autonomous and intelligent platforms.
Job Overview:
We are seeking a Systems Software Test Engineer to own and drive the testing strategy for the software stack that runs on every Saronic vessel. You will join the Software team to take an already substantial collection of test capabilities, Hardware-In-The-Loop (HITL) station infrastructure, virtual machine integration tests, replay-based evaluation, and simulation and turn them into a single, principled, easy-to-extend verification platform. Just as importantly, you will introduce other testing approaches like property-based testing, fuzz testing of our protocol and message-bus surfaces, deterministic simulation and fault injection testing for safety-critical state machines.
You are a software engineer first, whose product is the confidence the rest of the team has when shipping code to a vessel in the open ocean. You will work closely with our autonomy, perception, systems, controls, networking, and infrastructure teams to design and develop full system validation frameworks that run as native Rust unit and property tests, as VM-based integration tests, on real HITL stations bridged into real hardware, and in simulation against captured fleet data. Your work will directly impact mission reliability by catching edge cases early and ensuring that what runs on a vessel has been adversarially tested long before it ever sees water.
Responsibilities:
Own and drive the test initiatives for Saronic's system software, including the HITL test catalog and station orchestrator, HITL-VM bridge framework, NixOS-based VM integration test suite.
Design and roll out a unified test strategy that combines our primary tools: Rust unit and property tests, VM-based integration tests, HITL-based tests, and replay/simulation based scenario tests into a single decision tree so that the right test type covers the right risk class at the right cost.
Build out property-based and deterministic simulation testing across the software stack. Expand coverage to the libraries where invariants matter most (planners, trackers, schedulers, state machines, codecs, IPC framing, certificate/identity stacks) and introduce a shared invariant-testing pattern that other engineers can adopt.
Stand up fuzz testing infrastructure from scratch. Identify high leverage surfaces, write the harnesses, get them running continuously, and triage or resolve findings.
Expand the HITL test catalog. Drive coverage into areas currently underserved, expanding VM based integration tests to exercise real hardware paths.
Treat HITL stations as a first class product. Partner to keep stations healthy, observable, and reproducible; harden the CI scheduler pipeline that owns reservations and execution across multiple physical stations; reduce flake; improve the test result dashboard and analytics that engineers rely on.
Inject faults, not just inputs. Build out chaos and fault injection capabilities, process kills, network partitions, time skew, CAN bus jamming, sensor dropouts that complement our existing test types and that property tests and HITL tests can both consume.
Build interfaces between our onboard test infrastructure and our cloud infrastructure test artifact storage, MCAP capture and replay, metrics collection and storage, fleet-data fetch, and the existing CI plumbing so that an engineer can author one test and run it locally, in CI, on a HITL station, or against historical fleet data with minimal friction.
Work hands-on with engineers across the company to catch real bugs. Pair with feature owners on test plans during design reviews, write the hard tests yourself, and travel to test sites to see your tests in action on real boats when needed.
Document everything. Maintain the test infrastructure architecture docs, runbooks so that other engineers can keep adding good tests without needing your hands on the keyboard.
Design, develop, and maintain software systems, using NixOS, for autonomous navigation, control, and communication of surface vessels.
Collaborate with hardware engineers to integrate software with vessel systems, ensuring seamless operation.
Implement algorithms for controls and sensor fusion.
Optimize network communications for low bandwidth/high latency environments.
Conduct software testing and validation to ensure reliability and performance in real-world maritime environments.
Participate in code reviews and maintain high coding standards, ensuring scalability and maintainability of software.
Troubleshoot and debug complex software issues, providing timely resolutions.
Document software designs, processes, and test results for compliance and knowledge sharing.
Stay updated on industry trends, emerging technologies, and best practices in autonomous systems.
Qualifications:
Senior: 5+ years of professional software engineering experience, with substantial time spent owning test infrastructure, V&V strategy, or reliability for a non-trivial production system (robotics, autonomous vehicles, distributed systems, embedded, networking, or similar).
Staff: 8+ years of equivalent experience, including architecture and cross-functional leadership of a verification or platform reliability function.
Strong programming skills in Rust and/or C++, plus comfort with Python for test orchestration, data analysis, and CI tooling.
Hands-on experience building and operating one or more of: hardware-in-the-loop test rigs, fuzz harnesses, property-based test suites, deterministic-simulation frameworks, or large-scale simulation/replay pipelines.
Track record of treating test infrastructure as a real codebase.
Strong systems intuition: you can read an unfamiliar daemon, find the invariants it actually depends on, and write tests that fail before the bug is fixed.
Excellent debugging and root-cause analysis skills, with a passion for both "firefighting" and "fire prevention".
Comfort working in a fast-paced startup environment where the test strategy needs to be designed and shipped, not just discussed.
Bonus / Nice-to-Haves:
Direct experience in deterministic simulation testing.
Experience with fuzz testing.
Experience with
proptest,quickcheck, or other property-based testing crates.Experience with NixOS tests, Nix flakes, and Cargo↔Nix integration.
Familiarity with robotics middleware and IPC patterns (ROS/ROS2, Zenoh, Redis pub/sub, MCAP).
Familiarity with embedded Linux, low-level serial protocols (RS-232, CAN, SPI, I²C), and networking fundamentals (TCP/IP, UDP, QUIC, VPNs/overlays, PTP/PPS).
Experience operating CI at scale (e.g., Buildkite, GitHub Actions).
Experience with sensor fusion, controls, path-planning, or perception evaluation.
Familiarity with maritime, aerospace, or other safety-critical operations; knowledge of DoD standards and regulations relating to software development is advantageous.
A bias toward writing the tooling that lets engineers find their own bugs, rather than being the gatekeeper.
Benefits:
Medical Insurance: Comprehensive health insurance plans covering a range of services
Dental and Vision Insurance: Coverage for routine dental check-ups, orthodontics, and vision care
Saronic pays 100% of the premium for employees and 80% for dependents
Time Off: Generous PTO and Holidays
Parental Leave: Paid maternity and paternity leave to support new parents
Competitive Salary: Industry-standard salaries with opportunities for performance-based bonuses
Retirement Plan: 401(k) plan
Stock Options: Equity options to give employees a stake in the company’s success
Life and Disability Insurance: Basic life insurance and short- and long-term disability coverage
-
Additional Perks: Free lunch benefit and unlimited free drinks and snacks in the office
Physical Demands
Prolonged periods of sitting at a desk and working on a computer.
Occasional standing and walking within the office.
Manual dexterity to operate a computer keyboard, mouse, and other office equipment.
Visual acuity to read screens, documents, and reports.
Occasional reaching, bending, or stooping to access file drawers, cabinets, or office supplies.
Lifting and carrying items up to 20 pounds occasionally (e.g., office supplies, packages).
If this role is based in the United States, it requires access to export-controlled information or items that require “U.S. Person” status. As defined by U.S. law, individuals who are any one of the following are considered to be a “U.S. Person”: (1) U.S. citizens, (2) legal permanent residents (a.k.a. green card holders), and (3) certain protected classes of asylees and refugees, as defined in 8 U.S.C. 1324b(a)(3).
Saronic does not discriminate on the basis of race, sex, color, religion, age, national origin, marital status, disability, veteran status, genetic information, sexual orientation, gender identity or any other reason prohibited by law in provision of employment opportunities and benefits.