Job Description
Role Description
The Automation Engineer is responsible for designing, implementing, and maintaining automated infrastructure, configuration management, and operational workflows across on-premise and cloud environments. The role centres on driving efficiency through automation using Ansible and the Ansible Automation Platform (AAP), managing Linux systems, developing Python and shell scripts, and ensuring the reliability of DevOps pipelines, databases, cloud infrastructure, monitoring systems, Kubernetes clusters, and VMware virtualisation platforms. The engineer works closely with infrastructure, development, and operations teams to eliminate manual processes and deliver scalable, well-monitored, and highly available systems.
Key Responsibilities
1) Linux Administration
- Deploy, configure and manage Linux servers (RHEL / CentOS / Ubuntu) in physical, virtual and cloud environments.
- Perform system administration — user management, file systems, networking, storage and security hardening.
- Troubleshoot OS-level issues, analyse system logs, and ensure maximum uptime and stability.
- Maintain patching schedules and enforce OS security compliance standards.
2) Python & Shell Scripting
- Develop Python scripts for automation, operational tooling, data processing and API integrations.
- Write robust shell scripts (Bash) to automate repetitive system tasks, backups, and scheduled jobs.
- Maintain and version-control all scripts in Git repositories following coding best practices.
- Refactor and optimise existing scripts to improve reliability and performance.
3) Ansible & Ansible Automation Platform (AAP)
- Design, develop, and maintain Ansible playbooks, roles, and inventories for configuration management and automated deployments.
- Administer the Ansible Automation Platform (AAP / AWX) manage job templates, workflows, credentials and RBAC.
- Integrate Ansible automation with CI/CD pipelines, ITSM tools and cloud providers.
- Continuously improve and expand the automation library to reduce manual intervention across all environments.
4) DevOps & CI/CD
- Build, manage and optimise CI/CD pipelines using Jenkins, GitLab CI or GitHub Actions.
- Implement Infrastructure as Code (IaC) using Terraform or similar tools for reproducible environment provisioning.
- Manage version control workflows using Git branching strategies, pull requests, and code reviews.
- Coordinate automated testing, deployment, and rollback procedures across development, staging, and production.
5) Cloud Infrastructure
- Deploy and manage cloud resources on AWS, Azure, or GCP compute, networking, storage, and IAM.
- Automate cloud provisioning and scaling using IaC tools and cloud-native automation services.
- Ensure cloud cost optimisation, governance, and security compliance.
- Manage hybrid cloud connectivity between on-premises infrastructure and cloud environments.
6) Monitoring & Observability
- Deploy and manage monitoring stacks Prometheus, Grafana, or equivalent.
- Configure alerting rules, dashboards, and on-call escalation policies for critical systems.
- Analyse metrics, logs, and traces to proactively identify performance bottlenecks and anomalies.
- Conduct post-incident reviews and implement monitoring improvements based on findings.
7) Kubernetes & Container Orchestration
- Deploy, manage, and maintain Kubernetes clusters (on-premise or cloud-managed EKS/AKS/GKE).
- Manage containerised workloads using Docker; write and optimise Helm charts and Kubernetes manifests.
- Implement resource quotas, autoscaling policies, and network policies within Kubernetes environments.
- Troubleshoot pod, node, and cluster-level issues to maintain application availability.
8) VMware & Virtualisation
- Administer VMware vSphere / vCenter environments VM provisioning, snapshot management and resource allocation.
- Automate VMware operations using PowerCLI, Ansible VMware modules, or Terraform VMware provider.
- Manage virtualisation capacity planning, templates, and clusters.
- Support migration of workloads between physical, virtual, and cloud environments.
9) Database Management
- Install, configure, and maintain relational databases (PostgreSQL / MySQL / MariaDB) and NoSQL databases (MongoDB).
- Automate database backups, restores, patching, and routine maintenance tasks.
- Monitor database performance, identify slow queries, and implement optimisation recommendations.
- Manage database access controls and ensure compliance with security policies.
10) Documentation & Communication
- Prepare and maintain technical documentation runbooks, SOPs, architecture diagrams and automation playbooks.
- Communicate effectively with infrastructure, development, and management teams on automation initiatives.
- Participate in Agile / Scrum ceremonies sprint planning, daily standups, and retrospectives.
- Provide clear status updates and escalate risks or blockers in a timely manner.
11) Key Duties
- Manage and support multiple automation projects and environments simultaneously.
- Coordinate with third-party vendors and cloud service providers as required.
- Ensure all automation solutions comply with security standards and company policies.
- Provide on-call or after-hours support during critical deployments or infrastructure incidents if necessary.