About The Position

Build software for UUVs that navigate in the dark, think independently, and must complete the mission. Failure is not an option. Leidos is looking for an Autonomous Systems Software Engineer to help build the brains behind next-generation uncrewed underwater vehicles and maritime autonomous systems. This is not a report-writing role. This is hands-on engineering for real platforms operating in unforgiving environments in support of critical national missions. You’ll design, write, and deploy production software that directly controls autonomous behavior, vehicle health, and mission execution. Your work will run on real hardware, in real water, on real missions. If you care more about results than rituals, shipping than slide decks, and owning outcomes over checking boxes, you’ll fit right in. This team values progress with discipline, fast iteration with bounded risk, and engineers who take responsibility end-to-end. We move quickly, learn continuously, and expect our software to work the first time it matters. Why This Role Is Different You’ll work on fielded systems, not demos. Your software will control vehicles, not dashboards. You’ll have real ownership, not just tickets. You’ll be expected to move fast, think clearly, and deliver. You’ll help define how autonomy software gets built, not just follow a script. If you want to work where engineering decisions matter, where progress is valued, and where the mission is real, this is the role.

Requirements

  • Bachelor’s degree in Computer Science, Software Engineering, or related field with 8-12 years of experience, or a Master’s degree with 6-10 years of experience.
  • Ability to obtain and maintain a U.S. Secret clearance .
  • Demonstrated experience developing modern C++ software on Linux, with strong fundamentals in performance, memory management, and code quality.
  • Ability to design clean, maintainable systems and make sound tradeoffs under real constraints.
  • Familiarity with MBSE concepts and tools (e.g., Cameo, MagicDraw) and how software fits into larger system architectures.
  • Experience developing and deploying software in virtualized or containerized environments (VMware, Docker).
  • Experience working in Agile or iterative development environments with tools like Jira, Confluence, Bitbucket, or equivalents.
  • Ability to explain complex technical ideas to engineers, systems teams, and stakeholders without hiding behind jargon.
  • Ownership, accountability, and respect for teammates and mission outcomes.

Nice To Haves

  • Experience across multiple languages (C#, Java, Python, Rust, etc.) and comfort adapting to new stacks quickly.
  • Exposure to embedded systems, resource-constrained environments, or software that runs without a full OS.
  • Hands-on experience building autonomy, decision-making, or control software for robotic or vehicle systems.
  • Proven ability to build and maintain tests that catch real failures, not just satisfy process requirements.
  • Experience diagnosing, refactoring, and improving large or aging codebases without breaking production systems.
  • Background in autonomous, remotely operated, or mission-critical platforms, especially maritime or undersea systems.
  • Experience with ROS, Protocol Buffers, SCons, VS Code, and cross-platform build systems is a strong plus.

Responsibilities

  • Build mission-critical autonomy software using modern C++, Java, and Python on Linux-based systems that operate in constrained, contested environments.
  • Translate high-level system intent into executable software , breaking down complex autonomy and vehicle requirements into clear, testable implementations.
  • Architect and evolve scalable autonomy frameworks , emphasizing modularity, performance, and long-term adaptability across multiple vehicle platforms.
  • Ship real features by developing, integrating, and testing new capabilities in existing codebases, with accurate estimates and ownership from design through deployment.
  • Collaborate like an engineer, not a spectator , actively contributing to technical debates, design reviews, and trade studies that resolve real constraints.
  • Mentor and raise the bar , supporting junior engineers and strengthening the team’s overall technical rigor and execution velocity.
  • Own quality without paralysis , writing unit and integration tests that matter, analyzing failures, and fixing root causes instead of papering over symptoms.
  • Work across disciplines with systems, hardware, and test engineers to ensure software behaves correctly as part of a larger, real-world system.
  • Continuously improve how we build , refining tools, workflows, and processes in an Agile, iterative environment that values pragmatism over dogma.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service