By now, even the slowest-moving companies have embraced cloud computing and are looking to hire engineers who can help them build and maintain cloud infrastructures. For that reason, IT professionals who have cloud skills are in high demand. Then why is it so hard to get jobs in cloud computing?
Indeed, landing jobs in cloud computing can be harder than it may seem, even as work and life in general have moved to a remote model. That’s due in part to the loosely defined nature of cloud jobs, and partly because working with the cloud requires a complex mix of skills that you can’t typically obtain by getting just one degree or mastering one type of technology.
With this reality in mind, let’s take a look at what it takes to get jobs in cloud computing today, whether you’re fresh out of college or have decades of experience in the IT industry.
Why Jobs in Cloud Computing Are Hard to Get
Again, there’s no shortage of jobs in cloud computing. As of 2018, Forbes reported that there were more than 50,000 jobs in cloud computing in the United States, and more than 100,000 worldwide.
Nonetheless, IT pros may find it difficult to tailor their resumes and skill sets in a way that makes them an optimal fit for a cloud computing job.
This is true for a couple of reasons.
For one thing, jobs in cloud computing are not always as clearly defined as other types of IT positions. If you’re applying for a job as a developer, for example, you know your core duty will be to write and maintain code. (And many job ads even specify which frameworks or languages you would be expected to use). If you want to work as a test engineer, you know that testing software is your main job responsibility.
But if you look at descriptions for jobs with titles like “cloud architect” or “cloud engineer,” you’ll notice that the duties laid out tend to be rather vague. They often boil down to something like, “You will help our company use the cloud.” They don’t mention specific cloud services or vendors, and they offer little insight into what would actually be expected of you on a day-to-day basis.
This vagueness can make it hard to market yourself for jobs in cloud computing because you don’t know which skills to emphasize. Should you emphasize in your application that you have experience deploying serverless functions, even though the job may or may not actually involve that particular type of cloud service? Should you tout your AWS skills and take the risk that the employer uses a different cloud platform?
Another reason why getting jobs in cloud computing is tough is that working with the cloud requires a broad mix of skills. A good cloud architect or cloud engineer has serious programming skills as well as extensive IT Ops experience. He or she understands all of the dozens of cloud services that the public clouds offer, as well as the complex architectural considerations related to concepts like availability zones, cloud regions and multi-cloud architectures.
The fact is that many traditional IT educational programs don’t train students in this broad selection of skills. A CS degree teaches you primarily how to program. A degree in IT administration or a related field teaches you only IT Ops. And even if you have already been working in industry for a while, chances are that you followed one of these tracks or the other, and may not have the broad skill set that cloud jobs demand.
Practical Steps for Landing Jobs in Cloud Computing
Fortunately, this challenge can be overcome, no matter which stage you are currently at in your career. Following are some practical steps for getting a job working with the cloud.
1. Develop vendor-agnostic cloud skills.
If you’re looking to bolster your cloud-computing chops, strive to gain experience working with technologies and services that do not depend on a particular vendor.
For example, teach yourself how to use Kubernetes, which runs on any cloud (and on-premises, for that matter), rather than investing time learning the proprietary container tooling of a specific cloud vendor. As another example, invest time in learning cloud-agnostic configuration management tools like Terraform or Ansible rather than those tied to specific platforms (like AWS CloudFormation).
Gaining vendor-agnostic skills will help you market yourself for cloud computing jobs that deal with any type of infrastructure, rather than boxing yourself into a particular vendor’s ecosystem.
2. Embrace DevOps.
At its core, DevOps is all about bridging the gap between developers and IT Ops engineers. In that sense, DevOps is a great way to build the cross-cutting skills required to thrive in a cloud computing job that requires both programming and IT administration expertise.
For that reason, if you haven’t already, take some time to learn what DevOps means, and perhaps complete a DevOps training course or two. Even if you already know much of the material, familiarizing yourself with the way DevOps frames IT work is a good way to help yourself learn to think about what it means to manage the cloud.
3. Embrace configuration as code.
Along similar lines, another way to help teach yourself how to integrate programming and IT Ops skills in a way that drives success in cloud computing is to embrace the concept known as configuration as code. Configuration as code refers to the practice of using code (usually in the form of files formatted using JSON, YAML or a similar framework) to manage the way applications are deployed or environments are configured. Configuration as code can be used to set up everything from an operating system to deployment, to a Kubernetes cluster, to secrets management.
By learning the configuration as code model (and the tools that go along with it), you gain the ability to apply coding skills to solve IT management tasks--a critical area of expertise for a modern cloud computing job.
4. Master cloud architectures and concepts before tools.
There are a dozen or so major public cloud platforms out there, and many dozens of services hosted spread among them. In that sense, the cloud may seem a difficult area to master.
But the good news is that all of the clouds work in the same fundamental way. Virtual machine instances on AWS EC2 are very comparable to Azure Virtual Machines. The way that AWS S3 handles storage tiers is almost identical (apart from pricing details) as the way storage works on Azure Blog Storage. Serverless functions are basically the same on any cloud (with the exception of the languages they support, which tend to vary from one cloud to another).
This is why teaching yourself the key concepts associated with cloud architectures and services will position you to work effectively in cloud computing. Learning individual tools may also be worthwhile in some cases, but don’t worry about that until after you’ve mastered the core concepts. Most employers will care more about your ability to discuss, for example, the security implications of a multi-cloud architecture than how much experience you have working with AWS CloudWatch, a vendor-specific tool that would only be relevant if the employer uses AWS.
5. Think broadly.
Finally, if you’re interested in jobs in the cloud, think broadly and flexibly. Don’t assume that employers looking to hire cloud talent care only about your ability to spin up virtual machines or manage cloud-based data storage. That may be the case for some jobs, but other employers will be interested in your ability to work with more obscure types of cloud services.
Keep in mind, too, that the cloud is constantly evolving--especially as companies and individuals shift their work and life habits in the current climate. If you position yourself as someone who has competency in just a handful of cloud technologies, you limit your ability to be competitive for jobs in cloud computing. Think of it as your mission to convince employers that you are prepared to work with any type of cloud service on any cloud, even a brand-new type of service that is just on the verge of being rolled out.
Developing the types of expertise described above takes time, and, depending on your experience and current skills, you may not be ready to jump into the cloud computing job market today. But optimizing an IT background for jobs in cloud computing is not terribly difficult if you are willing to spend a few months gaining the skills you need, and if you focus on developing and marketing yourself in a way that will make you broadly competitive for any type of cloud job.