My Authors
Read all threads
Introducing the #CloudResumeChallenge. I'm volunteering my network to help you get your first job in the cloud. But I can only share a certain kind of resume. Thread -> forrestbrazeal.com/2020/04/23/the…
First, you must not have prior professional IT experience on your resume (except maybe something super entry-level like helpdesk), and you can't have a college degree in a tech-related major. I want to focus on helping new people break into the industry. #CloudResumeChallenge
**If you are fortunate enough to have a job in the cloud already, please share the accompanying blog post with #CloudResumeChallenge -- let's get it in the hands of the people who need it.** Now, the important conditions. forrestbrazeal.com/2020/04/23/the…
1. Your resume needs to have the AWS Cloud Practitioner certification on it. No cheating: include the validation code. If the $100 USD cost is a dealbreaker for you, let me know and I'll see if I can help. Some exam prep resources: selikoff.net/2019/01/20/how… #CloudResumeChallenge
2. Your resume needs to be written in HTML. Not a Word doc, not a PDF. Here is an example of what I mean: codepen.io/emzarts/pen/OX… #CloudResumeChallenge
3. Your resume needs to be styled with CSS (w3schools.com/css/). No worries if you're not a designer -- neither am I. It doesn't have to be fancy. But we need to see something other than raw HTML when we open the webpage. #CloudResumeChallenge
4. Your HTML resume should be deployed online as an Amazon S3 static website. No Netlify or GitHub Pages - they make things a little too abstract for our purposes. (docs.aws.amazon.com/AmazonS3/lates…) #CloudResumeChallenge
5. The S3 website URL should use HTTPS (cloudflare.com/learning/ssl/w…) for security. You will need to use Amazon CloudFront (aws.amazon.com/blogs/networki…) to help with this. #CloudResumeChallenge
6. Point a custom DNS domain name (about $10) to the CloudFront distribution, so your resume can be accessed at something like `my-c00l-resume.com`. You can use Amazon Route 53 (aws.amazon.com/route53/) or any other DNS provider for this. #CloudResumeChallenge
7. Your resume webpage should include a visitor counter that displays how many people have accessed the site. You will need to write a bit of Javascript to make this happen. Here is a helpful tutorial (codecademy.com/learn/introduc…) to get you started. #CloudResumeChallenge
8. The visitor counter will need to retrieve and update its count in a database somewhere. I suggest you use Amazon's DynamoDB (aws.amazon.com/dynamodb/) for this. Here is a great free course (linuxacademy.com/course/dynamo-…) on DynamoDB. #CloudResumeChallenge
9. Do not communicate directly with DynamoDB from your Javascript code. Instead, you will need to create an API (medium.com/@perrysetgo/wh…) that accepts requests from your web app. I suggest using AWS's API Gateway and Lambda services for this. #CloudResumeChallenge
10. You will need to write a bit of code in the Lambda function; you could use more Javascript, but it would be better to explore Python and its boto3 library for AWS (boto3.amazonaws.com/v1/documentati…). Here is a good, free Python tutorial (learnpython.org). #CloudResumeChallenge
11. You should also include some tests for your Python code. Here are some resources (realpython.com/python-testing/) on writing good Python tests. #CloudResumeChallenge
12. You shouldn't configure your Lambda, etc by clicking around in the AWS console. Instead, define them in an AWS SAM template (aws.amazon.com/serverless/sam/) and deploy them using the SAM CLI. This is called infrastructure as code (hashicorp.com/resources/what…). #CloudResumeChallenge
13. You do not want to be updating either your back-end API or your front-end website by making calls from your laptop, though. You want them to update automatically whenever you make a change to the code. This is called "CI/CD" (help.github.com/en/actions/bui…) #CloudResumeChallenge
13 cont. Create a private GitHub repository (help.github.com/en/github/crea…) for your backend code. Set up GitHub Actions(help.github.com/en/actions/get…) such that when you push an update to your SAM template or Python code, your Python tests get run. #CloudResumeChallenge
14. If the tests pass, your GitHub Action should package the SAM application (Lambda, API Gateway, DynamoDB) and deploy it to AWS. #CloudResumeChallenge
15. Create a 2nd private GitHub repository for your website code. Create GitHub Actions such that when you push new website code, the S3 bucket automatically gets updated. (You may need to invalidate your CloudFront cache (docs.aws.amazon.com/AmazonCloudFro…) as well.) #CloudResumeChallenge
*Important note: DO NOT commit AWS credentials to source control! Bad hats will find them and use them against you!* #CloudResumeChallenge
16. Finally, in the text of your resume, you should link a short blog post describing some things you learned while working on this project. Dev.to is a great place to publish if you don't have your own blog. #CloudResumeChallenge
17. And that's it. When you're done, add my GitHub username (@forrestbrazeal) as a collaborator on your repos. If you have met the conditions above, I will give you a personalized code review, then make as much noise about you as I can (including sharing your awesome blog post!)
Now, obviously, I have no right to tell you to do any of this. You will have to open lots of browser tabs. It will take you quite a few long evenings. You might reasonably conclude that the #CloudResumeChallenge isn't worth having your resume shared with a few thousand people.
But if you give this project a try and realize that you hate it, or you're just not interested, you'll have learned a valuable lesson about whether or not you really want a career in the cloud -- because these are the types of problems that real cloud engineers really work on.
And I believe that if you can, in good faith, complete the #CloudResumeChallenge, you will already have more useful skills than a lot of people who graduate from university computer science programs.
Specifically: you will understand something about full-stack software development, version control, infrastructure as code, automation, continuous integration and delivery, cloud services and "serverless", application security, and networking.
And you'll have learned by doing, because I didn't give you enough instructions to figure any of this out without going down some late-night rabbit holes. You will have demonstrated the number-one skill in a cloud engineer's toolbox: the ability to learn fast and google well.
Those are skills you can take to a job interview. And I'll do my best to help you get one.

Good luck! #CloudResumeChallenge
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with Forrest Brazeal

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!