Software Engineer Apply
Position Summary:
The candidate will be responsible for software development in the Java language for one of the Regional Applications teams in Huntsville (Battle Management, System-Arch, or Track Server). Under minimal direction, provides specialized expertise within multiple systems, software disciplines, as well as general knowledge of related disciplines, applications implications, and customer areas. Responsible for performing in-depth analysis and technical support of systems software products, including complex problem resolution, design, development, testing, operational integration, and user support. Maintains currency, debugs, and configures related software products. Works from specifications to develop or modify operating systems applications. Assists with design, coding, benchmark testing, debugging, and documentation of programs. Interfaces with other system support groups to resolve problems, setting standards and improving overall efficiency of the operating system. Designs, codes, tests, and implements tools for operations automation. Works on most phases of software systems programming applications, and may require minor instruction and guidance in other phases. Leadership position on small software-focused teams may be required.
Responsibilities:
- Experience in the following areas desired:
- Command and control system application development
- Experience with Software Integration and formal testing
- Knowledge and experience implementing Cyber Security/RMF requirements
- Ability to present advanced concepts to non-software engineers, including senior program and military leaders
- Proven ability/experience to mentor and teach junior engineers
- Experience with performance modeling
- Experience with microservices
- Experience with DevSecOps and/or build management
- Designing and building Graphical User Interfaces
- Flexibility and willingness to take on unanticipated tasking
- The successful candidate will have good verbal and written communication skills, have the ability to work independently, and will possess the poise and flexibility required to work in a highly dynamic environment.
- Applicant should have good working knowledge of MS Office products.
Qualifications:
- Software engineering and software development with strong Java/J2EE experience.
- The candidate will have experience and knowledge of software practices such as coding standards, automated testing, automated build pipelines, and configuration management.
- Candidate must have excellent oral and written communication skills and an ability to work effectively in a rapid-paced, team environment.
Required Technical Skills:
- Experience developing enterprise applications on Linux (Windows experience also desired)
- Extensive Experience with Java foundation classes and toolkits
- Small team leadership experience (Agile team leadership strongly experience desired); mentoring and guiding junior engineers
- Knowledge of server-side/database development, computer system administration; Net-centric, horizontal integration program expertise is a plus
- Strong problem-solving skills, including the ability to review performance and operational issues, identify root cause, recommend, design and implement a solution
- Use of common software development and management tools such as maven, git/github, nexus, and Eclipse
- Experience with agile development methodologies
- Understanding of standard system engineering design artifacts such as Use Cases and SysML diagrams
Education:
- BS/MS degree in Computer Science, Engineering, or a related subject preferred
- IAT Level II certification required
- 3-5 years of relevant experience
- Minimum Active SECRET Clearance Required