This portfolio started as a simple HTML file sitting on my laptop. I wanted it to actually live on AWS the same way I talk about to learners every day at the Skills Center, so I turned it into a real deployment.
I created a dedicated S3 bucket, turned on static website hosting, and uploaded
index.html. At first, everything looked fine… until I fronted it
with CloudFront and realized changes weren’t showing up when I updated the file.
That’s where I hit my first “break & fix” moment: CloudFront was happily serving old cached versions of my site even though S3 had the new file. The fix was learning how invalidation actually works.
-
I learned to invalidate specific paths like
/index.htmland/instead of nuking the entire cache every time. - I wired updates into a simple routine: upload new file → create invalidation → confirm through the CloudFront URL.
- I separated admin IAM credentials from “everyday” access and locked everything behind MFA so I’m not casually using a root-style account to update a website.
Now, when I change this page, I actually understand what’s happening between: browser → CloudFront edge location → S3 origin bucket → IAM controls. It’s not just a static résumé anymore – it’s a small, living architecture I can confidently walk through in an interview.