Featured
Hamd's profile photo
Hamd Waseem1 Aug 20259 min readaws

I Became An AWS Certified Developer Associate (at 13) - An Overview

#awscertified#awscertifiedat13

View my badge on Credly.

About a month ago, I achieved something exciting - I became an AWS Certified Developer Associate at 13 (you can read more about my own certification journey at https://hamdivazim.hamdtel.co.uk/blog/how-i-became-an-aws-developer-associate-at-age-13-5gi8). The journey wasn’t easy, but it helped me understand the uses and the power of cloud computing. If you’re a developer or just curious about AWS, this post will break down the essentials and show why learning the Cloud can be a game-changer.

Often people first think of cloud storage as the only thing that the Cloud can offer but there is so much more to it as well. Those who make any type of program, website or game would really benefit from knowing how the Cloud works, and then of course using it to their advantage.

There are many providers who offer professional services in the Cloud, such as Amazon Web Services (AWS), Microsoft Azure, Google Cloud, Oracle Cloud and many others. I chose to study AWS as it is the leading cloud provider,

What is AWS?

As previously mentioned, AWS is the leading cloud provider; they offer a vast breadth of services, including but are not limited to, compute, storage, databases, machine learning, analytics, and networking capabilities. AWS is designed to be scalable, secure, and cost-effective, enabling individuals and businesses of all sizes to develop, deploy, and manage their applications in the cloud.

While many people think of AWS and the Cloud in general solely as a platform for cloud storage, its capabilities go far beyond that. It supports everything from building complex web applications and mobile apps to setting up serverless architectures and managing large-scale enterprise infrastructures. It provides all the tools developers need to architect cloud solutions for their apps.

AWS offers a lot of services, and they can do various things in the cloud, such as computing, storage, governance and more. AWS currently has... over 200 services! But you’ll only use a handful for most applications - this guide covers the essentials.

What Will You Learn?

Most services in AWS (all except four) use the concept of regions. AWS has infrastructure all over the world and you can choose where you launch. Examples include us-east-1, eu-west-2, ap-south-1, and more. Each region is also split into Availability Zones, which are smaller zones which are spread throughout the region, and you are meant to split your infrastructure and deploy standby units in each Availability Zone. The whole concept promotes the idea of High Availability, which essentially means your app can withstand failure in any one Availability Zone.

Loosely, you can group each service you need to know into categories:

Compute

These services are based around launching a machine on AWS, and using it to do a task. This could really be anything, including running a task that requires a lot of power, connecting to other machines or even hosting your whole application (using web servers such as Apache or Nginx). This set of services is often considered fundamental to AWS, as every other task (even if it’s “serverless”) uses a compute layer on the underlying logic.

EC2 (Elastic Compute Cloud) is a pay-per-hour service that lets you rent out compute instances to do anything you need to - you get full control over a virtual machine, just like a physical server, but not one you physically own (and pay to maintain). You can also choose exactly how much compute power, memory, or even network optimisation you want. It is the most important service in AWS and you need to know it well.

ECS and EKS (Elastic Container Service and Elastic Kubernetes Service) let you manage containers in the AWS Cloud by choosing the instance type to deploy your container on. You can learn more about containers at https://hamdivazim.hamdtel.co.uk/posts/148.

You can also deploy most computer services in ELBs (Elastic Load Balancers) which spread load over multiple instances (often used in highly available architectures by deploying an equal number of instances in each Availability Zone and distributing load among them) and ASGs (Auto Scaling Groups) which scale up or down the number of instances depending on a specific metric (such as CPU utilisation, memory, etc.)

AWS Lambda also allows you to execute arbitrary pieces of code in the cloud without worrying about launching infrastructure or managing it. AWS takes care ofthe memory allocation and compute capacity and you just have to provide them the code. This is useful for small pieces of code which deploying a whole EC2 instance would be overkill for, and for if your local machine is not powerful enough to execute the code and you need an easy and cost-efficient way to run it on the cloud.

Storage

Storage in AWS is also important, with many services offering it. S3 (Simple Storage Service) allows you to simply store files in the cloud, without managing the infrastructure required. You get virtually unlimited space! EBS (Elastic Block Storage) allows you to attach volume block storage to EC2 instances. You choose how much storage you want and how high you want IOPS (Inputs/Outputs Per Second) to be. EFS allows you to create a Network File System (NFS) to give many EC2 instances or general machines access to the same files at the same time over a network.

Database

AWS provides both relational and non-relational database options. For traditional relational databases, there’s RDS (Relational Database Service), which supports engines like MySQL, PostgreSQL, Oracle, and SQL Server. Aurora takes it further by offering high-performance, MySQL- and PostgreSQL-compatible databases. For NoSQL needs, DynamoDB delivers fast and predictable performance at scale, while DocumentDB is tailored for JSON-based document storage. If you’re dealing with data warehousing, Redshift offers a fully managed, petabyte-scale solution. You can also simply host a database on an EC2 instance.

Networking & Content Delivery

Efficient networking is key in the cloud. VPC (Virtual Private Cloud) lets you provision a logically isolated section of the AWS Cloud, while Route 53 provides scalable Domain Name System (DNS) services. For delivering content globally, CloudFront serves as a Content Delivery Network (CDN) that accelerates your website, and API Gateway facilitates the creation, deployment, and management of secure APIs. These services ensure that your applications are fast, secure, and highly available.

Security & Identity

Security is a fundamental pillar of AWS. IAM (Identity and Access Management) allows you to manage access to services and resources securely. Complementary services such as Cognito handle user authentication for mobile and web applications, and AWS Shield along with WAF (Web Application Firewall) protect your applications against common web exploits and Distributed Denial of Service (DDoS) attacks. Additional tools like GuardDuty continuously monitor for malicious activity, adding another layer of defence.

KMS (Key Management Service) also allows you to manage encryption keys in the cloud. The core concept behind KMS is envelope encryption: you encrypt your object using a data key and then encrypt the data key with a master key, leaving an encrypted object and an encrypted key. Anyone with access to a master key will be able to retrieve the data key and decrypt the object.

Management & Governance

To effectively monitor and control your AWS environment, a suite of management tools is available. CloudWatch enables monitoring of resources and applications, while CloudTrail logs API calls for auditing purposes. CloudFormation simplifies resource provisioning through infrastructure as code, and AWS Config helps track configuration changes. These services work together to provide a comprehensive view of your infrastructure’s health and compliance.

Developer Tools

AWS offers a range of services to support your development lifecycle. CodeCommit is a fully managed source control service, CodeBuild provides scalable build services, CodeDeploy automates application deployments, and CodePipeline streamlines continuous integration and continuous delivery (CI/CD). These tools are designed to simplify the development process and help you deliver software quickly and reliably. CloudFormation also allows you to write YAML or JSON to automatically launch infrastructure quickly.

Analytics

For those working with large volumes of data, AWS offers powerful analytics tools. Kinesis streams real-time data for processing, while Athena allows you to query data in S3 using standard SQL. EMR (Elastic MapReduce) facilitates big data processing with popular frameworks like Hadoop and Spark, and QuickSight enables fast, cloud-powered business intelligence and visualisation.

Machine Learning And AI

AWS makes it easier to integrate machine learning into your applications. SageMaker provides an end-to-end solution for building, training, and deploying machine learning models. Other services such as Comprehend (for natural language processing), Rekognition (for image and video analysis), Lex (for building conversational interfaces), and Polly (for text-to-speech conversion) allow you to incorporate intelligent features without needing to start from scratch.

Migration and Transfer

When moving existing workloads to the cloud, AWS offers services that simplify the process. The Database Migration Service (DMS) helps transfer your databases to AWS with minimal downtime. Server Migration Service (SMS) automates the migration of on-premises workloads, and solutions like Snowball (and its larger counterpart, Snowmobile) are available for transferring large amounts of data physically when network transfer isn’t practical.

Application Integration

Modern applications often require seamless communication between different components. AWS facilitates this with services such as SQS (Simple Queue Service) for message queuing, SNS (Simple Notification Service) for push messaging, and Step Functions, which orchestrate workflows and help manage multi-step applications. These services are crucial for building decoupled and resilient architectures.

The AWS Developer Associate Exam is mainly focused on knowing ‘serverless’ architectures - where you do not have to manage the underlying infrastructure yourself. All you do is tell AWS that you need to do a task, like execute some code, and you don’t need to pay or manage the actual machine that will run the task. The main services that are serverless include Lambda, DynamoDB, API Gateway, Cognito, S3 and Fargate (integrates with ECS and EKS to provide serverless container management). There are of course many others but you only need to know these in detail.

My Certification Path - And What Yours Should Look Like!

My Path

When I first decided to pursue the AWS Developer Associate certification, I knew it would be a challenge. The exam covers a broad range of topics: building serverless applications, managing networking and security, performing governance, correctly deploying applications, migrating from on-premises to the cloud, analytics on AWS ...

Since I was already experienced in programming, I focused on deepening my knowledge in areas like IAM permissions, Lambda integrations, and API Gateway.

I started by using AWS Free Tier to experiment with different services, setting up real-world projects rather than just reading theory. I deployed a few applications using S3, Lambda, and DynamoDB, and learned first-hand about optimising cost and performance. My main project was the budget management app Budgetly (which I am in the process of completing), which I started solely as a way to practice my skills of actually applying what I learnt about serverless services on AWS.

Preparing for the exam required discipline, as I balanced my studies with schoolwork. I used a combination of official AWS documentation, practice exams, and hands-on projects to reinforce my understanding. Eventually, I was ready to sit the exam, and I passed on my first attempt! You can read more at https://hamdivazim.hamdtel.co.uk/blog/how-i-became-an-aws-developer-associate-at-age-13-5gi8.

This achievement is just the beginning for me however. Now that I’ve gained this certification, I’m planning to deepen my AWS expertise by working on real-world projects, integrating AWS into my personal development work, and pursuing more advanced AWS certifications in the future :)

