AWS Certified Developer Associate Study Notes: Overview of AWS Services on the exam with Quiz.

This article will cover a high level overview of the AWS Services in scope for the AWS Certified Developer Associate Exam. There is a quiz to test your retention at the end of the article.
AWS Analytics
Amazon Elasticsearch Service (Amazon ES)
A distributed search and analytics engine built on Apache Lucene. Used to log analytics, full text search, security intelligence, business analytics and operational intelligence. You can send data in the form of JSON documents to Elasticsearch using the API or ingestion tools such as Logstash and Amazon Kinesis Firehose. Elasticsearch automatically stores the original document and adds a searchable reference to the document in the cluster’s index. You can then search and retrieve the document using the Elasticsearch API. You can also use Kibana, a visualization tool, with Elasticsearch to visualize your data and build interactive dashboards.
What problem does it solves and what uses cases can you implement using this tool?
Elasticsearch allows you to store, index and search documents. Amazon Elasticsearch is a JSON based NoSQL Datastore. You interact with ElasticSearch using a Restful API. You store documents in JSON format.
Example uses cases of Elasticsearch :
- Store, retrieve and analyze application logs.
- Scrape and merge public data such as census, weather, stock market related documents and Twitter tags to perform analytics.
- Upload company documents and wiki pages to allow full text search
- Upload historical time-series data such as stock market, weather, sports metrics for analysis and search
- Dash-boarding historical data for visualization using Kibana
A potential stack you can use is Beats to collect and ship your data to LogStash which will parse and transform your data into JSON and send it to ElasticSearch which will store and index your data. Then use Kibana to create dashboards and analytics.

Amazon Kinesis
Amazon Kinesis makes it easy to collect, process, and analyze real-time, streaming data so you can get timely insights and react quickly to new information. Amazon Kinesis offers key capabilities to cost-effectively process streaming data at any scale, along with the flexibility to choose the tools that best suit the requirements of your application. With Amazon Kinesis, you can ingest real-time data such as video, audio, application logs, website clickstreams, and IoT telemetry data for machine learning, analytics, and other applications. Amazon Kinesis enables you to process and analyze data as it arrives and respond instantly instead of having to wait until all your data is collected before the processing can begin.
What problem does it solves and what uses cases can you implement using this tool?
Kinesis is a tool that allows you to collect, process and analyze real-time streaming data. Example use cases for Kinesis:
- Ingest realtime weather data for presentation and analysis on your application
- Ingest realtime social media data for sentiment analysis
- Ingest realtime transaction data for organizational transaction analysis
- Ingest realtime video feeds for machine learning processing
A potential stack you can use with Kinesis is use an EC2 Instance with a Kinesis Agent to collect the realtime data stream. Use Kinesis data stream to store and index your data. Use Kinesis Firehose to send the data to an S3 bucket. Use S3 to house your data.

Application Integration
Amazon EventBridge (Amazon CloudWatch Events)
Amazon EventBridge is a serverless event bus that makes it easier to build event-driven applications at scale using events generated from your applications, integrated Software-as-a-Service (SaaS) applications, and AWS services. EventBridge delivers a stream of real-time data from event sources such as Zendesk or Shopify to targets like AWS Lambda and other SaaS applications. You can set up routing rules to determine where to send your data to build application architectures that react in real-time to your data sources with event publisher and consumer completely decoupled.
What problem does it solves and what uses cases can you implement using this tool?
Amazon EventBridge solves the problem of communication of events between SaaS application by ingesting an routing events between the services.
Example use cases for EventBridge:
- Send events to your lambda functions based on the data landed in S3.
- Collect events from Shopify and send those events to a Lambda function, Email distribution or other micro service for processing.
- Send different messages based event or on target application. Send a message in one format to an email and in another format to a lambda function.
A potential stack you can use for EventBridge.

