Job DescriptionSee More
The Joint Staff is responsible for training military forces to respond to crises around the globe. From armed conflict to providing humanitarian support after natural disasters, this force relies onjoint training across all military branches, Combatant Commands, and Componentsto be ready to respond at a moment's notice. Globally integrated training technologies help prepare senior leaders to make decisions in complex environments, strategically integrate operations and resources globally, and develop a force capable of competing and winning against any adversary or triumph in any disaster.
We support theJointStaffin buildingthe technical capabilities that this force relies on. We develop exercise planning, data, and simulationsystemsthat mimic real life environments and weapons systems. These simulation environments areintegratedwith live tactical capabilities so warfighters can train using theexactsame systems they use in the fight. Our current effortsunifythese capabilities seamlessly with our modern web architecture and provide a model for ensuring long-term evolution to keep pace with the constantly evolving technical landscape. Our efforts in the areas ofcontainerized and scalable solutions, continuous delivery pipelines, modernized data integration,andnext generation simulationsolutionsensuresthatwhat wedeliversatisfies the needs of our customer today, tomorrow, and well into the future.
We arelooking fora passionate and talented Software Engineer to be a partof a fast-paced, rapidly growing, user-driven development teamthat isfocused onarchitecting, developing, and maintaining these solutions.
As a Software Engineer, you should have a demonstrated ability to learn new and complex technologies, have a drive to contribute new ideas for future development, and be passionate about writing reliable, efficient, and maintainable code. You will be expected to build and improve software by working with a Product Owner, Scrum Master, and other Engineers by translating functional requirements into robust, scalable, and supportable solutions. You will participate in the full development lifecycle, and actively troubleshoot issues in support of applications in production critical environments.You should be eager and willing to train new Associate Software Engineers and provide support to other Engineers on the team.
Bachelor's degree in Computer Science, Computer Engineering, Software Development, or related discipline
2-4years of experiencein the industry as a Software Engineer or Software Developer, 0-2 years of experience with a Master's degree
Strong logical thinking skills and development fundamentals including object-oriented design, data structures, algorithm design, and complexity analysis
Knowledge of best practices for the full software development life cycle, including coding standards, code reviews, source control, build processes, testing, and operations
Afast learnerwiththe ability to adapt quicklyina fast-paced, team oriented,environment.
A sound understanding of object-oriented design, data structures, and software design patterns
Understanding of system architecture and experience with distributed systems
Experience utilizing Agilemethodologies andprinciples as well as Agileframeworks
Experience with collaboration, development tracking, and version control systems such as Confluence, Jira, and Git
Knowledge of web-based runtime environments such as NodeJS and web application frameworks such as AngularJS and ReactJS
Knowledge of application abstraction and container fundamentals
Experience with container runtime environments such as Docker and container-orchestration systems such as Kubernetes
Design and development in Relational and NoSQL/Graph databases
Development in a Linux environment
Security Clearance: None
Telework - Limited
Valid through: 11/20/2021