From PDF to Cloud: How One Dev Built a Live Resume on AWS

A resume doesn’t have to be a static PDF—it can be a fully functional web application hosted on AWS. One developer took on the Cloud Resume Challenge to transform their resume into a live site with a real-time visitor counter, automated infrastructure, and continuous deployment. The result is a static site backed by serverless components, all provisioned as code and updated automatically.
A Static Site with Serverless Backend
The resume itself is a simple static site built with HTML and CSS, hosted on an S3 bucket behind CloudFront for fast, global delivery. Route 53 manages the custom domain, ensuring visitors reach the site efficiently without ever touching the S3 bucket directly. The visitor counter, however, runs separately: once the page loads, JavaScript triggers an API call to API Gateway, which invokes a Lambda function. This function reads and updates a single item in a DynamoDB table, incrementing the visitor count and sending the result back to the page in real time.
Infrastructure as Code and Automated Deployment
Every component—S3, CloudFront, Route 53, Lambda, DynamoDB, IAM roles, and API Gateway—was defined and deployed using Terraform. The infrastructure isn’t built by hand in the AWS Console; instead, it’s versioned, repeatable, and redeployable from scratch. After setup, GitHub Actions takes over, running tests and pushing updates automatically with each code push. The pipeline handles deployment end-to-end, ensuring consistency and reducing manual errors.
Lessons in Serverless and Security
Using Terraform reshaped how the developer approaches AWS projects. Writing infrastructure as code revealed ordering challenges—Terraform’s depends_on became essential to ensure resources are created in the right sequence. Choosing DynamoDB over a relational database made sense for a single counter, aligning with schemaless modeling and on-demand pricing. Security also became a focal point: IAM roles for Lambda differ from invocation permissions, and hardcoding AWS credentials in a CI/CD pipeline introduced risks that required a more secure approach. The project highlighted the importance of thoughtful service selection and careful permission management in serverless architectures.
Source: DEV Community. AI-assisted editorial synthesis — TechnoExpress.

