This article is my attempt to describe the best way to get your first job in DevOps working with AWS services, either for people with previous tech experience or none. If you are starting on this journey feel free to leave a comment so I can give personalized advice.
Who this article geared towards?
This article is geared more towards people who are completely new to the cloud and possibly completely new to IT all together.
- With the right amount of work ethic and brain power you can break into the cloud
- If you are capable of thinking technically and problem solving you should be capable of this
At the end of this path you should be well on the way to becoming a DevOps Engineer. What is a DevOps Engineer? Here is AWS’ answer.
Requirements before beginning
- Motivation
- Drive
- Clear Goals
- If you don’t know where you want to go then you wont be able to begin planning how to get there
How long will it take?
This all depends on how hard you work and your previous level of experience.
At the fastest, I would say 2-3 months unless you already have some sort of IT work experience.
- Don’t fret, this is still much faster than just one semester of college and way cheaper
Defining some terms
- What is the Cloud?
- Cloudflare’s answer
- Essentially, the cloud is just someone else’s computers that you have some access to
- What is DevOps?
- What is Python?
The plan
This is my recommended path for getting into AWS, it doesn’t mean this is the best or only way for you to get into it.
IMPORTANT! If you find any other info that may be useful to others please leave it in the comments.
Step 0: Set your intentions, decide what it is you want to get out of this
- Do you want to be a DevOps Engineer or Cloud Solutions Engineer/Architect of some sort?
- If so, this is explicitly geared towards you.
- Do you want to become a Cloud Developer?
- This process should work for you all the same. I would recommend subbing out the Solutions Architect - Associate for the Developer - Associate though.
- Don’t know what path to take?
- Do some research on what different types of jobs are available in the cloud
- Make a LinkedIn account and look for some AWS people. Add them and let them know you are trying to break in. You should be able get some good 1 on 1 free advice.
Step 1a: Get the AWS Certified Cloud Practitioner
This is the entry level AWS cert. It is designed for non-technical individuals to get to know AWS terminology. For anyone just getting started in the cloud this will be an easy win and a good moral booster. It is quite an easy exam from what I can gather(I skipped this one).
I would recommend about 20-25 hours of study before taking the CCP. If you are really motivated and have the time, this can be accomplished in 1 week. I would recommend completing this whole step in 1-2 weeks if at all possible.
First, read through the AWS documentation on this cert.
- Go through the Foundational-Level AWS Certification guide here
- Save the 2 white papers for later, read them before bed or when you have time
- You don’t need to memorize these, just give them a skim. They will make more sense once you’ve got partway through your training course so I recommending holding off a bit
- Save the 2 white papers for later, read them before bed or when you have time
- It would also be worth while to read this detailed guide on the cert from Tutorials Dojo by Adrian Formaran
- Do some Google searching, look for other people’s blogs posts and get their advice too.
- Important! If you find another article you like please leave it in the comments to help others
Then, start on a training course.
- Paid Recommendations
- A Cloud Guru
- You can try and power through this cert in 1 week, allowing you to complete this entirely on the free trial
- Linux Academy was bought by A Cloud Guru, if you read about Linux Academy anywhere know that LA gives you access to all the A Cloud courses as well
- A Cloud Guru
Acloudguru is the best cloud training platform out there, if your friend is able to pass the final exam on the cloud practitioner course, the AWS exam will be a piece of cake.
Cloud Architect working for Amazon
- Free Recommendations
- Amazon’s AWS Cloud Practitioner Essentials (Second Edition)
- I don’t know anyone who has actually done this so if you decide to only use free materials let me know how it went in the comments
- Amazon’s AWS Cloud Practitioner Essentials (Second Edition)
Next, schedule your exam. Do this about 25% the way though your training course.
- This will provide you with motivation to actually stay on top of your studying
- You’ve payed for it and set the date, now you can’t allow yourself to procrastinate
- This is how I motivate myself, I buy around 25% the way through even for Pro level AWS certs
- Schedule it out for how long you will think you need to finish studying
Finally, do some review
- Take practice tests
- Amazon’s own practice questions
- A Cloud Guru’s final Practice exam
Step 1b: Start networking via LinkedIn and other online communities
Look for discord or slack groups to join. Introduce yourself and let them know your intentions. People tend to be pretty helpful in this industry.
It is very important to have a mentor in this process. They will be able to answer questions and help connect you with people. Try your best to make friends with someone already in the industry.
Step 2
These are all skills you will need to succeed succeed as a DevOps engineer. Work on these doesn’t have to fall in any particular order or even need to be completed before starting steps 3 and 4 but I recommend having a familiarity will all the topics before moving on. This will help make the next steps much easier.
Step 2a: Master the art of Googlefu
Being able to problem solve is probably the number 1 most important skill in this field. You will be throw on many projects where you just get told “figure it out, I know you’re smart enough.” Google is your friend. For pretty much anything you do, someone has already done it and either written an article or made a stack overflow post asking for help. Use these.
Remember, if you are writing any sort of code always add the links you found useful into your comments. This will pay dividends and help you a lot whenever you need to go do some troubleshooting.
20 Google Search Tips to Use Google More Efficiently
Step 2b: Learn some basic Python
This will be a crucial skill for being able to get a job and complete a project. By no means do you need to be a master but you do need to know enough to know what to google for when working on a project.
If you reeeeeeally want to be more of a front end person(what is a front end developer) then this can be subbed out for NodeJS.
Python Courses
Step 2c: Learn some basic Linux
Start to learn some Linux. As a DevOps Engineer, developer, Sys Admin, or really anyone in tech, you will likely be doing a lot of work with Linux. Most servers run Linux and pretty much all containers do. By no means do you need to be a pro, but knowing the basics will help out a lot and be a good resume booster. Make sure to add whatever you do for this step to your resume.
- Dual boot Ubuntu on your PC and do your work there. Try to use the CLI as much as possible
- Run through a crash course on Linux to get you started
- Courses
- ACloudGuru: Linux Operating System Fundamentals
- Linux Foundation: Introduction to Linux (LFS101)
Step 2d: Learn some basic Networking
Networking is a skill many individuals in the cloud are lacking.
Step 3: Complete a technical project or two for your GitHub
- Learn Git, not just GitHub
- Learn the basics of the CLI
- Don’t stress too hard, you will learn this by osmosis
- Download an IDE, I use Visual Studio Code normally
- Complete the Cloud Resume Challenge
- Yes, this will be hard, but it will really show that you are capable of doing work, not just passing tests
- Complete this while going through your study materials for the Solutions Architect - Associate
- Whenever you touch a new technology, go through the section on it
- A Cloud Guru now does regular challenges thanks to Forrest Brazeal
- Check those out if you have an account
- Follow him on LinkedIn for more training advice
- Come up with a project you think would be fun
- A few potential ideas, make sure you write your infra in CloudFormation, Terraform, or AWS CDK so you have something to put into Git. Make sure to write your Lambda functions in AWS SAM
- Always wanted a blog? Stand up an Nginx / PHP EC2 instance, connect it to a free tier RDS instance, setup automated backups to S3
- Need to take care of your backups better? Write a python script that syncs all your data to S3.
- Make sure to only sync files which are new or have changed since the last sync so you don’t endup with a high data transfer fee
- Want to protect against Crypto lockers? Turn on versioning so you can always get the previous versions of your files
- Make sure to look into the S3 storage tiers to save money on storing your files
- A few potential ideas, make sure you write your infra in CloudFormation, Terraform, or AWS CDK so you have something to put into Git. Make sure to write your Lambda functions in AWS SAM
Step 4: Get the AWS Solutions Architect - Associate
First, read through the AWS documentation on this cert.
- Go through the Foundational-Level AWS Certification guide here
- Make sure to read the recommended white papers
Then, start on a training course.
- Paid Recommendations
Next, buy your exam. Do this about 50% the way though your training course.
- Schedule it out for how long you will think you need to finish studying
- This will provide you with motivation to actually stay on top of your studying
Finally, do some review
- Take practice tests
- Amazon’s own practice questions
- A Cloud Guru’s final Practice exam
- Look for a practice exam on Udemy
- The good udemy practice exams are harder than the real thing
Step 5: Start applying to Jobs
LinkedIn is your friend.
- First, make a resume in PDF form, I use Google docs and export to PDF
- Add as many technical / cloud / AWS recruiters as you can find on LinkedIn
- Send them your resume. Let them know you are just starting out and would like a call
- Ask for tips on your resume, their job is to get you a job. They see 1000s of resumes and know better than anyone else how to improve yours
- Ask what else you can do to make yourself a good candidate
- Be candid, ask the recruiters what sort of salary you should be looking for. They are going to know best what is reasonable and you can trust them because they typically paid a % of your salary when you get hired
- Send them your resume. Let them know you are just starting out and would like a call
- A lot of the AWS / Cloud Slack and Discord groups will have a jobs section, check there
Success thus far
- Acquaintance hired as an entry level DevOps engineer
- Prior experience
- Had many years experience in the trades
- No college at all, only a high school diploma
- No formal IT experience
- No Programming experience
- Some experience from years ago learning computer repair and basic networking
- Experience working on PCs
- Tasks undertaken before getting first cloud job
- Acquired AWS Certified Cloud Practitioner
- Did part of a Python course
- Completed the Cloud Resume Challenge
- Started studying for the AWS Solutions Architect - Associate
- Lots of personal networking via LinkedIn
- Prior experience