My Cloud Journey
Published: 2022-12-13 02:20:51

[](rnatividad.com)


**The Problem**

The Cloud Resume Challenge represents a culmination of the technical background I gained and overall was an incredible experience.  This was probably the first project I’ve accomplished in my ISBA major that I was truly excited for, and I was eager to learn how all of the various pieces connected.  In completing this, I would say that gathering the technical knowledge and implementing it into a real-life example was the biggest obstacle I faced.

**The Approach**

To complete this challenge, I followed a distinct path where I first built the infrastructure of the front end website then moved into developing the back end API, and finished the process by automating it all.  I did this process mostly manually, honestly.  I didn’t become super comfortable with the CloudShell commands and didn’t acquire Terraform knowledge till later, but I feel like doing this manually definitely allowed for me to understand these processes a little better as there was more context I was able to learn from.  The steps of my journey are as follows:

**Front-End Development**

To begin developing the front end, I created the initial HTML file that I would eventually use to house my resume.  I saved the CSS aspect of this till the very end, as I wanted to make sure everything else worked first (and I had little experience with CSS to begin with).  This initial file was then uploaded to an S3 bucket to be deployed online as an AWS S3 static website.  The static website would eventually be reflected on my own domain (rnatividad.com), but first I had to ensure that this website was secure, using HTTPS as security, which I implemented using AWS CloudFront and Certificate Manager.  CloudFont ensured the security of my website, reinforcing the concept that any data transmitted between a user’s browser and the website is secure (and thus cannot be intercepted by third parties).  Certificate Manager obtained the SSL certificate which was necessary to establish the connection between the web server and a user’s web browser as well as enabling HTTPS.  The final step of the front-end development was to direct a custom DNS domain name to my CloudFront distribution which would ultimately be the culminating factor in reflecting my resume onto my own custom domain.  I accomplished this process in AWS Route 53, where I created an initial hosted zone to hold all of my DNS records, where I was able to specify the IP address of my website and other details including how my domain should be resolved.  After the process in this application, I had gained ensured access to my website utilizing my domain name, rather than the IP address.  

**Back-end Development & Automation**

The back-end development of my Cloud Resume would establish the creation of the visitor counter, which autoupdates per user visit.  The first step of this was to develop the initial javascript to create the visitor counter that displays this information.  I then connected these together so that the visitor counter will retrieve & update its count in an AWS DynamoDB database.  To ensure that the DynamoDB is not directly contacted, I utilized AWS Lambda and API Gateway that accepts requests (visits) from my website and communicates this information to the Dynamo DB database.  I created a Lambda function that was connected to the DynamoDB resource, specifically a table within the resource to keep the visitor count.  I then incremented this index counter to auto update, thus completing the back-end development. 

**The Challenges**

With this entire challenge, the biggest obstacle along the way was the lack of technical expertise I had going in.  The functions I had some familiarity with, but at the end of the day it was just background information and this was a sort of uncharted territory for me.  I learned how each of these fit in with each other and how the functionality of each service fulfills their purpose in the creation of my cloud resume.  Even after this technical process was complete, there was still work to do and knowledge to be gained.  The webpage I created was a product of hastily self-taught HTML and even a little CSS.  This process was by far the most difficult, but also the most fun for me.  I found actually inputting the information from my resume into the html file to be the easy part, however styling it proved to be tricky.  After testing a few templates, I landed on the simple design that you see as I definitely felt out of my depth with some of the more complex aspects of CSS.


**The Outcomes & Retrospective**

The product is plain and clear to see: my Cloud Resume, which is a culmination of the all knowledge I have developed in college.  The resume itself outlines tells the story of my professional experiences while the website stands as a technical achievement for myself.  The result itself may be incredibly simple in appearance, but it is something I am definitely incredibly proud of.  I am leaving the Cloud Resume Challenge feeling much stronger in the workings of cloud computing resources and the various ways that each of these resources can fit together to help users accomplish unimaginable goals.  This journey has also taught me to never underestimate myself, I remember coming into this challenge terrified; I had no idea how to create a website, I didn’t even know where to begin.  After working through it incrementally, however, the process became clear to me and it all began to make sense.  This is something I would highly recommend this to anyone looking to bolster their professional career, and I’m excited for what’s to come in my professional life now that I have this knowledge.