Amazon Simple Notification Service (Amazon SNS)
Amazon Simple Notification Service (Amazon SNS) is a fully managed messaging service for both application-to-application (A2A) and application-to-person (A2P) communication.
The A2A pub/sub functionality provides topics for high-throughput, push-based, many-to-many messaging between distributed systems, microservices, and event-driven serverless applications. Using Amazon SNS topics, your publisher systems can fanout messages to a large number of subscriber systems, including Amazon SQS queues, AWS Lambda functions, HTTPS endpoints, and Amazon Kinesis Data Firehose, for parallel processing. The A2P functionality enables you to send messages to users at scale via SMS, mobile push, and email.
What problem does it solves and what uses cases can you implement using this tool?
Amazon SNS is a push notification application that allows you to define message topics and route the messages to multiple target systems based on topic. Data is not persisted in SNS.
Example Use Cases for SNS are:
- Send order received events to your order processing service and order return events to your order return service.
- Send new product available messaged to subscribed customers based on new product upload events
- Send push notifications to users or customers email or messaging software.
A potential stack for SNS is send S3 events to an SNS Topic which will forward the topic to subscribed target such as Lambda, Email, SQS:

Amazon Simple Queue Service (Amazon SQS)
Amazon Simple Queue Service (SQS) is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications. SQS eliminates the complexity and overhead associated with managing and operating message-oriented middleware, and empowers developers to focus on differentiating work. Using SQS, you can send, store, and receive messages between software components at any volume, without losing messages or requiring other services to be available. Get started with SQS in minutes using the AWS console, Command Line Interface or SDK of your choice, and three simple commands.
SQS offers two types of message queues. Standard queues offer maximum throughput, best-effort ordering, and at-least-once delivery. SQS FIFO queues are designed to guarantee that messages are processed exactly once, in the exact order that they are sent.
What problem does it solves and what uses cases can you implement using this tool?
Unlike SNS SQS doesn’t push messages to target applications. Instead target applications poll SQS to receive messages. Data is persisted for upto 14 days.
Use Cases:
- Queue and send messages to SQS from application A that can be subscribed to from application B and C .
A potential stack for SQS would be send a message to SQS from an EC2 applicaton. Have another EC2 application b subscribe to it and then send priority messages to an SQS for EC2 application c and normal messages to the SQS queue of EC2 applicaton c.

Amazon AWS Step Functions
AWS Step Functions is a low-code, visual workflow service that developers use to build distributed applications, automate IT and business processes, and build data and machine learning pipelines using AWS services. Workflows manage failures, retries, parallelization, service integrations, and observability so developers can focus on higher-value business logic.
What problem does it solves and what uses cases can you implement using this tool?
AWS Step functions allow you to define a workflow using Lambda functions.
Potential uses cases for AWS Step Functions:
- Process, transform and publish reporting data by taking data though a series of steps based on data contents.
- Design an automated approval process for requests received by a lamdba function based on data content.
A potential Stack for AWS Step Functions:

