GCP cloud resume challenge: building a front end

The cloud resume challenge is one of the best ways I have seen online to build confidence around your cloud skills after getting cloud certified. The challenge was built in a way that after completing it a prospective employer will see that you have technical skills apart from certifications.

It has 3 versions for Azure, GCP, and AWS which are all the same and require the same skill sets.

I decided to take the GCP challenge despite having certifications in both Azure and AWS. I felt confident with GCP because I had practised a lot on the console through Qwiklabs and also because Google Cloud was kind enough to give a $300 credit boost so I was sure I wouldn’t run any bills.

creating a static site

The first challenge step is to build a front end which will involve creating a static site and hosting it on a cloud storage bucket. you are supposed to write your CV in HTML & CSS instead of using a Word document. HTML and CSS are pretty easy to practice and since you just building a simple document which is your resume you don’t need to go in-depth to solve this chunk of the project.w3 schools have awesome tutorials on this.

from the advice, I found from reading the tech resume inside out which I highly recommend the writer a seasoned technical how a tech resume should look & the whole interview process. I would suggest just using CSS, and HTML no need for fancy javascript or using the react framework unless just for practice.

solution architectural diagram

  • Traffic from the public internet is resolved by cloud DNS since in my solution I didn’t use a domain bought from Google Domains hence the lack of it on this diagram.
  • once the domain name has been resolved cloud DNS uses the load balancer static IP which is attached to its front end.
  • A cloud storage bucket has static assets that communicate with the load balancer through the host and path rules.in this instance, cloud storage is the backend.
  • cloud CDN stores a static version of the site for a period of time and once the TTL is over it fetches a new version from the GCP bucket.

creating a cloud storage bucket and making it public.

I uploaded the static files to a cloud storage bucket that has the same name as my domain name. I made my bucket public when creating it you do this by unchecking the box which says enforce public access and after creating the bucket I changed the bucket access policy to allow all users to be object viewers.

creating an HTTPS load balancer with CDN

I headed to the load balancing tab and created a Global HTTPS load balancer whose backend is connected to the above bucket. In the front-end section, I used a static IP address and not the default ephemeral one. for your site to be able to have HTTPS you will need an SSL certificate which I created using Google-managed certificates.

If you don’t enable the certificate manager API you will get stuck here as I did for a whole week not knowing why there was an error in provisioning an SSL certificate for my site.

I also enabled CDN while setting up the load balancer which will ensure that my site is highly accessible to all users taking advantage of Google’s global footprint of edge locations.

cloud DNS.

I created a standard and added an A record (very important) that points to the load balancer front-end static IP. I also reduced the TTL time to fasten propagation.

You can either choose to buy a domain from Google Cloud Domains or from a registrar of your choice. NameCheap has the cheapest domain and the setup is very simple.

make sure you change the default name servers to the Google ones for your domain to be able to propagate. after you log into the Cloud console head over to Cloud DNS after creating a zone for your custom domain on the top right you will see the registrar setup that’s where the Google Cloud nameservers that you will need to change to are found.

To finish off add a CNAME record pointing to the cloud storage bucket API.

After this, your site should work with no hitches as mine did with my domain karaniph.buzz

Leave a Comment