To develop and maintain high availability and scalability of HPC systems in a Linux environment
Requirements
Experience developing in Unix
Ability to perform shell scripting
Working knowledge of Configuration Management (CM) tools and Web Services implementation
Software development using languages such as C, C++, Python, Ruby, Perl, JavaScript, etc.
Experience with agile development processes
Experience with source code control systems, such as Git
Experience with container technologies (ie. Docker)
Unix shell scripting
Development of event driven or data driven analytics
Development of cloud-based solutions and technologies
Experience with Linux CLI
Experience writing scripts using Shell/Bash/Python
Linux administration experience including software integration, service management, configuration management, and routine sustainment operations related to provisioning, storage, and networking
Experience installing, configuring, and supporting COTS/GOTS/FOSS software, libraries, and packages in a Linux environment
Extensive software development experience with Java and Python
Experience with stream/batch Big Data processing and analytic frameworks
Experience with CI/CD principles, methodologies, and tools such as GitLab CI
Experience with IaC (Infrastructure as Code) principles and automation infrastructure provisioning and configuration using tools such as Ansible
Experience deploying containerized services under Kubernetes orchestration
Demonstrated experience using system monitoring tools such as Prometheus/Grafana
Responsibilities
Design, develop, test, deploy, document, maintain, and enhance complex and diverse software systems
Work closely with various stakeholders to streamline the deployment pipeline and optimize system performance
Resolve software problem reports
Utilize software development and software design methodologies appropriate to the development environment
Design and code new software or modify existing software to add new features
Integrate existing software into new or modified systems or operating environments
Develop simple data queries for existing or proposed databases or data repositories
Other
Master's degree in Computer Science or related discipline from an accredited college or university, plus five (5) years of experience as a SWE, in programs and contracts of similar scope, type, and complexity
Bachelor's degree in Computer Science or related discipline from an accredited college or university, plus seven (7) years of experience as a SWE, in programs and contracts of similar scope, type, and complexity
Nine (9) years of experience as a SWE, in programs and contracts of similar scope, type, and complexity
TS/SCI - Polygraph required
Telework Available: 16 Hours/week based on tasking