D425 Embedded Software Engineer - Experienced

General Dynamics Electric Boat•Groton, CT
•Hybrid

About The Position

Department 425, Electrical Systems Embedded Software Engineering, applies software and computer engineering skills to specify, design, develop, integrate, and test software, and to manage subcontracted software development for US Navy nuclear submarines. The engineer collaborates with systems, hardware, and test engineers to develop, test, and maintain software for a variety of submarine platforms. This position supports the power conversion module system and reactor, steam, and electric plant systems. The role involves analyzing system-level requirements; developing software and interface requirements; designing software components and integrating hardware and software; developing unit tests; and supporting verification and validation testing against performance and operational requirements. The engineer also troubleshoots and enhances existing software to fix defects, address new or changing hardware and requirements, or improve features and performance; creates and maintains formal requirements and design documentation; and supports system prototypes for research and development projects. Electric Boat expects its engineers to take ownership of their assigned work and its quality, cost, and schedule; uphold standards and raise concerns when work is not conducted appropriately; build the knowledge required for the role while recognizing when to seek expert input; contribute to team success; maintain organized records; identify improvements; communicate effectively with teams, management, and stakeholders; and assess project risks and develop mitigation plans. Flexible work arrangements may allow some remote work, but remote work is limited because of the environment required for most software development. The extent of remote work is available for discussion.

Requirements

  • Bachelor of Science degree or higher in Computer Science, Electrical Engineering, or Computer Engineering.
  • 5–14 years of experience.
  • Experience with a C++ toolset/framework.
  • Ability to follow and enforce processes and procedures.
  • Ability to work independently as a self-starter.
  • Strong attention to detail.
  • Strong Microsoft Word, Excel, and PowerPoint skills.
  • Strong written and verbal communication skills.
  • Strong organizational skills.

Nice To Haves

  • Master’s degree in Computer or Electrical Engineering, Computer Science, or an equivalent technical degree.
  • Experience with software unit-testing tools and methodologies, such as JUnit, XUnit, or Google Test.
  • Familiarity with power electronics and related concepts.
  • Knowledge of software lifecycle methodologies, including Waterfall and Agile.
  • Knowledge of software analysis and design, such as UML, diagrams, and data flow.
  • Familiarity with source control tools such as Git, SVN, GitLab, CVS, or MS Teams.
  • Experience in requirements analysis and hardware/software design, software coding and unit testing, hardware/software integration, and software testing.
  • Experience with Linux real-time operating systems, LabVIEW, relational databases, and object-oriented databases.
  • Familiarity with requirements management software such as IBM DOORS.
  • Background in control theory.
  • Experience in embedded software development, safety-critical software development, control system development, and/or software safety analysis.
  • Ability to obtain and maintain a US DoD Security Clearance.
  • US Navy, DoD contractor, or similar experience with military customers.

Responsibilities

  • Analyze system-level requirements.
  • Develop software and interface requirements.
  • Design software components that satisfy requirements and integrate hardware and software.
  • Develop unit tests.
  • Support verification and validation testing of performance and operational requirements.
  • Troubleshoot and enhance existing software to fix defects, support new or changing hardware or requirements, and improve features and performance.
  • Create and maintain formal requirements and design documentation.
  • Support development of system prototypes for research and development projects.
  • Take ownership of assigned work, including quality, cost, and schedule performance.
  • Follow applicable standards and speak up or stop work that is not being conducted in accordance with standards.
  • Maintain detailed, well-organized records and identify and implement improvements.
  • Communicate technical and programmatic information to the team, management, and stakeholders.
  • Continually assess project risks and develop mitigation plans.
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service