Learning Journey#5. From Foundation to Future: Cloud Computing as a Career Pathway

Welcome to the "Learning Journey" series. This space is my personal archive where I share insights and discoveries from my explorations into new tech territories, particularly back-end development and cloud services. As I continue to broaden my tech understanding, I hope this series inspires and contributes to your own learning journey.

Introduction

In the vast expanse of the digital universe, the concept of cloud computing has become an intrinsic part of our daily lives. Silently powering the technology we rely on, from our emails to the multitude of apps we use, cloud computing has become a cornerstone of modern technological advancements. This post aims to unpack the concept of the cloud, narrate its evolutionary journey, and shine a light on the emerging role of cloud engineers.


Grasping the Concept of Cloud

At its core, cloud computing is the delivery of computing services such as servers, storage, databases, networking, software, analytics, and intelligence over the internet, known as “the cloud.” It allows businesses to avoid the capital expenditure of owning their own infrastructure or data centers, instead renting these services as needed from a cloud service provider.

The three core types of cloud services include Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS). Below is a more detailed look at these models:

Service Type Description Example
IaaS (Infrastructure as a Service) IaaS provides the infrastructure such as virtual machines and other resources like virtual-machine disk image library, block and file-based storage, firewalls, load balancers, IP addresses, virtual local area networks etc. These resources are made available to the customer as service. Customers can avoid the capital outlay for hardware and purchase IaaS based on consumption, similar to electricity or other utility billing. Examples: AWS EC2, Rackspace, Google Compute Engine (GCE), Digital Ocean
PaaS (Platform as a Service) PaaS provides the runtime environment for applications, development and deployment tools, etc. The resources can be used to run applications designed in a specific programming language. This eliminates the need to manage underlying infrastructure (usually hardware and operating systems) and allows developers to focus on the deployment and management of their applications. Examples: AWS Elastic Beanstalk, Windows Azure, Heroku, Force.com, Google App Engine
SaaS (Software as a Service) In the SaaS model, cloud providers install and operate application software in the cloud and users access the software from cloud clients. The applications are made available over a network, typically the Internet. Cloud providers manage the infrastructure and platforms that run the applications. Examples: Google Apps, Salesforce, Dropbox, MailChimp, ZenDesk

The Evolution and Expansion of Cloud Computing

Over the past decade, cloud computing has evolved from a promising business concept to an essential business tool. Today, businesses are drawn to the cloud not just for cost savings and scalability, but also as a platform for innovation and business transformation. According to recent data, the worldwide public cloud services market is expected to reach $455.2 billion in 2022, a significant increase from $332.3 billion in 2021. This growth is mainly driven by the widespread adoption of cloud computing across businesses of all sizes, seeking the benefits of cost savings, scalability, and flexibility. The leading providers of public cloud services are Amazon Web Services (AWS) with a market share of over 33%, Microsoft Azure with over 18%, and Google Cloud Platform (GCP) with over 10%.

Year Event
1960 The concept of an "intergalactic computer network" was introduced by J.C.R. Licklider, who enabled the development of ARPANET.
1969 ARPANET, the predecessor to the internet, was developed.
1970 The concept of virtual machines became popular, effectively separating the hardware from the operating system.
1990 Telecommunication companies started offering virtualized private network connections.
1999 Salesforce.com started delivering applications to users using a simple website. This paved the way for software firms to deliver applications over the internet.
2002 Amazon launched Amazon Web Services (AWS), providing a suite of cloud-based services including storage, computation, and even human intelligence.
2006 Amazon launched its Elastic Compute cloud (EC2) as a commercial web service that allows small companies and individuals to run their own computer applications on a commercial web service.
2008 Google launched Google App Engine in Beta.
2009 Rackspace launched Cloud Servers with a pay-as-you-go pricing model.
2010 Microsoft launched Azure, its cloud computing platform. VMware launched vCloud Director, one of the first cloud management platforms.
2011 IBM launched the IBM SmartCloud framework to support Smarter Planet. Salesforce.com launched Heroku for developing and deploying web applications.
2012 Oracle announced the Oracle Cloud. Amazon launched AWS Elastic Beanstalk, making it easy to deploy and scale web applications on AWS.
2013 Google launched Google Compute Engine and App Engine Flex, allowing developers to run applications on Google App Engine using a variety of languages.
2014 Microsoft announced Azure Machine Learning on the Azure cloud platform and launched Azure App Service for developing applications in various languages.
2016 AWS Lambda was announced, allowing developers to run code for applications or backend services without having to provision or manage servers.
2017 Google announced Google Cloud Functions, which allows functions as a service for event-driven serverless computing.
2019 Microsoft announced the general availability of Azure Functions, their own function as a service platform.
2020 AWS, Azure, and Google Cloud continued to release new services and features, furthering the reach and capabilities of cloud computing.


The Rise of the Cloud Engineer

With the growing adoption of cloud technologies, the demand for skilled cloud engineers is on the rise. A cloud engineer is an IT professional responsible for any technological tasks associated with cloud computing, including design, planning, management, maintenance, and support.

There are several specialties within cloud engineering — cloud software engineers, cloud systems engineers, cloud

network engineers, and cloud security engineers. All these roles require a comprehensive understanding of cloud computing principles and modern software development practices.

Cloud engineers need a strong grasp of programming languages, web development, database management, and networking. Furthermore, they should have a deep understanding of top cloud service platforms, their services, architectural best practices, and how to design, deploy, and service workloads on these platforms.

Pathways in Cloud Engineering

There are a multitude of pathways available to cloud engineers. With the expanding roles and responsibilities, one can opt to specialize as a Cloud Architect, Cloud Software Engineer, Cloud Security Engineer, Cloud Systems Engineer, or Cloud Network Engineer, each role demanding a unique skill set and knowledge base.

Resources for Aspiring Cloud Engineers

For individuals interested in diving into the world of cloud engineering, there are a host of resources available. Online learning platforms like Coursera, Udacity, and edX offer a range of courses in cloud computing and related fields. Industry certifications such as AWS Certified Solutions Architect, Google Professional Cloud Architect, or Microsoft Certified: Azure Solutions Architect Expert are also beneficial in accelerating your cloud engineering career.

Conclusion

The journey of cloud computing from a fledgling idea to a robust platform for innovation has been extraordinary. The role of a cloud engineer, while challenging, offers a rewarding career in a field that continues to grow and evolve. The cloud is not just a technological revolution, it's an opportunity to redefine the digital landscape.

Join me in my next post where we delve deeper into the specifics of Amazon Web Services (AWS) and Microsoft Azure, their unique offerings, and the intricacies of their services. As the cloud continues to evolve, so will we. Until then, keep exploring and keep learning!

Comments

Popular posts from this blog

Daily#14. Understanding JVM, Dalvik, and ART: The Engines Behind Java and Android Applications

Daily#6. Understanding and Using NetworkCallback in Android