Your Path

The three things I outlined in my other blog post were practice labs, practice tests and discipline. So I believe a proper path to becoming an AWS Certified Developer Associate should look like the following:

Train Using Documentation

AWS has some of the best documentation of any cloud provider or even in general. It is to the point, provides many examples and covers every feature of every service. Sure, a guided study course could help you, but I realised the best way to learn was to just read what AWS wrote. No one will know AWS better than AWS themselves!

Perform As Many Practice Labs As You Can

The best resource out there to practice your skills in AWS is AWS itself. My goal with this certification was to be able to build and launch the infrastructure I needed for my own app myself, and that's exactly what I did. If you don't have prior coding experience then you could just borrow code from someone else - when I practiced ECS I used someone else's container from Docker Hub to practice and it worked just fine, without me having to actually understand the Docker-specific nuances.

Do Practice Questions

After doing a lot of these I understood how the questions are laid out and how the answer options usally try to trick you out, and I cannot understate how much this helped me during the real exam. As well as that, there are often small features that you may not have seen in a course or in the documentation, but getting it wrong in a practice exam will help iron it out. And plus, anyone would much rather get it wrong in a practice test than in the real thing.

To summarise, the AWS Certified Developer Associate certification is one worth getting. If you are a programmer who currently leaves their backend compute, databases, application integration, or deployment to managed services such as Vercel, Netlify, Railway and others, you lose a lot of flexibility, and knowing how to architect it yourself will really help you in the long run.

Thanks for reading :)

- Hamd Waseem (13)