The DevOps Engineer is a key member of the Software Development Team. This position supports both internal and external clients, from managing software development and test infrastructures to customer on-premise and cloud deployments and support. The DevOps Engineer collaborates with internal teams to continuously improve the software development and deployment processes and will provide guidance to customers as they set up their own environments to install Contextual Genomics software. The DevOps Engineer will understand the needs and challenges of a client across operations and development, and partner to formulate solutions that support their business and technical strategies and goals.
- Design, build and maintain an automated software development infrastructure, inclusive of source control, build servers, artefact repositories, as well as multiple test and deployment environments, to achieve repeatably, reliable releasing.
- Design processes and tools to manage multiple AWS instances for internal development and external customer releases.
- Implement policies, procedures and tooling to ensure the security of all internal and external systems.
- Setup, customize and maintain test environments for both manual and automated testing.
- Setup, customize and maintain the production environment infrastructure and automation.
- Oversee and troubleshoot rollover of the test system to the production system.
- Troubleshoot production issues and coordinate with customers and the development team to streamline code deployment and issue resolution.
- Create and maintain documentation as required for maintenance and rollout of deliverables.
- Manage requests submitted to Customer Support and triage or resolve as appropriate.
- Document problems and communicate with the teams regarding support tickets.
- Handle code deployments in all environments.
- Monitor metrics and develop ways to improve process and development delivery.
- Build, maintain, and monitor configuration standards.
- Follow the best industry practices and procedures established by the company.
- Bachelor’s degree in Information Systems, Computer Science or equivalent experience
- Solid understanding of concepts and tools used in modern continuous integration and continuous delivery infrastructures
- Extensive experience with Amazon’s AWS cloud environment
- Extensive experience with the configuration, administration, optimizing and monitoring of Linux, including Bash scripting
- Expertise with Scrum, JIRA, GitHub, Jenkins, Ansible, Puppet, Splunk, Nagios, CloudFormation, Terraform, CloudWatch, or equivalents
- Experience with SQL databases including administration
- Solid understanding of network infrastructure and routing
- Experience with Python scripting or equivalent scripting languages
- Knowledge of VM setup, management and infrastructure
- Experience in developing system documentation
- Experience with IT support ticketing management systems
- Excellent written and verbal communication skills
- Excellent attention to detail
- The team focused and able to liaise with multiple stakeholders