The AWS Cloud Resume Challenge: Your Gateway to Cloud Engineering (Part 1)

Praneeth PereraPraneeth Perera
4 min read

The Cloud Resume Challenge has become a cornerstone project for aspiring cloud engineers, offering hands-on experience with real-world AWS services while building something genuinely useful—a professional resume website. This comprehensive guide walks you through each step of creating your cloud-hosted resume that demonstrates your technical skills to potential employers.

What You'll Build

By the end of this challenge, you'll have created a complete serverless web application featuring:

  • A responsive HTML/CSS resume website

  • HTTPS-enabled custom domain

  • Global content delivery via CloudFront

  • Visitor counter with real-time updates

  • Infrastructure as Code (IaC) deployment

  • CI/CD pipeline for automated deployments

Prerequisites and Setup

Before diving in, ensure you have the following foundation:

Technical Requirements:

  • Basic HTML/CSS knowledge for frontend development

  • Familiarity with Python or JavaScript for backend functions

  • Understanding of Git version control and GitHub workflows

  • An active AWS account with appropriate permissions

Tool Setup:

  • AWS CLI installed and configured with your credentials

  • Code editor of choice (VS Code recommended)

  • Git is installed locally for version control

The beauty of this challenge lies in its progressive complexity—you start with simple static hosting and gradually incorporate advanced cloud services.

Phase 1: Building Your Digital Foundation

Creating the Resume Website

Start by crafting a clean, professional HTML resume. Focus on semantic markup and responsive design principles. You index.html should include all essential sections: contact information, experience, education, and skills. The CSS should ensure your resume looks polished across all device sizes.

Key considerations for your resume design:

  • Use a mobile-first approach for responsiveness

  • Implement proper semantic HTML structure

  • Choose professional colours and typography

  • Ensure fast loading times with optimised assets

Static Website Hosting with S3

Amazon S3 provides an excellent platform for hosting static websites. Create a new S3 bucket with a descriptive name like yourname-resume-website. The bucket configuration requires careful attention to public access settings—you'll need to allow public read access for website hosting while maintaining security best practices.

Enable static website hosting in your bucket properties, specifying index.html both the index and error document. Upload your HTML, CSS, and any image assets. The S3 static website endpoint provides your first accessible URL, although it won't be your final domain name.

When creating an Amazon S3 bucket intended for website hosting, ensure that the bucket name exactly matches the domain name you wish to register. For example, if your domain is abc.com, the corresponding S3 bucket should be named abc.com. In my experience, I was initially unable to locate the appropriate S3 endpoint to assign as an A record within the hosted zone. This will facilitate testing of HTTP delivery from S3. This configuration can later be updated with a CloudFront distribution endpoint.

Phase 2: Professional Domain and Security

Domain Registration with Route 53

A custom domain transforms your project from a learning exercise into a professional portfolio piece. Route 53, AWS's DNS service, simplifies domain registration and management. Choose a domain that reflects your professional identity—many developers opt for .cloud or .dev extensions to emphasise their technical focus.

After registration, Route 53 automatically creates a hosted zone with the necessary DNS records. This hosted zone becomes your control centre for all DNS configuration throughout the project.

I registered my domain through Namecheap.com, as its pricing was more competitive compared to AWS’s domain registration costs. I selected a .com domain using a promotional offer available for new customers. After completing the registration, I proceeded to create a hosted zone in AWS Route 53. Subsequently, I configured the domain by updating its name server settings to include the AWS-provided name servers under the "Custom Name Servers" section.

HTTPS Implementation with CloudFront and ACM

Security is non-negotiable for modern web applications. AWS Certificate Manager (ACM) provides free SSL certificates, but remember to request your certificate in the US East (N. Virginia) region for CloudFront compatibility.

CloudFront, AWS's content delivery network, serves multiple purposes in your architecture:

  • Enables HTTPS termination with your ACM certificate

  • Provides global edge locations for improved performance

  • Offers caching capabilities to reduce origin load

  • Integrates seamlessly with other AWS services

Configure your CloudFront distribution with your S3 bucket as the origin, attach your SSL certificate, and update your Route 53 records to point to the CloudFront distribution rather than directly to S3.

Since the CloudFront distribution is configured with default cache levels, any changes made will reflect on the resume portfolio after approximately 24 hours. It is recommended to retain the default cache settings, particularly given the low traffic volume to the website. However, if the site experiences high traffic, it is advisable to utilize the accelerated cache edge option in order to update edge locations with a lower TTL (Time To Live) value.

💡
The shared image represents a high-level architectural overview for this stage of the design.
0
Subscribe to my newsletter

Read articles from Praneeth Perera directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Praneeth Perera
Praneeth Perera

As a Senior System Administrator at NoeHow, I specialise in network analysis, troubleshooting, automation, and system migrations using Python, Perl, Bash, and MySQL. I'm passionate about training teams and staying current with emerging technologies to optimise system functionality and user experiences. With RHCE and AWS Certified Solutions Architect Associate certifications, a B.Sc. in Information Systems from the University of Colombo, an MBA from the University of Bedfordshire, and a strong accountancy background, I bring technical expertise and business acumen to every project. I thrive in collaborative environments and am eager to connect with innovative professionals.