Job Requirements
Huntsville, AL
Secret Polygraph not specified
Entry Level (less than 2 yrs experience)
Salary not specified
Join Premium to unlock estimated salaries
Job Description
Position Overview
We are recruiting a Junior to Mid-Level Software Engineer for a direct placement opportunity in Huntsville, Alabama. This position supports mission-critical software development and modernization efforts in a fast-paced, customer-facing engineering environment.
The role requires strong C++ development experience, a focus on software quality, and the ability to develop and implement robust unit testing methodologies for complex software systems. The engineer will support the sustainment, enhancement, and modernization of an existing software baseline for a complex defense system.
A key component of the role involves modernizing an existing bare-metal software application into a containerized environment. This includes developing, building, testing, troubleshooting, and maintaining container images using Docker or Podman, as well as authoring Dockerfiles or Podmanfiles.
Development efforts will primarily be performed in C++, with the potential to support Ada-based software components as required. The engineer will assess existing application architecture, dependencies, runtime assumptions, configuration requirements, and external interfaces to help enable a reliable transition to containerized deployment and execution.
The position also includes reviewing existing software and unit tests, identifying gaps in test coverage, developing new automated unit tests, and helping establish a repeatable testing methodology that integrates into daily build and regression test cycles.
Responsibilities
Develop, modify, and maintain software primarily in C++.
Support Ada software development efforts as required.
Support migration of an existing bare-metal software application into a containerized environment.
Analyze application dependencies, operating-system requirements, configuration needs, external interfaces, and runtime behavior to support containerization efforts.
Develop, maintain, and document Dockerfiles, Podmanfiles, container build scripts, and related configuration artifacts.
Build, run, test, debug, and troubleshoot container images and containerized applications using Docker or Podman.
Ensure containerized applications preserve required functionality, interfaces, performance characteristics, and operational behavior.
Review existing unit tests and evaluate software test coverage.
Design, develop, and implement new unit tests for existing software components.
Improve automated testing capabilities to support repeatable daily build and regression testing.
Integrate container build, test, and validation activities into repeatable software development, CI/CD, daily build, or regression-test workflows as applicable.
Analyze software defects, troubleshoot failures, and implement corrective actions.
Participate in software design reviews, code reviews, technical discussions, and modernization planning activities.
Collaborate with software, systems, QA, and DevOps engineers to improve software quality, maintainability, containerization practices, and deployment readiness.
Contribute to software documentation, container build documentation, testing standards, and engineering best practices.
Support continuous improvement initiatives focused on software reliability, automation, modernization, and long-term sustainment.
Required Qualifications
U.S. Citizenship required.
Ability to obtain and maintain a Secret security clearance.
Bachelor’s degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, or a related technical discipline.
Strong experience developing software in C++.
Demonstrated proficiency with Docker or Podman for building, running, testing, and troubleshooting containerized applications.
Experience authoring and maintaining Dockerfiles, Podmanfiles, or equivalent container build definitions.
Experience packaging application dependencies, configuration, and runtime requirements into container images.
Understanding of container concepts, including images, containers, layers, volumes, environment variables, networking, image registries, and container lifecycle management.
Experience troubleshooting software defects and supporting software integration activities.
Understanding of software development lifecycle processes, software quality practices, and configuration management.
Experience working within collaborative software development teams using peer reviews and version control.
Ability to work independently while supporting a customer-facing engineering environment.
Preferred Qualifications
Experience developing software in Ada.
Experience supporting legacy software modernization efforts.
Experience migrating bare-metal, monolithic, legacy, embedded, or traditionally deployed applications into containerized environments.
Experience with automated testing frameworks and regression testing.
Experience integrating automated testing and container image build/validation activities into CI/CD or daily build environments.
Experience supporting complex real-time, embedded, or defense software systems.
Familiarity with Linux-based development and deployment environments.
Familiarity with container-image security practices, vulnerability scanning, image hardening, software supply-chain practices, or private container registries.
Familiarity with Kubernetes, OpenShift, or other container orchestration platforms.
Familiarity with Agile software development methodologies.
Experience with static code analysis, code coverage tools, or software quality metrics.
Experience developing unit tests for complex software systems.
Familiarity with automated testing, regression testing, build/test workflows, and containerized development environments.
About the Opportunity
This direct placement opportunity is suited for a software engineer interested in combining C++ development with software modernization, automated testing, and containerization. The role provides hands-on experience modernizing complex software systems while improving their reliability, portability, maintainability, and long-term sustainment.
The engineer will work closely with software engineers, systems engineers, quality assurance personnel, DevOps engineers, and customer representatives while contributing to modernization efforts involving C++, Docker or Podman, automated testing, CI/CD workflows, and complex defense software systems.
We are recruiting a Junior to Mid-Level Software Engineer for a direct placement opportunity in Huntsville, Alabama. This position supports mission-critical software development and modernization efforts in a fast-paced, customer-facing engineering environment.
The role requires strong C++ development experience, a focus on software quality, and the ability to develop and implement robust unit testing methodologies for complex software systems. The engineer will support the sustainment, enhancement, and modernization of an existing software baseline for a complex defense system.
A key component of the role involves modernizing an existing bare-metal software application into a containerized environment. This includes developing, building, testing, troubleshooting, and maintaining container images using Docker or Podman, as well as authoring Dockerfiles or Podmanfiles.
Development efforts will primarily be performed in C++, with the potential to support Ada-based software components as required. The engineer will assess existing application architecture, dependencies, runtime assumptions, configuration requirements, and external interfaces to help enable a reliable transition to containerized deployment and execution.
The position also includes reviewing existing software and unit tests, identifying gaps in test coverage, developing new automated unit tests, and helping establish a repeatable testing methodology that integrates into daily build and regression test cycles.
Responsibilities
Develop, modify, and maintain software primarily in C++.
Support Ada software development efforts as required.
Support migration of an existing bare-metal software application into a containerized environment.
Analyze application dependencies, operating-system requirements, configuration needs, external interfaces, and runtime behavior to support containerization efforts.
Develop, maintain, and document Dockerfiles, Podmanfiles, container build scripts, and related configuration artifacts.
Build, run, test, debug, and troubleshoot container images and containerized applications using Docker or Podman.
Ensure containerized applications preserve required functionality, interfaces, performance characteristics, and operational behavior.
Review existing unit tests and evaluate software test coverage.
Design, develop, and implement new unit tests for existing software components.
Improve automated testing capabilities to support repeatable daily build and regression testing.
Integrate container build, test, and validation activities into repeatable software development, CI/CD, daily build, or regression-test workflows as applicable.
Analyze software defects, troubleshoot failures, and implement corrective actions.
Participate in software design reviews, code reviews, technical discussions, and modernization planning activities.
Collaborate with software, systems, QA, and DevOps engineers to improve software quality, maintainability, containerization practices, and deployment readiness.
Contribute to software documentation, container build documentation, testing standards, and engineering best practices.
Support continuous improvement initiatives focused on software reliability, automation, modernization, and long-term sustainment.
Required Qualifications
U.S. Citizenship required.
Ability to obtain and maintain a Secret security clearance.
Bachelor’s degree in Computer Science, Computer Engineering, Software Engineering, Electrical Engineering, or a related technical discipline.
Strong experience developing software in C++.
Demonstrated proficiency with Docker or Podman for building, running, testing, and troubleshooting containerized applications.
Experience authoring and maintaining Dockerfiles, Podmanfiles, or equivalent container build definitions.
Experience packaging application dependencies, configuration, and runtime requirements into container images.
Understanding of container concepts, including images, containers, layers, volumes, environment variables, networking, image registries, and container lifecycle management.
Experience troubleshooting software defects and supporting software integration activities.
Understanding of software development lifecycle processes, software quality practices, and configuration management.
Experience working within collaborative software development teams using peer reviews and version control.
Ability to work independently while supporting a customer-facing engineering environment.
Preferred Qualifications
Experience developing software in Ada.
Experience supporting legacy software modernization efforts.
Experience migrating bare-metal, monolithic, legacy, embedded, or traditionally deployed applications into containerized environments.
Experience with automated testing frameworks and regression testing.
Experience integrating automated testing and container image build/validation activities into CI/CD or daily build environments.
Experience supporting complex real-time, embedded, or defense software systems.
Familiarity with Linux-based development and deployment environments.
Familiarity with container-image security practices, vulnerability scanning, image hardening, software supply-chain practices, or private container registries.
Familiarity with Kubernetes, OpenShift, or other container orchestration platforms.
Familiarity with Agile software development methodologies.
Experience with static code analysis, code coverage tools, or software quality metrics.
Experience developing unit tests for complex software systems.
Familiarity with automated testing, regression testing, build/test workflows, and containerized development environments.
About the Opportunity
This direct placement opportunity is suited for a software engineer interested in combining C++ development with software modernization, automated testing, and containerization. The role provides hands-on experience modernizing complex software systems while improving their reliability, portability, maintainability, and long-term sustainment.
The engineer will work closely with software engineers, systems engineers, quality assurance personnel, DevOps engineers, and customer representatives while contributing to modernization efforts involving C++, Docker or Podman, automated testing, CI/CD workflows, and complex defense software systems.
group id: 91172415