The cloud is now older than most software engineers. The history matters because every shift is a lesson the next one assumes you already learned.
Amazon S3 launched in March 2006. EC2 launched five months later. The "cloud" as a product category is twenty years old. The architecture choices we make today are layered on top of every decision the industry made along the way.
2006-2010: the IaaS era
Renting servers by the hour was the killer feature. Capital expenditure became operating expenditure overnight. Most of the early adopters were startups that could not afford to buy a rack. The architecture was lift-and-shift: the same VMs you ran in your data center, now in someone else's.
2010-2015: managed services arrive
RDS, ElastiCache, S3 versioning, IAM, CloudFront. AWS realized the real lock-in was not compute, it was managed databases and the operational overhead they removed. By the end of this era, "use managed services" was the consensus.
2015-2020: containers and Kubernetes
Docker shipped in 2013. Kubernetes shipped in 2015. By 2018 every cloud had a managed Kubernetes offering. The container abstraction made workloads portable for the first time — at the cost of an order of magnitude more operational complexity.
2020-2024: serverless and edge
AWS Lambda matured. Cloudflare Workers, Vercel, and Netlify shipped edge runtimes. The architecture shifted from "what server am I running this on" to "what region is the user in, and is the function warm." Operational simplicity went up; debugging went down.
2024-now: multi-cloud and the bare-metal renaissance
Concentration on AWS became a procurement risk for enterprises. Multi-cloud is no longer aspirational — it is required for compliance reviews. At the same time, providers like Hetzner and OVH offer bare-metal pricing 5-10x lower than the hyperscalers, and a generation of engineers is rediscovering that running your own boxes is fine.
What it all means
The right cloud architecture depends on your stage. Early: managed services on a single cloud. Scale: multi-region on the same cloud. Enterprise: multi-cloud with portability. Cost-pressured: bare-metal with cloud burst capacity. The history is the menu.