BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
Enterprise cloud deployments rely extensively on automation to drive the underlying infrastructure. As a result,...
organizations often have a dedicated cloud automation engineer -- a role that can ultimately make or break a cloud strategy.
Job candidates for this senior IT role need to know their stuff before they sit down for that all-important interview. Let's dive deeper into the responsibilities of a cloud automation engineer and what it takes to get the job.
A cloud automation engineer is primarily a senior software developer or engineer that specializes in cloud automation, orchestration and integration. In most cases, this is a crossover role that involves extensive knowledge of software design, process and workflows, as well as data center and cloud infrastructure.
An individual in this position typically implements, optimizes and supports that infrastructure and also ensures high availability. For example, she may need to architect an infrastructure to deploy a software platform and also implement the monitoring and logging features to oversee and troubleshoot that platform.
Other common responsibilities for a cloud automation engineer include:
- Design new systems to address existing IT challenges.
- Improve cost-effectiveness in cloud.
- Enhance cloud availability.
- Build up the performance of the production cloud infrastructure.
Cloud automation engineer is a broad role that involves an assortment of hardware and software knowledge. Most elements of the role demand several years of experience, and because there are so many varied proficiencies and requirements, it's typically a senior-level position.
The qualifications generally start with a formal education, usually a bachelor's degree in computer science, IT or an engineering discipline. Some employers may seek candidates with a master's degree in one of these fields, while others might forego a formal degree requirement for applicants with extensive experience -- 10 to 15 years.
Sample interview questions
Given that a cloud automation engineer often needs a range of experience in both cloud app development and infrastructure management, potential interview questions can run the gamut. Here are a few that job candidates can likely expect:
- Which tasks or processes have you automated at your current job?
- How did you decide that automation was necessary for those tasks, and how did you implement it?
- Suppose you need to swap out AWS EC2 instances in bulk -- how would you do that and still maintain application uptime and performance?
- How would you troubleshoot software that has no logs or logging available?
- Why is Java better than C++, and what is one scenario where would you use Java rather than C++?
Typically, employers will expect candidates with five to 10 years of relevant experience in application development, with at least two or three years of experience with CI/CD development paradigms, such as Agile or DevOps. A cloud automation engineer is also deeply involved with the infrastructure and operations side of the house, so employers will expect anywhere from three to five years of hands-on experience with infrastructure components, including OSes, databases, web servers, storage, networks, and security/authentication.
It is important to understand that cloud automation engineers aren't made -- they evolve. There is no single career path, and qualified individuals can emerge from both the software development and IT operations world.
Familiarity with specific cloud platforms, tools
A cloud automation engineer is expected to be proficient in a wide range of platforms and tools. Although the specific tools and most valuable skills vary by employer, there are myriad different permutations that include public and private cloud, software development and IT infrastructure.
An important aspect of the role is to have experience with cloud platforms. For example, on-premises private clouds require knowledge of the underlying stack, such as VMware's virtualization and OpenStack. Although knowledge of the exact stack is a plus, it's more important for candidates to demonstrate proficiency with any stack and transfer that knowledge to the more desirable platform.
Candidates may also need to know how to deploy and integrate public cloud services -- especially within hybrid cloud environments. For example, employers will likely seek candidates familiar with AWS, Microsoft Azure and Google Cloud Platform or even specific services, such as Amazon S3 or Google Cloud Storage.
Experience with technologies such as Kubernetes, Terraform, Puppet, Chef and Ansible is also a big plus.