As part of my structured transition from .NET development to Cloud Engineering, I recently explored Amazon EC2 (Elastic Compute Cloud) — one of the core compute services in Amazon Web Services.
Understanding EC2 is a major step toward designing scalable and production-ready cloud systems.
🚀 What is Amazon EC2?
Amazon EC2 provides resizable virtual servers in the cloud.
It allows engineers to provision compute capacity on-demand without managing physical hardware.
This is where applications actually run in AWS infrastructure.
🔹 Key Learnings from My Hands-on Practice
1️⃣ Launching Virtual Servers
Created EC2 instances using different AMIs:
Amazon Linux
Ubuntu
Understood the full launch workflow: AMI → Instance Type → Key Pair → Security Group → Storage → Launch.
2️⃣ Instance Types & Sizing Strategy
Explored instance families:
- General Purpose
- Compute Optimized
- Memory Optimized
Learned how selecting the right instance type impacts performance and cost optimization.
3️⃣ Secure Access & Networking
- Configured Key Pairs for SSH authentication
- Set up Security Groups (firewall rules)
- Practiced SSH connectivity via terminal
- Understood inbound vs outbound traffic rules
Security and networking fundamentals became much clearer during this process.
4️⃣ Storage with EBS
- Studied EBS volume types
- Attached & detached volumes
- Understood root volume vs additional storage
- Learned persistence behavior after instance stop/terminate
Storage design directly affects durability and performance.
5️⃣ Elastic IP & Monitoring
- Explored Elastic IP for static public addressing
- Understood basic monitoring concepts
- Learned about auto-recovery mechanisms
These concepts connect directly to high availability and reliability engineering.
🧠 Technical Insight Gained
Coming from an application development background, EC2 helped me see infrastructure from a system-level perspective:
- Applications run on compute (EC2)
- Storage persists in EBS
- Access is controlled via IAM
- Traffic flows through VPC and Security Groups
- Availability requires monitoring and recovery planning
Cloud engineering is not just deployment — it’s architecture thinking.
💡 Reflection
The more I learn AWS, the more I realize:
Strong cloud engineers don’t just write code.
They design systems that are scalable, secure, and resilient by default.
Step by step, building foundations.
Consistency is the real superpower 💪🐧
Top comments (2)
Nice
Thank you 🙏