Software Engineer

Ulysses

Ulysses

Software Engineering

San Francisco, CA, USA

Posted on May 7, 2026

About us

Ulysses is a technology company on a mission to steward the ocean for an abundant future. Our oceans are in trouble, we've neglected them and we allow bad actors to misuse them. Ulysses will manage them effectively, persistently, and cheaply. We're developing autonomous underwater drones, robotics, and AI systems to tackle critical challenges in ocean conservation and coastal security. Our platform combines low-cost drones, advanced AI, high persistence, and robotics at a scale that matters to forever transform how we monitor and protect our oceans.

Our robot, Mako, operates across defense, ocean science, and commercial survey missions. We work with customers and partners including the US Navy, the Australian government, the Great Barrier Reef Foundation, The Nature Conservancy, the Virginia Institute of Marine Science, Mote Marine Laboratory, and the Florida Department of Environmental Protection.

We recently announced $46M in funding, including a $38M Series A led by Andreessen Horowitz (a16z), with participation from Booz Allen Ventures and Harpoon Ventures, alongside existing investors Pebblebed, Lowercarbon Capital, Superorganism, ReGen Ventures, and Genius Ventures.

About the Role

As a Software Engineer at Ulysses, you will own core aspects of the software platform that powers our fleet of autonomous underwater robots - the systems that make them reliable, observable, and supportable at scale.

You'll work across the services that run on every Mako, the infrastructure that connects them to shore, and the tooling our operators and customers use to command and monitor them. You'll partner with our robotics and perception engineers to harden what exists and design what's missing.

Some of the technologies you’ll work with: Python (with Pydantic), NATS, WebSockets, Docker, NiceGUI, GStreamer, MCAP, running on Linux.

Key Responsibilities

Deployment

  • 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.

Fleet & Remote Operations

  • 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.

Simulation & Testing Infrastructure

  • 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.

Operator & Customer Tooling

  • 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.

Field Testing

  • Deploy and validate software in real-world subsea conditions; travel for field tests in locations such as Australia, the EU, and the USA.

Requirements

  • 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.

Nice to Haves

  • 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.