If I were to answer this question in one sentence, I would say — “The Cloud is full of IT resources offered for rental” It could have been the shortest article about Cloud Computing. However, I have another definition of Clouds that will be provided at the end of this post. Read on…before that, let us focus on the definition given above and define what IT resources can be offered for rental and why this concept has become so popular for the last few years.

Image for post

 

IT versus Non-IT

For the sake of better illustration, let us divide all businesses into two categories:

  • IT — companies which revenue is primarily generated from producing and selling IT resources and services (such as hardware and software vendors, service integrators etc.)
  • Non-IT — companies that core business is not related to IT (all other industries)

Nowadays, It is tough to find a company that does not use at least some type of software — it can be a simple Excel spreadsheet, communication services like Zoom or a complex ERP system. All this software is hosted on (running on top) of some underlying hardware. All software or application can be grouped into three types: desktop, mobile and web depending on the client device used.

  • Desktop — software is launched on a desktop/laptop that uses a conventional operating system (e.g. Windows, Linux, macOS)
  • Mobile — a particular type of software adapted to be run on mobile operating systems (Android, IOS, )
  • Web — software that is available from a browser (on any platform)

Hardware that hosts this software can be owned by the company and located whether within their own office or in a select Data Centre (it is called “co-location”), but still is managed by the company’s IT personnel. In this paradigm, the company owns and operates all its IT resources starting from the physical server (Computers optimised for business workload), Operating System (OS), middleware, Databases, applications, network configurations, security, patching, maintenance, etc.

This is how it used to be in “Pre-Cloud” days.

 

Everything as a Service age has come!

One day, someone clever in some IT company decided, why use our IT resources alone? Why not offer them as a service? And many businesses around the world agreed. Why shall we “buy and own” instead of “‘pay and use”? With fast and reliable Internet access which is available almost everywhere in the world today, this consumption pattern has changed not only the way enterprises work, but also how people buy products: such as music, books, movies, how they store and access their files, how they communicate with each other using social media — Everything “As A Service” age is born.

This has now introduced a new term “XaaS”, where X can be a variety of options that we will discuss right now.

IT companies provide a variety of options in their cloud offering depending on what level of management you want them to handle and what you want to have full control over. Based on this separation of areas of control and responsibility, there are several options to select. Most common Xs in XaaS are:

  • IaaS — Infrastructure as a Service: in this model, you are responsible for everything that starts from Operating System level and above. Cloud providers provide you with their hardware, connectivity (access to the Internet) and assure the physical security of the servers located in their Data Center. You can build whatever information system you want on top of the provided OS.
  • PaaS — Platform as a Service: you are provided with a specific software environment in which your applications need. For example, a Database management system such as Amazon’s AWS RDS or an Application server such as Microsoft’s Azure App service. Your Cloud provider fully manages everything below this level. This concept is similar to traditional web hosting but can cover much more complex cases than just hosting a WordPress or Joomla website.
  • SaaS/FaaS — Software/Function as a Service: a higher level of abstraction, when you use some specific software or pre-built function, you do not have to worry about anything related to IT infrastructure. Just pay and use out-of-the-box (Office 365, Dropbox, Zoom, Salesforce etc.)
  • CaaS — Container as a Service, slightly less frequently used model only because it requires specific application architecture — cloud-native. That is why both Virtualisation and Container blocks are represented as optional.

There are other XaaS, like NaaS (Network as a Service) or MBaaS (Mobile Backend as a Service), but we will not talk about them today. I can bet that in the future, this list of offering models will grow.

These various options were introduced to give flexibility in Cloud offerings, but let us take a look at what they all have in common. Data — it is something that is the most valuable in the 21st century, and it is even popularly considered as the new oil and gas. Data — information in some structured representation. We all work with it every day. There is no chance we would like someone else to use our data without our explicit consent.

We do perform operations with our data: we produce it, we send it to each other, share publicly, format, resize, delete, basically do a lot that is called ‘Data Processing’. Pieces of software we call “Applications” do this. Applications are made of functions — atomic elements of functionality that work with data.

We own the data, but everything below it can be outsourced, we can rent it in different ways as discussed earlier.

In general, nowadays businesses prefer a SaaS model for everything. If a SaaS offering covers all business needs, it makes sense to use it as it is. Unfortunately, not all business cases can be pre-built and supplied in this model. When a business requires more control, some level of customisation will be necessary such as enabling some particular security compliance rules — then inevitably it comes with the price of managing more and more levels of the IT resources. Taking DAREY.IO as an example; as an IT Mentorship organisation, we use a lot of SaaS products to operate the entire business; however, we also engage IaaS, PaaS, and CaaS to address other parts of the business model which is to implement end to end DevOps solutions based on real-world use cases for our interns to learn.

 

Was Cloud a groundbreaking idea?

