The candidate must have senior knowledge and senior hands-on experience in developing, implementing and leading software teams. As a senior engineer, this labor competency is responsible for maintaining and improving the performance of existing software code, with duties to design and update software databases under contract and direction from the assigned Government Product Manager. The candidate must have an astute ability in writing test scripts in an agile software development environment with an emphasis on automated test procedures, and continuous integration and continuous delivery of software. The candidate shall recommend improvements to existing software applications as necessary. Furthermore, candidates shall be capable/willing to perform the software tasks identified in the position's primary responsibilities while working on Government/Contractor software teams. Primary Responsibilities include (but not limited to): - Designs, Develops, and tests software for Command and Control based products. - Develops front end and backend of software prototypes, components, and tooling that can be leveraged to speed prototyping process. - Engineers SHALL embrace and adhere to following development methodologies: - Extreme Programming (XP) Practices - Pair-Programming - Test-Driven Development (TDD) - Continuous Integration/Continuous Delivery (CI/CD) techniques - Helps to design and develop software requirements for multiple Command and Control based products including the software architectures, APIs, frameworks, and libraries. - Works with data scientists, UX designers, engineers, and product managers to help in composing cohesive and sound software designs that form the basis of scalable Command and Control software solutions. - Optimizes software designs and architectures to deliver desired performance targets and devises tooling and methodologies to profile execution and capture performance metrics. - Senior engineers SHALL be proficient in discussing future limitations and a forward-thinking approach in resolving roadblocks presented by current strategy - Stays informed on latest software architectures and trends from design patterns to DevSecOps and systems architecture patterns. - Aids in making technical decisions in order to migrate legacy systems to the cloud - Aids in formulating a strategy on how to achieve rapid prototyping of capabilities. F. Analyzes and decomposes activities and requirements to software designs that are allocated across systems components/sub-components, classification system levels, etc. - Captures, develops, and reports reference architectures and documenting compliance standards. - Develops plans, road maps, software design strategies. - Implements and practices DevOps Enablement and helps more junior/less experienced developers to do same - Is a mentor to other engineers regarding troubleshooting techniques, design patterns, and testing strategies.
a. Senior Devs SHALL be able and willing to provide guidance and constructive feedback to junior engineers within their product teams. Requirements of this position:
Bachelor’s degree in a highly quantitative field (Computer Science, Machine Learning, Operational Research, Statistics, Mathematics, etc.) In lieu of a BS, 3 years of directly related experience will be considered. 6 years of non-internship professional Full-Stack Software development experience (Java, Web services, Database, and/or web application development) 4 years of programming experience with JavaScript, Java, and preferably one more programming language (Python, etc) 2 years of experience with DevSecOps tools and processes such as Git, Concourse, GitLabCI, SonarQube, Fortify, and ThreadFix 2 years experience with front end frameworks like React or Vue 2 years of experience with Extreme Programming practices (Test-Driven Development, Pair Programming, CI/CD, etc) [See Section 2.2.1] 2 years of experience contributing to software architecture and design (architecture, design patterns, reliability and scaling) of both new and existing systems 1 year of experience using container technologies such as Docker or Kubernetes ? 1 year training, upskilling, and/or mentoring engineers MUST be eligible to obtain a minimum of a Secret clearance.