- TO BE CONSIDERED FOR THIS POSITION YOU MUST HAVE AN ACTIVE TS/SCI W/ FULL SCOPE POLYGRAPH SECURITY CLEARANCE (U.S. CITIZENSHIP REQUIRED)
The Actionable Alerting team is seeking a Principal Software Engineer who will perform development and engineering, including requirements analysis, software development, installation, integration, evaluation, enhancement, maintenance, testing, and problem diagnosis and resolution. The candidate should have experience in the following:
• Spring Framework (MVC, Boot)
• Familiar with Maven build tool chain.
• Automated Testing via J-Unit.
• Git proficiency/Experience (1 year minimum).
o Gitlab experience preferred. Linux OS (1-2 yrs minimum).
• Agile Practices and methodology (2 years minimum)
• Containerization (familiar with concepts; experience using).
• NoSQL databases (1 year minimum) to include Mongo, Elasticsearch, Cassandra, etc.
• Strong communication Skills.
• Strong Management skills.
o (Web Component Framework/Library(React/VueJS/Angular v4/etc)
o Familiar with NodeJS/NPM/Yarn build toolchain
• Cloud Native development practices (external configuration, microservices, etc)
• Java Streaming Events (ie: Spring Cloud Stream, Lamdas, etc)
• JMS, or other message oriented middleware
• Spring Data and CRUD operations (IE: Spring Data Mongo, Spring Data Elasticsearch)
• Containerized Solutions:
o Docker-swarm, Kubernetes, Rancher/Portainer
• Cloud Platform Familiarity
o AWS, GCP, Azure
• CI/CD process Pipelines
• Automated Testing (in addition to above)
o Familiar with Mockito
• Customer Environment Exposure
o Familiar with PKI
o Familiar/Context to High-side environment
o Familiar with two-way SSL/TLS
Additionally, the following experience is desired:
• Experience in development within the Eclipse Integrated Development Environment (IDE);
• Experience architecting, designing, developing, testing, and supporting integration of Hadoop and Map Reduce frameworks;
• Experience architecting, designing, developing, testing, and supporting integration of software as a component of SIGINT solutions;
• At least six (6) years of either C or C++ Windows/Linux programming experience.
At least fifteen (15) years in software development/engineering, including requirements analysis, software development, installation, integration, evaluation, enhancement, maintenance, testing, and problem diagnosis/resolution. The individual must be able to communicate directions and provide guidance to junior programmer/analysts, as required
At least eight (8) years developing software using the Java programming language. At least six (6) years of this experience must have been obtained in the last eight (8) years
At least six (6) years demonstrated experience developing software for Windows (2000, 2003, XP, Vista), UNIX and Linux (Redhat versions 3-5) operating systems. At least two (2) years of this experience must have been obtained within the last four (4) years
Experience planning, accomplishing goals, complicated tasks, and providing consultation on complex projects as top-level contributor or specialist
At least six (6) years in programming and development of application software for complex systems and software testing
Experience architecting, designing, developing, testing, and supporting integration of software systems with functional requirements within a CMMI Level 2 process structure
Experience "wrapping" legacy systems or components as Web Services within a SOA framework
Developing solutions integrating and extending COTS products
Developing of Framework infrastructure and services within one of the SOA design patterns
Experience with performance tuning and optimization of service-based Framework infrastructure and services
Developing of custom adapters allowing the integration of legacy (i.e., capabilities not developed as services) capabilities with service-based Framework infrastructure and services