zakaria slimane, software developer

Software developerdevOps & cloud.

AWS for newcomers: Essential Services to know

min read
AWSCloudTutorial

Amazon Web Services (AWS) is a cloud platform offering a vast range of tools to help developers build, deploy, and scale applications faster and more cost-effectively. Whether you're creating web apps, mobile solutions, or any cloud-based project, getting familiar with AWS's core services is a must if cloud is a topic of interest to you.

Important notice: To keep this article beginner friendly, I will not be listing every product/service in each category, but the most used ones. AWS has a lot of products and sub-products you can dive in at your own pace.

Compute Services

AWS's compute offerings are the backbone of its platform, helping developers run application code and manage servers effortlessly. Here are two key services, please keep in mind these are not all the compute services but two of the most used:

AWS Lambda

  • A serverless service where you can run your code without worrying about servers
  • You only pay for the compute time you use

Amazon EC2

  • Provides virtual servers (instances) that you can configure to host your applications
  • It's flexible and straightforward to use

Storage and Content Delivery

AWS provides a wide range of storage solutions for different application needs. Which are typically split into three types: object, block, file storage:

Amazon S3

  • A reliable, scalable object storage service
  • Store and retrieve large amounts of data, accessible from anywhere

Amazon EBS

  • A block storage service designed for use with Amazon EC2
  • Ideal for workloads requiring consistent, low-latency performance

Amazon EFS

  • A scalable file storage solution
  • Allows multiple instances to access data simultaneously
  • Great for shared storage scenarios

Database Services

Databases are at the heart of most applications. AWS makes database management easy with these popular services:

Amazon RDS

  • A managed relational database service
  • Supports multiple engines: MySQL, PostgreSQL, MariaDB, Oracle, and SQL Server
  • Simplifies tasks like setting up, running, and scaling databases

Amazon DynamoDB

  • A NoSQL database designed for fast, millisecond-level performance
  • Built-in security, backup, and restore capabilities
  • Scales automatically based on demand

Amazon DocumentDB

  • A managed NoSQL document database service
  • MongoDB compatible
  • Designed for scalable, high-performance workloads

Amazon Aurora

  • A fully managed relational database engine
  • Combines high-end commercial database performance with open-source simplicity
  • Compatible with MySQL and PostgreSQL

Amazon Redshift

  • A managed data warehouse service
  • Designed for big data analytics
  • Run complex queries across petabytes of data quickly and securely

Networking and Security

Strong networking and security are crucial for cloud applications. AWS provides tools to integrate and safeguard your applications effectively:

Amazon VPC

  • Create a private network within AWS
  • Define subnets, route tables, and gateways
  • Control network traffic effectively

AWS IAM

  • Identity and Access Management
  • Securely control access to AWS resources
  • Define user permissions and roles

AWS Direct Connect

  • Provides dedicated network connections
  • Connect on-premises data center to AWS
  • Improved bandwidth and security

AWS Shield

  • Managed DDoS protection service
  • Safeguards AWS applications from malicious attacks

AWS WAF

  • Web application firewall
  • Protects applications from common web exploits
  • Customizable security rules

Amazon GuardDuty

  • Continuous threat detection service
  • Monitors for malicious activity
  • Identifies unauthorized behavior

AWS Secrets Manager

  • Securely store and manage sensitive information
  • Handle API keys, passwords, and credentials
  • Automated secrets rotation

Conclusion: Getting Started with AWS

AWS has the tools needed to innovate and scale quickly, provided that you have the knowledge and skills to use them. By getting a solid understanding of core services like compute, storage, databases, and networking, you'll be well-equipped to dive deeper into the more situational products and the more niche ones.

As the title suggests this is just a beginner's preview—there's a lot more to explore and dive into as you advance. Take some time to experiment with these services in your next project.