My Cloud Resume Challenge: A Journey from Zero to Hero
The AWS Cloud Resume Challenge by Forrest Brazeal
A quick back-story on how I started this challenge!
It all began just after I had wrapped up my AWS Cloud Practitioner certification. You know that feeling you get when you finish something big – like crossing the finish line of a marathon. That was me, only to wrap around my mind that this was just one marathon and that this was just a start.
Just when I thought it was time to kick back and relax, I heard about the Cloud Resume Challenge. Here was a chance to not just show off what I had learned, but to put it into practice. It was like being handed the ball in the final moments of a game – I just had to take the shot.
Chunk 1: Building the Front End
Every great story has to start somewhere, and mine began with HTML. This wasn’t just any resume; this was the resume – the one that would live in the cloud. Forget about the usual Word docs or PDFs we’re used to; this was about getting back to the basics. Writing my resume in HTML felt a bit like preparing ugali(East African meal) from scratch – simple ingredients, but the results can be impressive if done right. And just like that, the challenge journey kicked off.
Next up was CSS, the part where I could give my plain HTML some style. It takes something good and makes it even better. With a few tweaks here and there, my resume transformed from something basic into something that looked pretty cool. It wasn’t flashy, but it had that subtle, well-done vibe.
Now, what good is a well-cooked meal if no one gets to taste it? That’s where Amazon S3 came in – my very own 'kibandaski' (food stall) where I could proudly display my resume for the world to see. With a few commands, I deployed my resume to an S3 bucket, and just like that, it was live. The website was up, but I wasn’t done yet.
Imagine the same 'kibandaski' – you’d want to know how many customers come by, right? That’s where the visitor counter came in. Using JavaScript and DynamoDB, I set up a way to track how many people checked out my resume. Every time someone visited, the counter ticked up, and DynamoDB kept track of the numbers.
Chunk 2: Building The API - My Brain Officially Melted-just kidding😂
Here's where things went from "challenging" to "full-blown existential crisis." DynamoDB, Lambda functions, Python code – it was enough to make a grown adult whimper. But as Nelson Mandela once said, "If you learn from your mistakes, you can truly be said to be educated." (Although, I'm pretty sure he wasn't talking about deploying a serverless application.)
Well, the visitor counter needed more than just JavaScript. To make everything work smoothly, I needed an API to talk to DynamoDB, and for that, I turned to Python – the mzee wa kazi of programming languages. Using the boto3 library, I managed the AWS services with ease. It was a bit of a learning curve, but hey, “No pain, no gain,” right? With AWS API Gateway and Lambda, I set up an API that made sure everything was in sync.
The hands-on challenges at The Ultimate API Challenge seem like a great, free way to get some practice building and invoking different toy APIs.
Source control
GitHub Skills is a good way to practice your git and hub skills.
You may also enjoy other interactive Git tutorials such as Learn Git Branching and Oh My Git.
Chunk 3: Automation/CI
This is where the term Infrastructure as Code (IaC)/Infrastructure as a Code (IaaC). Having interacted with it during my cloud practitioner journey, I learnt that it is a way to managing IT infrastructure that leverages code to define and provision resources. Instead of manually configuring servers, networks, and other components, IaC allows you to describe these resources using code in a template and deploy them, making the process more efficient, repeatable, and less error-prone.
There are several tools that are commonly used in this part -IaC. You could use AWS CloudFormation which is an AWS's proprietary IaC service that uses JSON or YAML templates to define resources. Terraform which is by far a popular, most common open-source tool that supports multiple cloud providers and infrastructure technologies. Whether your DevOps team works with AWS, Azure, or Google Cloud, Terraform is likely to put in an appearance. Terraform uses its own domain-specific configuration language called HCL.
Not to make it easier for you to do the challenge but to act as a guide, here is a guide to help you in this challenge!
Continuous Integration and Deployment. CI/CD
Finally, I set up GitHub repositories for my front end and back end. Every time I made a change, GitHub Actions would kick into gear, running tests and deploying updates automatically with the help of GitHub Actions.
Reflections: Was it worth it?
Absolutely! This Cloud Resume Challenge was a rollercoaster ride of frustration and triumph. Did I end up with the most aesthetically pleasing resume ever? Maybe not. Did I learn a whole heck of a lot about cloud technologies? Heck yes! Most importantly, did I create a resume that showcases my willingness to learn and adapt? You bet your sweet pixels I did. So, to any aspiring cloud warriors out there, take it from me: this challenge is a baptism by fire (or rather, a baptism by cloud🤭), but the rewards are well worth the struggle. Go for it! It’s a fantastic way to learn, grow, and showcase your skills.
P.S. My visitor counter finally hit triple digits! Clearly, my resume is a slow burn... much like a fine wine🙃.
We did it!! and here's to the next challenge!
Feel free to reach out on Twitter or LinkedIn if you’ve got any questions and view the project in GitHub.
Subscribe to my newsletter
Read articles from Daniel-Caleb Ronoh directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by