Surprisingly, it isn’t an utterly brand-new concept — serving IT resources as a service. Long ago, when there was no such thing as PC (personal computer), but scientist and engineers needed to solve complex computational tasks; there were, so-called Mainframes — grandparents of modern servers. They were giant pieces of machinery that could occupy the entire rooms or even floors in a building and were extremely expensive. Mainframes did not support any multiuser, parallel access, so the time a person could use it was very limited, and users had to make an appointment and wait for permission to have access to mainframe’s computational power. Time was limited and whether you are done with your computations or not — you had to release the resources for the next person.

Sounds familiar? The same concept is used now, although at a more sophisticated style.

Cloud providers charge their clients for different units based on the option of the offering. Usually, those units are time (in seconds), the number of concurrent users, traffic (inbound and outbound), storage size (in GB), some other synthetic metrics (e.g. the number of database transactions, or CPU cycle times)

 

But why go Cloud? What if I want to be in control?

This is a common question that businesses ask. Let’s explore 2 of the huge reasons to go cloud.

Eliminates Planning Mistakes

When Igor Suchilov (One of our mentors at DAREY.IO) started his IT career, he used to work for a relatively small Internet Service Provider, their CTO decided to buy some network equipment. When the equipment arrived at the warehouse it appeared that it did not support some specific protocol, and the whole project was put at risk. It was a “million-dollar mistake”, and it led to significant network architecture changes. Could it have been avoided that time? Probably not. But now, when everything is “as-a-service”, even network connectivity can be provided from the Cloud. You can change your requirements much more frequently. Software-Defined Networks (SDN) now allows to build the network on regular commodity servers and new features and support of new protocols can be added programmatically. Nowadays, it is much harder to make this kind of mistake.

Minimizes Capital Expenses

Another reason for using Cloud is the massive advantage of minimising Capital Expenses and the ability to adjust to any workload. If you have a growing business, you might need to grow your IT resources accordingly. If the load is unpredictable — today it is low, tomorrow it spikes up to the sky and the day after it is somewhere in the middle — in classic IT world you would need a server to cater for maximum load and the rest of the time it will be underutilised. In this case, you are burying your money into this particular server. Pay-as-you go consumption paradigm allows you to normalise your spending on IT resources.

If you want to be in full control? Then yes, you should probably own your own IT infrastructure and manage it within your organisation. Or even better, to adopt Cloud technologies within your IT department, this approach is known as “Private Cloud”.

A rule of thumb is if the core of your business is IT and you have strong reasons to have all the resources within your area of control — host it internally, otherwise — consider going for a Public Cloud options as it might bring many business benefits.

There is also a combination of two approaches when part of the resources are managed by a Cloud provider and another part by the business — Hybrid Cloud.

 

“To Cloud” or “Not to Cloud”?

Of course, “To Cloud”, it is a merely inevitable trend in modern IT World regardless of what your role is — whether it is a software developer or a system administrator. Businesses adopt more and more cloud technologies, so you better be prepared and armed with all necessary knowledge to survive in this new “Cloudy” world. If we look at the classic Software and Hardware giants like Microsoft, Oracle, IBM — they have also realised that the good old days when they could lock a client with their proprietary products are gone. They have regrouped their RnD to compete with relatively young and bold leaders of the market like AWS and Google.

Image for post

As per the latest Gartner report, the situation on the Cloud market looks like this:

Image for post

Cloud Service Providers. Magic quadrant

As per LinkedIn — there are 417,130 openings with “Cloud” word in it at this very time. Glassdoor shows us that the average salary of a Cloud Engineer is $125K per year.

And this is actually good news, there is intense competition on the market, and new products and services are introduced every month or even week, it is still a fast-growing industry, and this is the right time to join the Cloud expert community. Every Cloud Service Provider has its certification path that you can choose to follow. There are multiple books and courses out there on the Internet that can prepare you for these certifications, but what is essential — is to be able to use these tools with your hands. And not only use, but build meaningful end-to-end scenarios that can bring benefits in real-life use cases. For this, you must not just concentrate on one Cloud Vendor but learn overall concepts and approaches that are quite similar in all Service Providers.

 

So, what is in the Clouds?

At the beginning of this post, I promised to give another definition — Opportunities are in the Cloud. This definition is as true as the first one — there are lots of opportunities for those who are just starting their own IT journey or willing to broaden their expertise beyond classic IT products and solutions.

If you are as passionate about Clouds and DevOps as we are — follow our blog, explore our mentorship program to start learning-by-doing with real-world projects. Attend one of our webinars or contact us if you have any questions. Stay tuned for more blog updates!

written by
Dare Olufunmilayo

Tell us about yourself...

Liked this article?

Stay updated with our latest articles, subscribe to our newsletter

You may also like

Darey Blogs

Uncategorized

project-3

Leke
  • 5 min watch
Darey Blogs

DevOps Career

DevOps! Where do I Start?

Igor Suchilov
  • 5 min watch