Compute
Amazon EC2 (Elastic Cloud Compute)
Amazon Elastic Compute Cloud (Amazon EC2) is a secure and resizable virtual server provisioned in the cloud. EC2 offers the broadest and deepest compute platform, with over 475 instances and choice of the latest processor, storage, networking, operating system, and purchase model to help you best match the needs of your workload. It is the first major cloud provider that supports Intel, AMD, and Arm processors, the only cloud with on-demand EC2 Mac instances, and the only cloud with 400 Gbps Ethernet networking.
Amazon Elastic Beanstalk
AWS Elastic Beanstalk is an easy-to-use service for deploying and scaling web applications and services developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker on familiar servers such as Apache, Nginx, Passenger, and IIS.
You can simply upload your code and Elastic Beanstalk automatically handles the deployment, from capacity provisioning, load balancing, auto-scaling to application health monitoring. At the same time, you retain full control over the AWS resources powering your application and can access the underlying resources at any time.
There is no additional charge for Elastic Beanstalk — you pay only for the AWS resources needed to store and run your applications.
Amazon Lambda
AWS Lambda is a serverless, event-driven compute service that lets you run code for virtually any type of application or backend service without provisioning or managing servers. You can trigger Lambda from over 200 AWS services and software as a service (SaaS) applications, and only pay for what you use.
Containers
Amazon Elastic Container Registry (Amazon ECR)
Amazon Elastic Container Registry (Amazon ECR) is a fully managed container registry offering high-performance hosting, so you can reliably deploy application images and artifacts anywhere. With Amazon ECR you can store, manage and deploy container images in an environment that is encrypted both in transit and at rest.
Amazon Elastic Container Service (Amazon ECS)
Amazon Elastic Container Service (Amazon ECS)is a fully managed container orchestration service that makes it easy for you to deploy, manage, and scale containerized applications including Docker Containers.
Amazon Elastic Kubernetes Services (Amazon EKS)
Amazon Elastic Kubernetes Service (Amazon EKS) is a managed container service to run and scale Kubernetes applications in the cloud or on-premises.
Databases
Amazon DynamoDB
Amazon DynamoDB is a fully managed, serverless, key-value NoSQL database designed to run high-performance applications at any scale. DynamoDB offers built-in security, continuous backups, automated multi-region replication, in-memory caching, and data export tools.
Amazon ElastiCache
Amazon ElastiCache is a fully managed, in-memory caching service supporting flexible, real-time use cases. You can use ElastiCache for caching, which accelerates application and database performance, or as a primary data store for use cases that don’t require durability like session stores, gaming leaderboards, streaming, and analytics. ElastiCache is compatible with Redis and Memcached.
Amazon RDS
Amazon Relational Database Service (Amazon RDS) makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks, such as hardware provisioning, database setup, patching, and backups. It frees you to focus on your applications so you can give them the fast performance, high availability, security, and compatibility they need.
Amazon RDS is available on several database instance types — optimized for memory, performance, or I/O — and provides you with six familiar database engines to choose from, including Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server. You can use the AWS Database Migration Service to easily migrate or replicate your existing databases to Amazon RDS.
Developer Tools
AWS CodeArtifact
AWS CodeArtifact is a fully managed artifact repository service that makes it easy for organizations of any size to securely store, publish, and share software packages used in their software development process. CodeArtifact can be configured to automatically fetch software packages and dependencies from public artifact repositories so developers have access to the latest versions. CodeArtifact works with commonly used package managers and build tools like Maven, Gradle, npm, yarn, twine, pip, and NuGet making it easy to integrate into existing development workflows.
AWS CodeBuild
AWS CodeBuild is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. With CodeBuild, you don’t need to provision, manage, and scale your own build servers. CodeBuild scales continuously and processes multiple builds concurrently, so your builds are not left waiting in a queue. You can get started quickly by using prepackaged build environments, or you can create custom build environments that use your own build tools. With CodeBuild, you are charged by the minute for the compute resources you use.
AWS CodeCommit
AWS CodeCommit is a secure, highly scalable, managed source control service that hosts private Git repositories. It makes it easy for teams to securely collaborate on code with contributions encrypted in transit and at rest. CodeCommit eliminates the need for you to manage your own source control system or worry about scaling its infrastructure. You can use CodeCommit to store anything from code to binaries. It supports the standard functionality of Git, so it works seamlessly with your existing Git-based tools.
AWS CodeDeploy
AWS CodeDeploy is a fully managed deployment service that automates software deployments to a variety of compute services such as Amazon EC2, AWS Fargate, AWS Lambda, and your on-premises servers. AWS CodeDeploy makes it easier for you to rapidly release new features, helps you avoid downtime during application deployment, and handles the complexity of updating your applications. You can use AWS CodeDeploy to automate software deployments, eliminating the need for error-prone manual operations. The service scales to match your deployment needs.
Amazon CodeGuru
Amazon CodeGuru is a developer tool that provides intelligent recommendations to improve code quality and identify an application’s most expensive lines of code. Integrate CodeGuru into your existing software development workflow to automate code reviews during application development and continuously monitor application’s performance in production and provide recommendations and visual clues on how to improve code quality, application performance, and reduce overall cost.
CodeGuru Reviewer uses machine learning and automated reasoning to identify critical issues, security vulnerabilities, and hard-to-find bugs during application development and provides recommendations to improve code quality.
CodeGuru Profiler helps developers find an application’s most expensive lines of code by helping them understand the runtime behavior of their applications, identify and remove code inefficiencies, improve performance, and significantly decrease compute costs.
AWS CodePipeline
AWS CodePipeline is a fully managed continuous delivery service that helps you automate your release pipelines for fast and reliable application and infrastructure updates. CodePipeline automates the build, test, and deploy phases of your release process every time there is a code change, based on the release model you define. This enables you to rapidly and reliably deliver features and updates. You can easily integrate AWS CodePipeline with third-party services such as GitHub or with your own custom plugin. With AWS CodePipeline, you only pay for what you use. There are no upfront fees or long-term commitments.
AWS CodeStar
AWS CodeStar enables you to quickly develop, build, and deploy applications on AWS. AWS CodeStar provides a unified user interface, enabling you to easily manage your software development activities in one place. With AWS CodeStar, you can set up your entire continuous delivery toolchain in minutes, allowing you to start releasing code faster. AWS CodeStar makes it easy for your whole team to work together securely, allowing you to easily manage access and add owners, contributors, and viewers to your projects. Each AWS CodeStar project comes with a project management dashboard, including an integrated issue tracking capability powered by Atlassian JIRA Software. With the AWS CodeStar project dashboard, you can easily track progress across your entire software development process, from your backlog of work items to teams’ recent code deployments.
There is no additional charge for using AWS CodeStar. You only pay for the AWS resources that you provision for developing and running your application (for example, Amazon EC2 instances).
AWS Fault Injection Simulator
AWS Fault Injection Simulator is a fully managed service for running fault injection experiments on AWS that makes it easier to improve an application’s performance, observability, and resiliency. Fault injection experiments are used in chaos engineering, which is the practice of stressing an application in testing or production environments by creating disruptive events, such as sudden increase in CPU or memory consumption, observing how the system responds, and implementing improvements. Fault injection experiment helps teams create the real-world conditions needed to uncover the hidden bugs, monitoring blind spots, and performance bottlenecks that are difficult to find in distributed systems.
Fault Injection Simulator simplifies the process of setting up and running controlled fault injection experiments across a range of AWS services so teams can build confidence in their application behavior. With Fault Injection Simulator, teams can quickly set up experiments using pre-built templates that generate the desired disruptions. Fault Injection Simulator provides the controls and guardrails that teams need to run experiments in production, such as automatically rolling back or stopping the experiment if specific conditions are met. With a few clicks in the console, teams can run complex scenarios with common distributed system failures happening in parallel or building sequentially over time, enabling them to create the real world conditions necessary to find hidden weaknesses.
AWS X-Ray
AWS X-Ray helps developers analyze and debug production, distributed applications, such as those built using a microservices architecture. With X-Ray, you can understand how your application and its underlying services are performing to identify and troubleshoot the root cause of performance issues and errors. X-Ray provides an end-to-end view of requests as they travel through your application, and shows a map of your application’s underlying components. You can use X-Ray to analyze both applications in development and in production, from simple three-tier applications to complex microservices applications consisting of thousands of services.
Management and Governance
AWS CloudFormation
AWS CloudFormation lets you model, provision, and manage AWS and third-party resources by treating infrastructure as code.
Amazon CloudWatch
Amazon CloudWatch is a monitoring and observability service built for DevOps engineers, developers, site reliability engineers (SREs), IT managers, and product owners. CloudWatch provides you with data and actionable insights to monitor your applications, respond to system-wide performance changes, and optimize resource utilization. CloudWatch collects monitoring and operational data in the form of logs, metrics, and events. You get a unified view of operational health and gain complete visibility of your AWS resources, applications, and services running on AWS and on-premises. You can use CloudWatch to detect anomalous behavior in your environments, set alarms, visualize logs and metrics side by side, take automated actions, troubleshoot issues, and discover insights to keep your applications running smoothly.
Networking and Content Delivery
Amazon API Gateway
Amazon API Gateway is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale. APIs act as the “front door” for applications to access data, business logic, or functionality from your backend services. Using API Gateway, you can create RESTful APIs and WebSocket APIs that enable real-time two-way communication applications. API Gateway supports containerized and serverless workloads, as well as web applications.
API Gateway handles all the tasks involved in accepting and processing up to hundreds of thousands of concurrent API calls, including traffic management, CORS support, authorization and access control, throttling, monitoring, and API version management. API Gateway has no minimum fees or startup costs. You pay for the API calls you receive and the amount of data transferred out and, with the API Gateway tiered pricing model, you can reduce your cost as your API usage scales.
Amazon CloudFront
Amazon CloudFront is a content delivery network (CDN) service built for high performance, security, and developer convenience.
Elastic Load Balancing
Elastic Load Balancing (ELB) automatically distributes incoming application traffic across multiple targets and virtual appliances in one or more Availability Zones (AZs).
Security, Identity, and Compliance
Amazon Cognito
Amazon Cognito lets you add user sign-up, sign-in, and access control to your web and mobile apps quickly and easily. Amazon Cognito scales to millions of users and supports sign-in with social identity providers, such as Apple, Facebook, Google, and Amazon, and enterprise identity providers via SAML 2.0 and OpenID Connect.
AWS Identity and Access Management (IAM)
AWS Identity and Access Management (IAM) provides fine-grained access control across all of AWS. With IAM, you can specify who can access which services and resources, and under which conditions. With IAM policies, you manage permissions to your workforce and systems to ensure least-privilege permissions.
IAM is an AWS service that is offered at no additional charge.
AWS Key Management Service (KMS)
AWS Key Management Service (KMS) makes it easy for you to create and manage cryptographic keys and control their use across a wide range of AWS services and in your applications. AWS KMS is a secure and resilient service that uses hardware security modules that have been validated under FIPS 140–2, or are in the process of being validated, to protect your keys. AWS KMS is integrated with AWS CloudTrail to provide you with logs of all key usage to help meet your regulatory and compliance needs.
Storage
Amazon S3
Amazon Simple Storage Service (Amazon S3) is an object storage service offering industry-leading scalability, data availability, security, and performance. Customers of all sizes and industries can store and protect any amount of data for virtually any use case, such as data lakes, cloud-native applications, and mobile apps. With cost-effective storage classes and easy-to-use management features, you can optimize costs, organize data, and configure fine-tuned access controls to meet specific business, organizational, and compliance requirements.
Quiz
- Which Amazon service can you use for use cases involving the collection, processing and anlaysis of streaming data?
2. Which Amazon tool is a fully managed artifact repository service that makes it easy for organizations of any size to securely store, publish, and share software packages used in their software development process?
3. Which Amazon Service makes it easy to set up, operate, and scale a relational database in the cloud and includes six six familiar database engines to choose from, including Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server ?
4. Which Amazon service can you use to run and scale Kubernetes application in the cloud or on-premises?
5. Which Amazon service is a monitoring and observability service built for DevOps engineers, developers, site reliability engineers (SREs), IT managers, and product owners?
6. Which Amazon service is a fully managed service that makes it easy for developers to create, publish, maintain, monitor, and secure APIs at any scale?
7. Which Amazon service automatically distributes incoming application traffic across multiple targets and virtual appliances in one or more Availability Zones (AZs)?
8. Which Amazon service can you use to deploy, manage, and scale containerized applications?
9. Which Amazon service provides fine-grained access control across all of AWS?
10. Which Amazon service makes it easy for you to create and manage cryptographic keys and control their use across a wide range of AWS services and in your applications?
11. Which Amazon service lets you model, provision, and manage AWS and third-party resources by treating infrastructure as code?
12. Which Amazon service can you use to create secure resizable virtual servers provisioned in the cloud?
13. Which Amazon service can you use for uses cases requiring the sending of messages from application to application or application to persons?
14. Which Amazon tool is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy?
15. Which Amazon service can you use to deploy and scale an application or service without the need to provision or manage servers?
16. Which Amazon tool provides a unified user interface that enables you to quickly develop, build, and deploy applications on AWS?
17. Which Amazon tool is a fully managed deployment service that automates software deployments to a variety of compute services such as Amazon EC2, AWS Fargate, AWS Lambda, and your on-premises servers?
18. Which Amazon tool helps developers analyze and debug production, distributed applications, such as those built using a microservices architecture?
19. Which Amazon tool is a fully managed continuous delivery service that helps you automate your release pipelines for fast and reliable application and infrastructure updates?
20. Which Amazon service can you use for use cases involving sending, storing and recieve messages using between applications using message queues?
21. Which Amazon database is a a fully managed, in-memory caching service supporting flexible, real-time use cases?
22. Which Amazon service is a content delivery network (CDN) service built for high performance, security, and developer convenience?
23. Which Amazon service can you use for event driven application use cases that use events generated from your applications and or services?
24. Which Amazon database is a fully managed, serverless, key-value NoSQL database designed to run high-performance applications at any scale?
25. Which Amazon service lets you add user sign-up, sign-in, and access control to your web and mobile apps quickly and easily?
26. Which Amazon service can you use for the creation of worflow services using a low code visual workflow interface?
27. Which Amazon service is an object storage service offering industry-leading scalability, data availability, security, and performance?
28. Which Amazon service can you use for use cases involving full text search and search analytics of document and log data?
29. Which Amazon service can you use to store, manage and deploy container images ?
30. Which Amazon service can you use to deploy and scale web applications in the cloud?
31. Which Amazon tool is a developer tool that provides intelligent recommendations to improve code quality and identify an application’s most expensive lines of code?
32. Which Amazon tool is a fully managed service for running fault injection experiments on AWS that makes it easier to improve an application’s performance, observability, and resiliency?
33. Which Amazon tool is a secure, highly scalable, managed source control service that hosts private Git repositories?
Quiz Answers
- Amazon Kinesis
2. AWS CodeArtifact
3. Amazon Relational Database Service (Amazon RDS)
4. Amazon Elastic Kubernetes Service (Amazon EKS)
5. Amazon CloudWatch
6. Amazon API Gateway
7. Elastic Load Balancing (ELB)
8. Amazon Elastic Container Service (Amazon ECS)
9. AWS Identity and Access Management (IAM)
10. AWS Key Management Service (KMS)
11. AWS CloudFormation
12. Amazon Elastic Compute Cloud (Amazon EC2)
13. Amazon Simple Notification Service (Amazon SNS)
14. AWS CodeBuild
15. AWS Lambda
16. AWS CodeStar
17. AWS CodeDeploy
18. AWS X-Ray
19. AWS CodePipeline
20. Amazon Simple Queue Service (SQS)
21. Amazon ElastiCache
22. Amazon CloudFront
23. Amazon EventBridge (Amazon CloudWatch Events)
24. Amazon DynamoDB
25. Amazon Cognito
26. AWS Step Functions
27. Amazon Simple Storage Service (Amazon S3)
28. Amazon Elasticsearch Service (Amazon ES)
29. Amazon Elastic Container Registry (Amazon ECR)
30. AWS Elastic Beanstalk
31. Amazon CodeGuru
32. AWS Fault Injection Simulator
33. AWS CodeCommit