Logo
Oceaneering

Staff Software Engineer

Oceaneering, Hanover, Maryland, United States, 21098


Company Profile

Oceaneering Technologies (OTECH) develops, manufactures, and operates customized marine systems, shipboard equipment, subsea vehicles, and engineered solutions for commercial and U.S. military vessels.Oceaneering Aerospace and Defense Technologies (AdTech) delivers solutions that enable humans to work safely and effectively in harsh environments - from underwater to the outer reaches of space. Our innovative solutions support the development and application of practical, cost-effective systems that meet our customers' challenges - from routine to extreme. Our experience and expertise across multiple industries uniquely positions us as a leader in the government, space, and maritime services markets. Our products and services meet the rigorous demands of the complex environments in which they operate, delivering results without compromising safety or reliability.Oceaneering is a global provider of engineered services and products, primarily to the offshore energy industry. We develop products and services for use throughout the lifecycle of an offshore oilfield, from drilling to decommissioning. We operate the world's premier fleet of work class ROVs. Additionally, we are a leader in offshore oilfield maintenance services, umbilicals, subsea hardware, and tooling. We also use applied technology expertise to serve the defense, entertainment, material handling, aerospace, science, and renewable energy industries.Position Summary

As a Staff Software Engineer, you will be responsible for performing diverse activities associated with the development and implementation of complex power and control systems for unique underwater robotic and electromechanical systems, helping solve our customers' toughest challenges - typically for US Navy and other US Government Department of Defense customers.This position is within OTech's Software, Simulations and Controls group. We architect and support unique solutions for Department of Defense underwater robotics systems. Our efforts range from prototypes that meet quick-burn government mission needs, to design and build of systems with rigorous lifecycle management. The vehicles we support range from large work class ROVs that leverage our commercial oil and gas products, to autonomous underwater vehicles (AUVs) utilizing Oceaneering's Freedom technology.This position is expected to regularly make independent decisions in difficult situations, as well as coaching others through them. They are targeted for leadership roles in terms of both their technical and mentoring capabilities. The ideal candidate will have a passion for interfacing software with controlled hardware systems while adhering to program requirements. They are expected to be an active participant in the design and fielding of complex but reliable maritime 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 small software development teams.* Actively interface with the electrical and mechanical leads, customer, and program manager.* 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, Simulations and Controls group.This may include:

* Crafting and enforcement of policies and procedures for software development.* Functional management of team members.* Utilizing SME capabilities to help other programs.Qualifications

ESSENTIAL QUALIFICATIONS* BS Degree in Computer Science, Computer Engineering, Mathematics, Electrical Engineering, Systems Engineering or related technical field. Commensurate experience will be considered.* 10+ years of practical experience in software engineering.* Experience with one or more of the following programming languages: C, C++, C#, Python, Qt or Java.* Experience with Linux OS and bare metal firmware.* Experience with microprocessors and single-board computer (SBC) based control systems.* Experience with Python or other scripting languages.* Ability to implement and debug communication protocols including: UDP and multicast, TCP, serial protocols, SPI, I2C, CAN, etc.* Experience participating in proposals.* Solid written and oral communications skills, including ability to effectively document, convey, and present engineering concepts and products to team members and customers.* Proficiency with the Microsoft 365 environment.* 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 software frameworks such as ROS or MOOS-IvP to expand framework capabilities.* Ability to setup simple bench testing environments for communication links, board power, analog devices, etc.* Understanding of underwater sensors and hardware such as FOG, DVL, INU, FLS, SAS, fiber optic multiplexers, cameras, batteries, propulsion systems or motor controllers.* Proficiency with oscilloscopes, multimeters, and OTDR.* Experience with containerization and orchestration.* Experience with Unity and Digital Twin concepts.* Experience with Jira and Git.* Experience with Navy platforms or working DoD programs.Additional Information

This position is Hybrid - Remote and will require commuting to a designated office. Hybrid work schedules are determined by the hiring manager based on business need.Equal Opportunity Employer

All qualified candidates will receive consideration for all positions without regard to race, color, age, religion, sex (including pregnancy), sexual orientation, gender identity, national origin, veteran status, disability, genetic information, or other non-merit factors