DeveloperJobs.io
← Back to all jobs

Job Description

Oceaneering builds software that powers underwater systems for the U.S. Navy and other DoD customers. In this onsite role in Chesapeake, VA, you will work across Linux-based distributed and embedded environments, contribute through the full SDLC, and collaborate with engineering, program, and customer stakeholders. Oceaneering offers a comprehensive health and wellness package, mental health support, retirement savings, and benefits designed for stability and family life, including paid maternity and parental leave, paid time off, and tuition reimbursement.

Responsibilities

  • Use working knowledge of the software lifecycle to develop and begin leading software efforts.
  • Implement software architecture design and maintenance decisions.
  • Interface with other engineering leads, program managers, and external customers.
  • Serve as a key contributor to the creation, maintenance, and acceptance of project CDRL deliverables, including requirements management, software documentation, unit testing, software safety testing, and software qualification testing.
  • Contribute to trade studies for hardware including navigation units, board stacks, and power monitors.
  • Support software testing in factory, offsite, and offshore environments.
  • Analyze user requirements, concept of operations documents, and high-level system architectures to develop system requirements specifications.
  • Help guide system development and implementation planning by preparing concept of operations, interfaces control documents, hazard analysis, and test plans and procedures.
  • Apply strong technical judgment and attention to detail, including maintaining a system-level “big picture” view.
  • Devise innovative solutions when conventional approaches are insufficient.
  • Prepare reports and present results to management and clients.
  • Manage demanding scheduling throughout the year and anticipate occasional work outside normal hours.
  • Mentor junior team members.

Requirements

  • BS in Computer Science, Computer Engineering, Mathematics, Electrical Engineering, or a related STEM field (or commensurate experience).
  • 5+ years of practical software engineering experience.
  • Foundational understanding of Linux system programming.
  • Proficiency in at least one core systems language: C, C++, or Rust.
  • Understanding of memory and resource management, multithreading/concurrency, and inter-process communication (IPC).
  • Understanding of networking fundamentals and structured data handling.
  • Ability to participate across all SDLC phases, including requirements implementation, design, coding, unit and integration testing, debugging, peer reviews, configuration management, and documentation.
  • Ability to collaborate with software, systems, hardware, test, and cybersecurity teams.
  • Strong written and verbal communication skills, including technical documentation and presentation.
  • Ability to obtain and maintain a U.S. DoD Security Clearance.
  • Must be a U.S. citizen.

Technologies

Linux, Docker, Podman, Kubernetes, DDS-based publish/subscribe messaging, C, C++, Rust, GCC/Clang, Cargo, CMake, GDB, sanitizers, JSON, XML, CI/CD pipelines, UDP/multicast, TCP, serial, SPI, I2C, CAN, Jira, Git, Python, SBC-based control systems, oscilloscopes, multimeters, microservices architectures, containerization, build systems, command-line development workflows.

Benefits

  • Health and Wellness
  • Mental Health
  • Retirement Savings
  • Life and Disability
  • Paid Maternity and Parental Leave
  • Paid Time Off
  • Tuition Reimbursement
  • Employee Assistance Program

Preferred Qualifications

  • Experience developing underwater vehicle or robotic software frameworks and extending framework capabilities.
  • Experience working on DoD software programs.
  • Experience with Linux or bare-metal firmware development.
  • Experience developing system services, application components, hardware/software interfaces, or data-processing functions for Linux-based distributed or embedded systems.
  • Familiarity with microservices architectures, containerization, and orchestration (Docker/Podman, Kubernetes).
  • Familiarity with distributed systems and DDS-based publish/subscribe messaging.
  • Experience with Rust or Python for systems scripting, tooling, or automation.
  • Familiarity with GCC/Clang, Cargo, CMake, build systems, and command-line development workflows.
  • Experience with debugging tools such as GDB and sanitizers.
  • Experience with microprocessors and SBC-based control systems interfacing with sensors and hardware.
  • Ability to implement and debug communication protocols including UDP/multicast, TCP, serial, SPI, I2C, and CAN.
  • Experience with CI/CD pipelines and automated testing.
  • Ability to set up basic bench-testing environments (power, communications links, analog devices).
  • Proficiency with lab measurement tools such as oscilloscopes and multimeters.
  • Experience with Jira, Git, and modern development workflows.
  • Ability to work collaboratively with software, systems, hardware, test, and cybersecurity engineering teams.
  • Experience with UI/UX design.

Salary range: USD 118,600 - 177,800 per year. Additional duties may be assigned.

Similar Jobs