Going through AWS classes has been overwhelming but empowering. At first, it felt like too much, so many services, so many options. But now, I’ve moved from just knowing the basics to actually building a solid foundation in AWS and how its services work.
So, What is AWS?
Amazon Web Services (AWS) is a cloud provider that lets you rent infrastructure, software, or platform services instead of owning your own data center. Imagine instead of buying expensive servers, hiring a team to maintain them, and worrying about security, you just pay for what you need, when you need it. That’s AWS.
AWS owns and manages the hardware and network, while you get to focus on using the services via a web app. It’s flexible, cost-effective, and scales with your needs.
Oh, and security? AWS makes it their top priority.
AWS in Numbers
AWS currently offers 160+ services and products, and that number keeps growing every year. You can find an overview of the different AWS services along with their definitions and use cases in this whitepaper. Some services are more commonly used, and that’s where I started my learning journey.
Key AWS Services & Categories
AWS is massive, but here’s a breakdown of some major services by category:
Compute (Processing Power)
Amazon EC2(Elastic Compute Cloud): Think of this as renting virtual servers in the cloud. You can scale up or down as needed.
AWS Lambda: Run your code without managing servers. Pay only for what you use.
Storage (Saving & Managing Data)
Amazon S3(Simple Storage Service): A simple storage solution. You can store files, images, backups, and access them from anywhere.
Amazon EBS(Elastic Block Store): Block storage for persistent data attached to EC2 instances.
Security & Identity
- AWS IAM(Identity and Access Management): Controls who can access what in your AWS account.
Databases
Amazon RDS(Relational Database Service): Managed relational databases like MySQL, PostgreSQL.
Amazon Aurora: A high-performance relational database built for the cloud.
Amazon DynamoDB: A NoSQL database for high-speed applications.
Networking & Content Delivery
Amazon VPC(Virtual Private Cloud): A secure, isolated network within AWS where you can run your applications, just like a traditional data center but in the cloud.
Amazon CloudFront: A content delivery network (CDN) to speed up websites.
Amazon Route 53: A domain name system (DNS) service to manage domain names.
Elastic Load Balancing: Distributes traffic to ensure high availability.
Migration (Moving Data to AWS)
AWS Snowmobile: Transfers huge amounts of data to AWS.
AWS Snowball: A smaller version for moving smaller data loads.
Management & Monitoring
AWS CloudWatch: Monitors AWS resources and applications.
AWS Management Console: The UI where you control everything.
Developer Tools
AWS CodeBuild: Automates code building and testing.
AWS CodeCommit: A managed Git repository.
AWS X-Ray: Helps debug and analyze distributed applications.
Billing & Cost Management
My AWS S3 Weather Data Project
One of the most interesting projects I’ve worked on was fetching and storing real-time weather data from OpenWeather API using Amazon S3. By leveraging Python and AWS SDK (Boto3), I automated the retrieval and storage of weather reports, ensuring the data was continuously updated and easily accessible.
For me, this project reinforced key AWS concepts, including data automation, storage optimization, and cost-effective cloud computing. Seeing it work in real-time gave me a clearer understanding of how AWS services translate into real-world impact.
Lessons Learned
During one of my AWS exercises, I hit a roadblock. I researched, asked colleagues, and still couldn’t figure it out. Finally, I reached out to my instructor, turns out, it was a simple issue related to the account settings. Moral of the story? ASK FOR HELP.
EC2 & My SimuLearn Experience
AWS EC2 (Elastic Compute Cloud) lets you rent scalable compute power in the cloud. I put this into practice in AWS SimuLearn, a hands-on AI-powered training platform. Here’s what I worked on:
- Making an island’s stabilization system more reliable
Understanding AWS Regions & Availability Zones.
Deploying EC2 instances across multiple zones.
- Helping a school scale their scheduling system
Learning about EC2 instance types and families.
Scaling horizontally vs. vertically for better performance.
RDS, DynamoDB, and Aurora
Before AWS, I used Google Sheets for organizing data; user research, competitor analysis, project tracking, etc. But as I learned about AWS databases, I realized the power of relational vs. non-relational databases.
Relational (SQL) databases ensure consistency, like banking transactions (must follow ACID principles; Atomicity, Consistency, Isolation, Durability). Examples include Amazon RDS, Aurora, MySQL, PostgreSQL, Oracle
Non-relational (NoSQL) use the BASE model (Basically Available, Soft state, Eventual consistency), prioritizing flexibility and availability over strict consistency. These are great for fast-moving, scalable applications like social media platforms, big data applications, and IoT. Examples include Amazon DynamoDB, MongoDB.
💡 Try this: Play around with databases using this SQL online compiler or read more on Amazon Aurora’s architecture.
AWS Pricing Model
One of the biggest benefits of AWS is on-demand pricing. You only pay for what you use and there are 3 three key cost drivers:
Compute cost: Charges based on processing power (EC2, Lambda).
Storage cost: Pay for the amount of data stored (S3, RDS).
Data transfer cost: Moving data in and out of AWS has fees.
AWS also offers cost-saving options like reserved instances and savings plans for long-term use.
This is Just The Beginning
There’s so much more to explore in AWS, but this journey has helped me build a solid foundation. I hope it helps you too! 🚀
Stay curious, keep experimenting, and don’t be afraid to ask questions.
Resources
AWS Dictionary of Pain (yes, that’s a thing!)
Love & Cloud,
Babsbarokah.