● Apply working knowledge of the software lifecycle to develop and lead software efforts.
● Implement decisions for designing and maintaining software architecture.
● Actively interface with the software, electrical and mechanical leads, customer, and program manager
● Key contributor to creation, maintenance and acceptance of project CDRL’s. This includes requirements management, software documentation, unit testing, software safety testing, and software qualification testing.
● Contribute to 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.
● Guides system development and implementation planning through preparation of concept of operations, interfaces control documents, hazard analysis, and test plans and procedures.
● Displays excellent technical judgment, attention to detail, and ability to look at the “big picture” in system design.
● Demonstrates ability to devise innovative solutions to problems when conventional solutions are insufficient.
● Prepares 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.
● Mentorship of junior team members.
● BS Degree in Computer Science, Computer Engineering, Mathematics, Electrical Engineering or related technical field. Commensurate experience will be considered.
● 5+ years of practical experience in software engineering.
● Experience with the following programming languages: C, C++, C#, or Java.
● Experience with embedded, microprocessors, single-board computer (SBC) based control systems.
● Ability to implement and debug communication protocols such as: UDP and multicast, TCP, serial protocols, SPI, I2C, CAN, etc.
● Experience with Python or other scripting languages.
● Experience with Linux OS.
● Proficiency with the Microsoft Office environment.
● Ability to obtain and maintain a United States Government Department of Defense Security Clearance (active clearances preferred, but not prerequisite).
● Must be a US citizen.
● Experience with bare metal firmware.
● Experience with mechanical actuation and valve packs.
● Experience in the field of ocean engineering.
● Experience with autonomous underwater vehicle software frameworks.
● Experience with Qt.
● 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.
● Solid written and oral communications skills, including ability to effectively document, convey, and present engineering concepts and products to team members and customers.
● Experience developing with .NET plugins and applications with both ArcGis Pro and ArcObjects SDKs.
● Experience with database programming, backends including PostGreSQL, SQL Server and Microsoft Access through .NET or scripts and tools.
● Holds a current Security+ certification.
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.jects