All Articles
Tech News8 min read

AWS Fundamentals: Services Every Developer Should Know

Demystifying AWS with practical examples. Learn EC2, S3, RDS, Lambda, and when to use each service for your projects.

T

TechGyanic

December 7, 2025

AWS Fundamentals: Services Every Developer Should Know

AWS has 200+ services, and the console can feel overwhelming. The good news? You only need to understand about 10 services for 90% of web application needs.

Core Services Overview

EC2 (Elastic Compute Cloud)

Virtual servers in the cloud. Think of it as renting a computer.

# Your app runs on EC2 like this:
ssh ec2-user@your-instance-ip
cd /var/www/app
pm2 start server.js

When to use: Traditional server applications, full control needed

Pricing tip: Use t3.micro for development (free tier eligible)

S3 (Simple Storage Service)

Object storage for files. Infinitely scalable.

// Upload file to S3
const AWS = require('aws-sdk');
const s3 = new AWS.S3();

await s3.upload({
  Bucket: 'my-app-uploads',
  Key: `users/${userId}/profile.jpg`,
  Body: fileBuffer,
  ContentType: 'image/jpeg'
}).promise();

When to use: Static files, images, backups, static website hosting

RDS (Relational Database Service)

Managed databases. AWS handles backups, updates, failover.

Supports: PostgreSQL, MySQL, MariaDB, Oracle, SQL Server

When to use: Any SQL database needs without managing servers

Lambda

Serverless functions. Pay only when code runs.

// Lambda function
exports.handler = async (event) => {
  const { name } = JSON.parse(event.body);
  
  return {
    statusCode: 200,
    body: JSON.stringify({ message: `Hello, ${name}!` })
  };
};

When to use: APIs, scheduled tasks, event processing

API Gateway

REST/WebSocket APIs that connect to Lambda or EC2.

When to use: Always paired with Lambda for serverless APIs

Architecture Patterns

Traditional (EC2-based)

Users → Route53 → Load Balancer → EC2 Instances → RDS
                                               → S3 (uploads)

Serverless

Users → CloudFront → API Gateway → Lambda → DynamoDB
                                          → S3

Getting Started

  1. Create AWS account (free tier = 12 months of basic services)
  2. Set up IAM user (never use root account)
  3. Install AWS CLI: brew install awscli
  4. Configure credentials: aws configure

Cost Management

AWS bills can surprise you. Prevent this:

  1. Set billing alerts in CloudWatch
  2. Use AWS Free Tier wisely
  3. Turn off resources when not using
  4. Use reserved instances for production

Free Tier Limits (12 months)

  • EC2: 750 hours/month t2.micro
  • S3: 5GB storage
  • RDS: 750 hours/month db.t2.micro
  • Lambda: 1 million requests/month

Common Beginner Mistakes

  1. Leaving resources running - Delete after testing
  2. Using root account - Create IAM users
  3. Hardcoding credentials - Use environment variables
  4. Wrong region - Always check which region you're in

Next Steps

Build a simple project:

  1. Host static site on S3 + CloudFront
  2. Build serverless API with Lambda + API Gateway
  3. Deploy full application on EC2 + RDS

AWS certifications (Solutions Architect Associate) are valuable for career growth, but hands-on experience matters more.

awsclouddevopsbackendinfrastructure
Share this article
T

Written by

TechGyanic

Sharing insights on technology, software architecture, and development best practices.