Staff Software Engineer

Oceaneering
Hanover, Maryland
Full-time

Position Summary

The Staff Software Engineer position serves as a vital member of the Oceaneering Technologies (OTECH) group. Staff Engineers are expected to function as lead or key contributors on software and engineering efforts and proposals.

This role is vital to producing software solutions that meet electrical, mechanical and CONOPs needs.

OTECH produces and maintains unique underwater systems typically for US Navy and other US Government Department of Defense customers.

Our projects are all one-of-a-kind. Projects range from quick burn to lifecycle management of fielded systems. This position would be expected to handle the entire range of need, and ideally have a solid depth of understanding of underwater technologies, including electronics, embedded computers, electrical / power, and mechanical systems.

Duties & Responsibilities

  • Apply working knowledge of the software lifecycle to develop and lead software efforts.
  • Make and implement decisions for designing and maintaining software architecture.
  • Lead software development teams or engineering efforts.
  • Actively interface with other engineering leads, program managers and external customers.
  • Ensure project CDRL’s are delivered and accepted by the customer. This includes requirements management, software documentation, unit testing, software safety testing, and software qualification testing.
  • Lead trade studies for hardware such as navigation units, board stacks, and power monitors.
  • Support software testing on the factory floor, offsite, and offshore.
  • Perform analysis of user requirements, concept of operations documents, and high-level system architectures to develop system requirements specifications.
  • Guide system development and implementation planning through preparation of concept of operations, interfaces control documents, hazard analysis, and test plans and procedures.
  • Display excellent technical judgment, attention to detail, and ability to look at the big picture in system design.
  • Demonstrate ability to devise innovative solutions to problems when conventional solutions are insufficient.
  • Review progress and evaluate results of work accomplished by self and others.
  • Prepare reports and presents results to management and client.
  • Schedules can be demanding throughout the year and occasional work outside normal working hours should be anticipated.

Staff Engineers are also expected to take a leadership role within the software group. This includes helping craft and enforce policies and procedures for software development, and mentorship of junior team members.

Qualifications

ESSENTIAL QUALIFICATIONS

  • BS Degree in Computer Science, Computer Engineering, Mathematics, Electrical Engineering, or related technical field. Commensurate experience will be considered.
  • 10+ years of practical experience in software engineering.
  • Experience with the following programming languages : C, C++, C# and / or Java.
  • Solid written and oral communications skills, including ability to effectively document, convey, and present engineering concepts and products to team members and customers.
  • Ability to obtain and maintain a United States Government Department of Defense Security Clearance.
  • Must be a US citizen.

PREFERRED QUALIFICATIONS

  • Experience developing in underwater vehicle or robotic software frameworks and expanding framework capabilities.
  • Experience with Linux OS or bare metal firmware.
  • Experience with microprocessors and single-board computer (SBC) based control systems that interface to sensors and hardware (e.

g., cameras, navigation sensors, valve packs, other boards).

  • Ability to implement and debug communication protocols including : UDP and multicast, TCP, serial protocols, SPI, I2C, CAN, etc.
  • Experience with microservices based architectures utilizing containerization and orchestration.
  • Experience with PLC development, scripting languages and or Qt.
  • Experience with Jira and Git.
  • Experience with UI / UX design.
  • Ability to setup simple bench testing environments for communication links, board power, analog devices, etc.
  • Understanding of fiber optic communications.
  • Proficiency with oscilloscopes, multimeters, and OTDR.
  • Additional duties as assigned.
  • 2 days ago
Related jobs
Promoted
Proofpoint
Laurel, Maryland

The RoleAs a Staff Software Engineer on our threat intelligence team, you will be building massive-scale systems used by Fortune 100 customers which contain everything our company knows about the threat landscape. USDProofpoint has been honored with six Best Places to Work Awards in 2024 by workplac...

Promoted
Northrop Grumman
Baltimore, Maryland

NGMS is seeking Software Engineers with demonstrated ability to lead development of new technologies to support our innovative Transformational Computing team to help develop software in support of emerging supercomputing technologies. As a Staff Software Engineer at Northrop Grumman, you will have ...

Northrop Grumman
Annapolis Junction, Maryland

Conducts multidisciplinary research and collaborates with equipment designers and/or hardware engineers in the planning, design, development, and utilization of electronic data processing systems for product and commercial software. In rapidly changing global security environments, Northrop Grumman ...

Promoted
Northrop Grumman
Baltimore, Maryland

Job DescriptionNorthrop Grumman Mission Systems (NGMS) is seeking a Staff Embedded Software engineer with the desire to learn new technologies to join our innovative Software Technologies Organization to help develop, enhance and maintain software on cutting edge products and systems. Basic Qualific...

Lockheed Martin
Maryland

As a Software Engineer Staff, you will:. Design and code new software or modify existing software to add new features, integrate existing software into new or modified systems or operating environments. Analyze user requirements to derive software design and performance requirements. Debug existing ...

Northrop Grumman
Annapolis Junction, Maryland

The team is seeking a talented engineer who resolves software problem reports, utilizes software development and software design methodologies appropriate to the development and software design methodologies appropriate to the development environment. The successful candidate shall have experience w...

Lockheed Martin
Maryland

As a Software Engineer Staff, you will:. Design and code new software or modify existing software to add new features. Develop software solutions by analyzing system performance standards, confer with users or system engineers; analyze systems flow, data usage and work processes; and investigate pro...

Lockheed Martin
Hanover, Maryland

Primary responsibilities of the Software Engineer Sr Stf for are as follows:. Design and code new software or modify existing software to add new features. Analyze user requirements to derive software design and performance requirements. Debug existing software and correct defects. ...

Lockheed Martin
Maryland

As a Sr Software Engineer Staff you will:. Design and code new software or modify existing software to add new features. Oversee one or more software development teams and ensure the work is completed in accordance with the constraints of the software development process being used on any particular...

Northrop Grumman
Fort Meade, Maryland

Provides specific input to the software components of system design to include hardware/software trade­ offs, software reuse, use of Commercial Off-the-shelf (COTS)/Government Off-the-shelf (GOTS) in place of new development, and requirements analysis and synthesis from system level to individual so...