DEV Community

Cover image for Brewing in the Cloud: A Coffee Shop's Journey Through AWS by Laura Diaz
Laura for AWS Community Builders

Posted on • Originally published at dev.to

Brewing in the Cloud: A Coffee Shop's Journey Through AWS by Laura Diaz

Introduction

I'm taking a cloud architecture course delivered by AWS Women in Cloud Buenos Aires together with Universidad de la Marina Mercante, which includes live classes every Saturday plus theoretical training and hands-on labs.
I thought it would be a great idea to share what I'm learning along the way, so I decided to create this blog post series following the coffee shop website narrative from my course labs, starting from a simple static site and evolving it step by step into a scalable, secure, production-ready architecture.

Context Scenario

Your aunt Martha, who lives in a small town in Buenos Aires🧉🇦🇷, calls you on a Saturday afternoon. She’s excited: her coffee shop is doing well, and she wants to “put it on the internet.” You’re a developer, so you obviously know how to do that… right?
The problem is, you’ve built frontends, maybe some APIs, but infrastructure? AWS? That’s a whole different world. You’ve heard of it, you know it’s “the cloud,” but you’ve never actually set anything up there.
In this blog post series, we’ll follow a coffee shop from zero online presence to a fully scalable, secure, cloud-hosted web application, the same way you’d build it in the real world.
👉 No prior AWS experience needed.

Coffee Shop Architecture Evolution

This blog post series is structured into versions.

V1: Static Website
Goal: Create a static website for a small business.
Tech: Host the website on Amazon S3.

V2: Online Ordering
Goal: Add online ordering capabilities.
Tech: Implement web app and database on Amazon EC2.

V3: Database Optimization
Goal: Reduce database maintenance and protect data.
Tech: Separate layers and migrate DB to Amazon RDS in a private subnet.

V4: Network Security
Goal: Improve web application security.
Tech: Configure Amazon VPC with public and private subnets.

V5: Access Control
Goal: Create independent access mechanisms based on roles.
Tech: Use IAM groups, policies, and users for the application.

V6: Scalability & High Availability
Goal: Handle expected traffic increases.
Tech: Add a Load Balancer, Auto Scaling, and distribute across two Availability Zones.

In the first blog post, we will walk trough V1: Static Website.
See you there 🚀

Top comments (0)