As an IT engineer, I believe that being successful in IT is really about being a lifelong student. Information technologies have evolved significantly over the last decade, and for those of us in the business of building and executing within these changes, it means that we must constantly learn new skills and platforms. In this post, I’ll be sharing my path to the cloud along with my tips for getting started with AWS.
Why dive into the cloud?
My first exposure to AWS was in the course of helping a friend who was starting his business. He had developed a hybrid application using AngularJS and the Ionic framework and wanted to find an elastic, cost-effective solution that offered high performance. After a massive amount of research, he found AWS.
At the time, we were both completely new to the AWS platform. Logging into the AWS console for the first time, I remember feeling overwhelmed by the number of services with abbreviations like S3, EC2, and S53. It felt like another language.
To learn more, I dug into some AWS videos and read my first AWS white paper about the cloud, which really struck a chord with me. As an IT engineer, ensuring that projects are well-architected, flexible, and scalable and that they ensure business continuity, is always the goal. I knew that the cloud could address many of these challenges. This is what encouraged me to start my career in the cloud.
Getting started with AWS: AWS Free Tier
I initially created my own AWS account with free tier, even before knowing anything about the platform. The AWS Free Tier includes certain services that are available for 12 months following your AWS registration date. After creating your AWS account, you can use any of the products and services, listed below, for free within certain usage limits.
Within a few weeks, it was clear to me that AWS is a great choice for startups. The pay as you go model has no upfront fees, and you pay more as your business grows. When this happens, the AWS pricing calculator is very helpful in understanding the costs of scaling up.
The AWS Simple Monthly Calculator helps customers and prospects estimate their monthly AWS bill. It incorporates the latest pricing changes including the tiered pricing model for download bandwidth so that you can optimize your solution.
Getting started with AWS: Understand the basics
1. Understand “what is cloud computing?”
Cloud Academy’s beginner course is a great place to start in answering this question:
“Cloud Computing is a remote virtual pool of on-demand shared resources offering Compute, Storage, and Network services that can be rapidly deployed at scale.”
Compute, Network, Database, and Storage are four the most important components in AWS. These resources allow our application to work in the cloud.
In learning AWS, our first target is to design and implement a well-architected solution for different types of projects by using AWS services. The beginner course, What is Cloud Computing? offered by Cloud Academy is an excellent for getting started with AWS.
Additionally, I strongly recommend that anyone new to the cloud read Amazon’s white paper, Overview of Amazon Web Services. This will help you gain a good understanding of cloud computing, especially the components implemented by AWS.
2. Get familiar with SPI (SaaS, PaaS, IaaS) ?
SPI is an acronym for the most common cloud computing service models, Software as a Service, Platform as a Service, and Infrastructure as a Service.
– SaaS applications are designed for end-users, delivered over the web. Examples include Google’s Google Docs, Microsoft’s Office 365 online, etc.
– PaaS is the set of tools and services designed to make coding and deploying those applications quick and efficient.
– IaaS is the hardware and software that powers it all – servers, storage, networks, operating systems, etc.
3. Take a look at the three major platforms
Since cloud computing has rapidly developed, we have numerous cloud providers all over the world. The current leading cloud providers are AWS, Microsoft Azure, and Google Cloud Platform. Take a look at Ivana Sabo’s post comparing the platforms to understand which one is best for you.
4. Understand key cloud concepts
You’ll want to really understand the concepts—scalability, high availability, disaster recovery, serverless, etc.—that make cloud computing such a powerful service.
Here is a simple example from my own experience. The cloud trend is really about serverless computing. AWS defines serverless as running code without thinking about servers. The component that implements this concept is AWS Lambda. AWS Lambda automatically runs your code without requiring you to provision or manage servers. It really allows engineers to focus on code and not on servers.
Dive into the AWS cloud
1. Have a good understanding of Best Practices in architecting an AWS cloud solution
For this area, I’d like to recommend two great white papers: Architecting for the Cloud: AWS Best Practices, published in Feb 2016 and AWS Well-Architected Framework published by Amazon in November 2016. These are excellent resources that explain how to design a well-architected solution with AWS.
2. Build your content knowledge
For me, Cloud Academy was an excellent resource for learning about AWS. I recommend starting with the following Cloud Academy learning paths for in-depth AWS knowledge: Fundamentals of AWS and Operations on AWS learning paths on CA.
3. Learn by doing
Before you get a real cloud job, you’ll need actual experience working in the platform. I highly recommend the guided, real-world experience on the AWS platform offered by Cloud Academy’s Hands-on Labs. Every session of hands-labs provides you with a temporary account and credentials for the AWS console. You can access any related service to complete your lab. It’s just like working in a real environment.
Personally, I have a lot of experience using Cloud Academy labs. I found them to be very qualified, with detailed descriptions for explaining every step. Some new labs also provide working scenarios where you help discover the solution. This type of experience is very important for understanding how can you implement your solution and why to make one choice over another.
4. Some tips about AWS certification
After comparing the AWS exams, their range, and the level of difficulty of questions (and by talking with other certificate holders), I recommend starting with the from AWS Certified Solutions Architect Associate exam. The AWS Certified Developer Associate exam is very similar preparation-wise, but has a greater focus on implementation, and you should know more about DynamoDB. At the associate level, the most complex exam is the AWS Certified SysOps Administrator Associate, which requires much more preparation compared to the other two exams.
Fortunately, we have various resources via internet, and Cloud Academy’s AWS Certifications Prep learning paths are great resources to help you succeed. Using Cloud Academy, the quiz sessions are a very useful tool to build your knowledge. Each week, I would choose my weakest area and take at least 30 questions in test mode. This allowed me to build my comprehension of that service little by little. Another great resource for preparing for an AWS CSA exam isJohn Cell’s post, AWS certified Solutions Architect associate: A study guide.
5. Continuous learning
It’s important to keep building your knowledge in the areas that align with your future goals. So, if you’re like me, a software engineer who wants to be a full-stack or DevOps engineer, continuous integration, continuous delivery, and Docker technologies would all bring real value to your current projects.
For these, I recommend auditing Cloud Academy’s courses in DevOps Fundamentals and Docker and Container Technologies .
If you’re studying and working full time, balancing it all might be a little tricky. Here are the strategies that have worked for me:
1. Set your goals
Are you working toward advancing in your career or will you be launching a startup or a new business? Establish your short term and long term goals to help guide your learning path.
In my experience, I first completed all of the foundational courses (all of the fundamentals courses at CA), and then modified my course list based on my next goal. For example: if you want to build and administer your environment, I recommend the operations course (Operations on AWS ). To prepare for AWS certifications, I recommend that you start directly with the Solutions Architect—Associate Certification for AWS exam prep learning paths.
2. Make studying a daily habit
On a weekly basis, I chose at least one course to complete per week. I tried to complete one medium-difficulty lab every two days, and an easier lab every day. Taking at least one quiz per day is also useful. As I mentioned before, if I detected an area where I was week, I would do at least 30 questions for that topic.
3. Always keep yourself up to date
For those who are motivated to pass Microsoft Azure or AWS solution architect certification, and especially for the professional level AWS certifications, it’s important to keep your content knowledge up to date with the latest releases and applications.
Getting started with AWS in real life
Finally, find an AWS project that you can work on by creating your own, or finding a real world project through friends. I helped a friend build his personal website where he could showcase his project portfolio. He needed to find an inexpensive way to host the site and reduce downtime at peak times. This solution would be elastic and flexible to grow with the business.
The advantage of this choice is that it ensures that his project would be delivered using a global network of edge locations since his content would be hosted in S3 as an origin server. And, it would be well-integrated with other AWS services in the future.
If you want to learn how to setup CloudFront with your static website, the Cloud Academy lab Configuring a static website with S3 and CloudFront is very helpful.
The cloud is not only a trend, it is the future. Stay tuned for Part 2, where I will share more of my experiences of diving into the cloud.
How to Unlock Complimentary Access to Cloud Academy
Are you looking to get trained or certified on AWS, Azure, Google Cloud Platform, DevOps, Cloud Security, Python, Java, or another technical skill? Then you'll want to mark your calendars for August 23, 2019. Starting Friday at 12:00 a.m. PDT (3:00 a.m. EDT), Cloud Academy is offering c...
What Exactly Is a Cloud Architect and How Do You Become One?
One of the buzzwords surrounding the cloud that I'm sure you've heard is "Cloud Architect." In this article, I will outline my understanding of what a cloud architect does and I'll analyze the skills and certifications necessary to become one. I will also list some of the types of jobs ...
Boto: Using Python to Automate AWS Services
Boto allows you to write scripts to automate things like starting AWS EC2 instances Boto is a Python package that provides programmatic connectivity to Amazon Web Services (AWS). AWS offers a range of services for dynamically scaling servers including the core compute service, Elastic...
Content Roadmap: AZ-500, ITIL 4, MS-100, Google Cloud Associate Engineer, and More
Last month, Cloud Academy joined forces with QA, the UK’s largest B2B skills provider, and it put us in an excellent position to solve a massive skills gap problem. As a result of this collaboration, you will see our training library grow with additions from QA’s massive catalog of 500+...
DevSecOps: How to Secure DevOps Environments
Security has been a friction point when discussing DevOps. This stems from the assumption that DevOps teams move too fast to handle security concerns. This makes sense if Information Security (InfoSec) is separate from the DevOps value stream, or if development velocity exceeds the band...
Test Your Cloud Knowledge on AWS, Azure, or Google Cloud Platform
Cloud skills are in demand | In today's digital era, employers are constantly seeking skilled professionals with working knowledge of AWS, Azure, and Google Cloud Platform. According to the 2019 Trends in Cloud Transformation report by 451 Research: Business and IT transformations re...
Disadvantages of Cloud Computing
If you want to deliver digital services of any kind, you’ll need to estimate all types of resources, not the least of which are CPU, memory, storage, and network connectivity. Which resources you choose for your delivery — cloud-based or local — is up to you. But you’ll definitely want...
Google Cloud vs AWS: A Comparison (or can they be compared?)
The "Google Cloud vs AWS" argument used to be a common discussion among our members, but is this still really a thing? You may already know that there are three major players in the public cloud platforms arena: Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP)...
Deployment Orchestration with AWS Elastic Beanstalk
If you're responsible for the development and deployment of web applications within your AWS environment for your organization, then it's likely you've heard of AWS Elastic Beanstalk. If you are new to this service, or simply need to know a bit more about the service and the benefits th...
How to Use & Install the AWS CLI
What is the AWS CLI? | The AWS Command Line Interface (CLI) is for managing your AWS services from a terminal session on your own client, allowing you to control and configure multiple AWS services and implement a level of automation. If you’ve been using AWS for some time and feel...
Cloud Academy’s Blog Digest: July 2019
July has been a very exciting month for us at Cloud Academy. On July 10, we officially joined forces with QA, the UK’s largest B2B skills provider (read the announcement). Over the coming weeks, you will see additions from QA’s massive catalog of 500+ certification courses and 1500+ ins...
AWS Fundamentals: Understanding Compute, Storage, Database, Networking & Security
If you are just starting out on your journey toward mastering AWS cloud computing, then your first stop should be to understand the AWS fundamentals. This will enable you to get a solid foundation to then expand your knowledge across the entire AWS service catalog. It can be both d...