Unknown Company

Software Engineer Jobs

huntsville, al • Posted 1 weeks ago
Onsite Full Time General
Software Engineer

Position Overview
This role supports a large-scale, mission-critical defense system as part of a distributed systems and systems architecture engineering team. The Software Engineer will contribute to the design, development, testing, and sustainment of enterprise-grade Java applications supporting complex command-and-control and integrated system environments.
Working under general direction, the engineer applies software engineering practices across multiple system components and interfaces, supporting analysis, development, integration, troubleshooting, and user support. The role spans most phases of the software development lifecycle and requires collaboration across engineering and systems teams to resolve issues, improve performance, and maintain operational readiness.

Core Responsibilities

Design, develop, modify, and maintain Java-based software applications in a large-scale system environment
Perform analysis, debugging, and resolution of complex software issues across integrated components
Support design, implementation, testing, integration, and documentation of software solutions
Develop software from technical specifications, including enhancements and defect fixes
Participate in unit testing, integration testing, and acceptance testing activities
Support operational integration and user support activities as required
Collaborate with systems, integration, and other engineering teams to resolve issues and improve system efficiency
Apply established standards, coding practices, and configuration management processes
Maintain awareness of system updates, tools, and best practices to ensure software currency

Desired Experience

Experience with automated unit testing and acceptance testing frameworks
Familiarity with large-scale defense, command-and-control, or battle management system concepts
Hands-on experience with modern software development and configuration management tools, including:

Eclipse, Maven, Gradle, Nexus
JUnit
Git, GitLab
Jenkins, SonarQube
JIRA, Confluence

Experience working in Agile development environments
Experience developing enterprise applications on Linux platforms (Windows experience is a plus)
Background supporting command-and-control or distributed system applications
Experience with DevSecOps practices and/or build and release management

Required Skills

Understanding of full lifecycle software engineering practices for large, complex systems
Hands-on experience developing software using Java
Knowledge of unit testing strategies, automated builds, and CI/CD pipelines
Experience developing and supporting software on Linux platforms
Familiarity with coding standards, automated testing, build automation, and configuration management

Education & Experience

Typically requires 3+ years of relevant software engineering experience
Post-secondary degree or technical training in a related discipline is preferred
Back to Job Search