Cloud Resume Challenge

The Cloud Resume Challenge is a self-paced, hands-on learning experience designed to help individuals build and showcase their cloud skills by creating a serverless web application using AWS and Azure

The cloud resume challenge is a fun project-oriented way to get hands-on skills and experience working in the cloud. The end product is you hosting your resume on a cloud platform and showcasing your journey to potential employers. The challenge is more of a suggested approach, not a how-to guide. You get pointed in the direction of travel, but it’s up to you to figure out how to implement a solution.

I wanted to expand my current knowledge from a fresh perspective and pick up some new skills I do not use in my daily jobs, such as full-stack development, CSS, or Python. I targeted both Azure and AWS cloud platforms as this is my area of expertise, and I was interested in working with the similarities and differences between the two platforms.

The challenge is made up of a numer of different systems to learn and implement as detailed below, plus “mods” which are optional but provide a deeper understanding or add extra learning opportunities, such as DNSSEC.

Skills experienced

HTML

CSS

JavaScript

Custom DNS

Certificates (SSL)

DNSSec

Python

GitHub

IaC (Terraform)

CI/CD (GitHub Actions)

AZ CLI

Azure PowerShell

Azure Storage Account (Static Website)

Azure CDN + Azure FrontDoor

Azure CosmosDB

Azure Functions

AWS CLI V2

AWS S3 (static website)

AWS CloudFront

AWS DynamoDB

AWS API Gateway

AWS Lambda

Chunk 0 | certification

(Step 1)

  1. Get certified in the cloud foundation certificates in Azure and AWS

Chunk 1 | front-end

(Steps 2-6)

  1. Create a website: Create a website in HTML
  2. Style the website: Add style with CSS
  3. Host the Website: Publish the website on a static website service in the cloud
  4. Secure it with HTTPS: Secure the website URL with HTTPS
  5. Custom Domain Name: Publish the URL on a domain you own yourself

[Security Mod] Protect the DNS configuration from “man in the middle attacks”

Chunk 2 | back-end

(Steps 8-10, 13)

  1. Create a database: to store the visitor counter data using Azure CosmosDB or AWS DynamoDB

  2. Create an API: to communicate between the JavaScript and the database using Azure Functions or AWS API Gateway and Lambda written in Python and include code testing.

  3. Create a GitHub repository to store the front-end and back-end code and use automation to create a CI/CD pipeline whenever there are changes

Chunk 3 | Front-end / back-end integration

(Steps 7,11)

  1. Javascript: create a visitor counter on the website
  2. Test: create tests for the code

Chunk 4 | Automation / CI

(steps 12,14,15)

  1. Infrastructure as Code: create the entire stack as IaC
  2. CI/CD (backend:)

Chunk 0 | Certification

Learn the foundation-level knowledge for a cloud provider and take the certification exam

Chunk 1 | Building the front end

Create and deploy a cloud-hosted website at a live URL that anyone can access

Chunk 2 | Building the API

Create a serverless API that updates a visitor counter in a database

Last modified July 21, 2024: update (e2ae86c)