Job Summary:
Ulysses is a technology company on a mission to steward the ocean for an abundant future. As a Software Engineer, you will own core aspects of the software platform that powers autonomous underwater robots, focusing on deployment, fleet operations, simulation, and customer tooling.
Responsibilities:
• Build the systems that let us ship software to our fleet efficiently and reliably - fast iteration when we need it, safe rollouts and rollbacks when we don't.
• Make deploying a software change to a robot in the field as routine as deploying to a server.
• Build the systems that let us monitor and debug a growing fleet of robots from shore - telemetry, logging, alerting, remote access.
• Design high-bandwidth, low-latency communication between vehicles and ground control over intermittent subsea/maritime links.
• Own reliability and observability across our distributed services.
• Build and expand our simulation stack so we can validate software changes without putting a robot in the water.
• Extend our integration testing and replay tooling for robotics workloads - reducing how much we learn the hard way, in the field.
• Build (or partner to build) the dashboards, mission-planning interfaces, and ops tools that our team and our customers use every day.
• Turn painful manual workflows into software.
• Deploy and validate software in real-world subsea conditions; travel for field tests in locations such as Australia, the EU, and the USA.
Qualifications:
Required:
• You have 5+ years building production software, ideally something you can show us.
• You hold a Bachelor's degree in Computer Science, Software Engineering, or a related field, or equivalent experience.
• You've owned a software system end to end architecture, testing, deployment, on-call - and taken it from 'works on my machine' to 'works in front of a customer.'
• You've built, shipped, and maintained reliable software running in the field - on remote hardware, over unreliable links, in unpredictable environments. You know how to deploy, update, monitor, and debug systems you can't walk over and plug into.
• Strong Linux fluency - it's what our robots and infrastructure run on.
• Experience with distributed systems, message-passing architectures, containerized services, and networking fundamentals.
• You're comfortable collaborating with mechanical, electrical, firmware, and robotics engineers to integrate software with complex hardware.
• You thrive in fast-paced, hands-on environments where software meets hardware.
• Able to travel internationally and domestically for field tests.
Preferred:
• Experience with marine, aerospace, automotive, or other safety-/reliability-critical robotics.
• Experience shipping and supporting a physical product with external customers.
• Simulation infrastructure experience (Gazebo, Isaac Sim, in-house simulators).
• Fleet management or IoT-scale remote-ops experience.
• Embedded Linux / RTOS exposure, enough to debug across the software↔firmware boundary.
Company:
Ulysses is a technology company on a mission to steward the ocean for an abundant future. Founded in 2023, the company is headquartered in San Francisco, USA, with a team of 2-10 employees. The company is currently Early Stage.