From Paper to Pixels: The Cloud Resume Challenge

Greg Salmon
5 min readDec 6, 2023
Real photo of a resume scanning bot

The Problem

Applying for jobs sucks. From building courage and putting yourself out there to sitting through tedious interviews, finding a sound position has become difficult and tiresome. While a major fix to this is near impossible, we can make it a bit easier. Let's focus on the resume.

I believe there are 3 ways of giving someone a resume.

1: The Old Fashioned Paper Resume

Imagine for some reason you are stuck without internet (terrible, I know). You want to apply for a hot new tech job because, well, this job is for someone who knows how to get the internet to work again. So here you are, in some unimaginable post-apocalyptic nightmare, known only to people over the age of 50. You need to apply for this job, but there is no LinkedIn, no Indeed, no Handshake! So you walk to the office, hand the manager your resume, and say “You need to hire me, I can fix the internet.” She laughs and tears up your hastily written resume.

2: A Work of Art (Typed out in Microsoft Word)

Okay, so that didn’t work. Maybe the manager of that internet company isn’t a fan of your handwriting or something. Let's try a new approach, use the power of TECHNOLOGY! After all, just because the internet stopped working doesn’t mean we can’t use text editors. Luckily, you have some experience with a computer. You open Microsoft Word, figure out all the margins, and even add spacing bars to separate your sections. It’s beautiful. So you run back to the manager of the internet company with your laptop in hand (Unfortunately email won’t work because of the whole lack of internet debacle). You open the laptop and show her the resume. She looks at it for a moment and finally offers an interview. The first question comes up: “So, what is your experience with full stack development?” You freeze. She shows you the door.

3: Physical Proof

In your disbelief that you didn’t secure the job, you decide to take matters into your own hands. Using your professional networking skills, you find that one ethernet cable that an intern tripped over and plug it back in. The internet is back! You can finally send your resume to potential employers, rather than physically seeking them out. But wait, you want to have proof you are a competent full-stack developer. So you put your resume on the internet for anyone and everyone to see, built from scratch.

Enter the Cloud Resume Challenge, an experience I recommend to anyone trying to put their foot in the door in a technical job. The challenge provides concrete examples of full stack, infrastructure, and networking experience for whoever can accomplish the task.

My Experience

The Cloud Resume can be broken down into two main components: frontend and backend development. I utilized several programming languages and relied on AWS to host and develop the website.

The Frontend

While not everyone decides to start their journey with content, I chose to write out my resume in HTML and CSS as a first step. While I am by no means an expert in the language, I found it easy enough to pick up and mess around with the formatting to get it to my liking. As part of the challenge, implementing a working function written in JavaScript is essential.

I utilized AWS Lambda, a serverless computing platform to implement a visitor counter function. After writing out the basic code, I implemented it into my HTML and connected it to a NoSQL database using DynamoDB. While it may seem like overkill, connecting the visitor counter to the database gave me room to expand. In the future, I can gather more information from my visitors which I can potentially analyze.

The Backend

The backend was significantly more time-consuming. There were four main steps needed to implement my website.

  1. Deploy the code as a static website
  2. Gain a security certificate
  3. Acquire a custom DNS
  4. Route the DNS to your static website

Deploying the Code: My method of choice to implement my website statically was through Amazon S3, a cloud storage system that can store files.

After uploading the files, by utilizing Amazon CloudFront I was able to host the site on the internet. However, there are two issues with this. First, the link to the website is difficult to manage. No one is going to want to visit a website with a hard-to-type URL (more about this later). Second, the website is not secure.

It is easy to tell if a website you are on is secure or not by simply looking at the URL. If it starts with “HTTPS://…” the website requests and responses are encrypted, something essential in this day and age. If you visit a website and it starts with “HTTP://” (notice the missing “S”), tread carefully. It is dangerous to pass sensitive data through websites without a secure protocol. The information passed through will be sent in plain text — not encrypted — which can lead to trouble.

Gain a security certificate: Luckily for us, registering a website for HTTPS is a relatively easy process. Amazon has a service called Amazon Certificate Manager (ACM) where you register your website, wait a few moments, and if your website is proven safe, you will receive a certificate allowing the use of HTTPS rather than HTTP.

I was worried about this step initially. How do I guarantee my website is secure? Will Amazon provide me with a certificate? Luckily for me, my website has no forms or anywhere for someone to make requests or responses (aside from initially loading the page), so the process was simple.

Acquiring a custom DNS: Remember four paragraphs ago when I mentioned the ugly URL? Let's fix that. There are many different services where you can buy unique custom domains. I chose Name Cheap because — as the name suggests — it is cheap! I think the most confusing part of this process is configuring the DNS to your prebuilt S3 URL. It is important that you redirect it correctly, which requires changes on both Name Cheap and yet another Amazon service, Amazon Route 53.

Route the DNS to your static website: Route 53 allows you to connect the custom domain to the original URL. So instead of typing out “your-domain.com.s3-website-us-east-1.amazonaws.com” all that is required is simply “gwsalmon.com” (shameless plug to get that visitor counter up).

Concluding Thoughts

While this project can be time-consuming and may seem like overkill for simply creating a resume, it has benefits. Not only does it show experience utilizing AWS, a service adopted by most companies, but it also provides an impactful project that can be shown on your resume (ideally your cloud resume). Thank you for following my journey and good luck landing that fixing the internet job!

--

--