This question is something that I have come across in a number of ways and variations over the past few months and on some occasions I have actually been asked the following:
- Are you a cloud architect?
- Can you build me an cloud environment like Amazon?
- Can you explain to me over lunch how to build a cloud?
Granted, the last one made me laugh, but the rest of them are pretty valid.
A while back there was a great demand for the professional that could build a solid and sound virtual infrastructure. Don’t get me wrong – the demand is still there – very much so, but since then a new and more sophisticated skill is being asked for.. - ”Build me a cloud..”
So before we can answer the first and most important question – I think it would be fair to ask what is a cloud? And the simple answer to that is – wait .. there is not simple answer to that. It will depend on who you ask. Let’s see how the big cloud players define cloud.
Cloud computing empowers IT through flexible, automated infrastructures, new on-demand service models and new levels of IT efficiency. All this allows IT to shift resources from maintaining existing systems to invest in building innovative services that drive new revenue, improve operations and advance business goals. (Source)
NIST defines five essential characteristics, three service models and four deployment models. The essential characteristics form the core of the definition. The required characteristics for any solution to be called a true “cloud” solution include:
- On-demand self-service
- Broad network access
- Resource pooling
- Rapid elasticity
- Measured service
NIST also defines three service models, or what are sometimes called architecture layers:
- Infrastructure as a Service (IaaS)
- Software as a Service (SaaS)
- Platform as a Service (PaaS)
Finally, it defines four deployment models:
- Private Cloud
- Community Cloud
- Public Cloud
- Hybrid Cloud (Source)
Cloud Computing is really about delivering IT as a Service, the idea of managing and delivering applications and services for business value and impact, as opposed to focusing on where those applications and services run or what level they run on. “What it Means” is that Cloud Computing gives companies the capability to be more flexible, more agile, in meeting the needs of the business. This is because the Cloud removes the traditional limitations and boundaries associated with allocating or moving services. Once those restriction are removed, it becomes second nature for IT to respond to specific requirements of the business. Thus, changes and optimization become part of the standard run of the business and the time that IT used to spend being reactionary can now be used to be innovative and forward thinking. (Source)
Gartner defines cloud computing as a style of computing in which scalable and elastic IT-enabled capabilities are delivered as a service using Internet technologies. (Source)
So now that we are all clear – well actually are not quite clear on what a cloud is – let us still try and define what skills are needed from someone to design a cloud solution.
So the first thing that a headhunter would look for is the letters behind someone’s name (and I think we all can safely say that this is not the right way to do it- but still)
I went on a search for which cloud certifications there are and came up with the following list.
VCDX-Cloud which is VMware’s upcoming top-level certification for those architects who can display their qualifications and expertise in designing vCloud solutions. So where was Amazon? Amazon have an Architecture course – no certification. Next up was OpenStack and Rackspace – which is only a technicians course. Microsoft and their Private Cloud Solutions Expert – but I would not really call this a architect level certification – but more of a administration level one. Last but not least – Redhat and their RHCVA – and again I see this as more of an administration exam than anything else.
So here we come back to my original question.
Do you have what it takes to be a cloud architect? Well at the moment I don’t think there is anything that can prove (or test for that matter) if an individual has those skills.
The biggest challenge I see here is that creating a cloud solution is not just creating the virtualization layer, or the storage layer, or the network layer, but also the orchestration behind it, the business model behind it, the elasticity, automation and the list really goes on and on. There is no one skill hat can be mastered here. It requires a multitude of expertise, a broad spectrum of knowledge is multiple fields, with a number of them not being virtualization related at all.
I do think that as the market evolved more and more, the demand for such individuals will rise and so will the expertise of the professionals out there. If once upon a time there were only a handful of people that were capable of designing a robust virtual infrastructure – today, a number of years later – that handful has multiplied exponentially, this is the case with cloud architects.
The ease with which we manage and design our virtual infrastructure today will become the same for cloud infrastructures a few years in the future. It is all a matter of time.
If you would like to add your thoughts and comments on this article or which skills and expertise a cloud architect should have – please feel free to add them below.