A DevOps Engineer is responsible for improving software product delivery in the areas of provisioning, monitoring, securing, deploying, scaling, maintaining, and system hardening. A typical day in this role involves monitoring systems, supporting the project teams, and collaborating with the software development, architecture, and infrastructure teams to derive best practices for continuous improvement. This role requires an individual to be hands-on to build, setup, monitor, and maintain running systems remotely and at client sites.
PRIMARY RESPONSIBILITIES INCLUDE:
• Support the Software Development team’s hardware and operational needs to rapidly iterate products and services, particularly with build automation, testing, CI, software releases, and system deployments;
• Establish reusable CI/CD pipelines for automating procedural steps including gated check-in, testing, deployments, and configurations using GitFlow, Jenkins, SonarQube, Ansible, Docker, et. al;
• Configure and deploy GUI front-end visualizations of builds, deployments, tests, telemetry, alerting, errors/logs, and health status;
• Manage and maintain multiple Linux-based environments to ensure proper setup, configuration and availability for each project as scheduled;
• Create and maintain detailed, up-to-date technical documentation;
• Design and implement a toolset that simplifies provisioning and support of a large cluster environment;
• Solve live performance and stability issues and prevent recurrence;
• Apply proper architecture guidelines to ensure highly available services.