Task Description
The Software Engineer shall be responsible for software development activities for a tiered Zero-touch provisioning (ZTP) and infrastructure automation (IA) solution for the bring-up and hands-off automation of complex High Performance Computing Systems. Software development activities include requirements analysis, design, implementation, testing, and sustainment. The primary focus is on integrating COTS and FOSS products, packages, and libraries. The Software Engineer must have a demonstrated understanding of the software development lifecycle.
Required Skills
§ Experience using the Unix CLI
§ Experience with scripting using Bash/Python
§ Experience developing with multiple programming languages such as C, Java, and Python in a Unix environment
§ Experience with software frameworks used for searching, monitoring, and analyzing big data such as Splunk and Elastic Stack
§ Experience with SQL technologies such as MySQL, MariaDB, and PostgreSQL
§ Experience with NoSQL technologies such as MongoDB and Elasticsearch
§ Experience with containerization technologies such as Docker
§ Experience with CI/CD principles, methodologies, and tools such as GitLab CI and Jenkins
§ Experience with IaC (Infrastructure as Code) principles and automation tools such as
Ansible, SaltStack, and Terraform
§ Experience with designing, implementing, and using REST and/or RPC APIs
Desired Skills
§ Experience with Messaging Frameworks such as Kafka, ActiveMQ, and RabbitMQ
§ Experience with tools used for metrics visualization such as Grafana and Kibana
§ Experience with Git Source Control System
§ Experience with the Atlassian Tool Suite (JIRA, Confluence)