ACI Course Descriptions
ACI Course Descriptions
Track Structure
The Cloud Application Developer track consists of 9 courses to help you build your skills to launch your
career as a cloud developer in less than one year - regardless of your technical background.
Each course is a combination of digital e-learning content and live instructor-led training (ILT) sessions:
• E-learning content is delivered in modules that you can read, watch, and engage with on your
own time, at your own pace. The modules are covered over the course of 11 weeks and include
text, video, audio, hands-on lab activities, knowledge checks and assessments.
• Each course is offered as a “pass/fail” course (no letter grades) and includes weekly
assessments. You will be required to achieve a passing score of 85% or higher on all weekly
assessments to successfully complete each course. Each assessment will take the form of
multiple-choice questions presented at the end of your assigned modules each week. You will
have unlimited opportunities to achieve a passing score on each assessment.
• ILT sessions focus on the topics presented in the e-learning content. There are numerous ILT
sessions offered each week where you have the option to attend the ILTs live or watch the
recorded version that will be posted online after each session.
The program also includes the following:
• Two Capstone projects: Capstones are lab challenges where you apply your AWS Cloud skills
you gained in the program to solve business challenges using AWS products and services. You
engage in potential real-world scenarios that help you further develop your AWS Cloud skills
through simulated use cases in an AWS lab environment. Capstones are about applying the
skills you gained in the program to build solutions for your customers.
• AWS Certification vouchers: Further validate your skills with exam prep content and vouchers
for AWS Cloud Practitioner and AWS Developer - Associate Certifications. Vouchers are
awarded when you complete the aligned courses.
As with all courses, the expectation is that you will complete your modules and associated assessments
on a weekly basis. Taking advantage of this “flipped classroom” method is the best way to ensure that
you develop the professional and technical skills required to be successful as a cloud application
developer.
Quarter 1
Course objectives
In this course, you learn to:
• Demonstrate a comprehensive understanding of computer systems, data storage, security,
networking, virtualization, and IT infrastructure fundamentals.
• Understand the fundamentals of AWS Cloud, including its global infrastructure, service models,
adoption framework, access management capabilities, core and specialized services, and
resources for technology support, to leverage the benefits of cloud computing effectively in a
business setting.
• Develop an understanding of the AWS Well-Architected Framework, including its six pillars,
design principles, the Well-Architected Tool, and the value of AWS Trusted Advisor.
• Explain the fundamentals of Amazon Elastic Compute Cloud (EC2), including its benefits,
instance types, pricing models, scaling options, security features, storage options, and
containerization.
• Understand database fundamentals, including concepts, schema structure, relational
databases, and database paradigms, while exploring Amazon Relational Database Service (RDS)
features, setup, and migration processes.
• Understand the key aspects of AWS cost management, including cost drivers, pricing models,
account structures, support tiers, and tools like AWS Cost Explorer, to effectively manage costs,
optimize resource utilization, and align with organizational business needs while considering
the total cost of ownership (TCO).
• Explore the fundamental networking concepts, including AWS network mapping, CIDR
notation, IP addressing, on-premises data center connectivity, and core AWS networking
services.
• Explain how to build a security strategy using AWS services and best practices to protect data,
establish identity and access controls, enable traceability, minimize attack surface, automate
security tasks, and respond to security events.
• Discuss AWS Cloud storage services, including Amazon Simple Storage Service (S3) for object
storage, Amazon EBS for block storage, Amazon Elastic File System (EFS) for file storage, and
database storage options, as well as their use cases for data migration, hybrid cloud, and edge
storage scenarios.
• Prepare for the AWS Certified Cloud Practitioner exam by reviewing key concepts, practicing
with sample questions, testing knowledge through practice sets, and learning effective testing
strategies.
Course Outline
• Module - Introduction to Computer Technology
Hands-on Labs
In this course, you learn to:
Ideal for anyone who wants to build and validate foundational AWS Cloud services and cloud
computing knowledge.
Developer Fundamentals
In this course, you develop foundational knowledge of a widely-used programming language (Python).
Starting with an introduction to Python's history, syntax, and development environment, you'll
progress through topics like data structures, functions, classes, modules, JSON file processing,
exception handling, unit testing, and using the Boto3 SDK. By the end of the course, you'll have a solid
foundation in Python programming, positioning you for further learning or applying these skills in
practical development scenarios.
Course objectives
In this course, you learn to:
• Understand the fundamentals of Python programming, including its history, features,
development environments, syntax, data types, control structures, and loops.
• Use Python's core data structures (lists, sets, tuples, dictionaries) and associated methods,
including iteration, indexing, comprehensions, and nested structures, to effectively manipulate
and process data.
• Understand Python functions, including definition, arguments, scope, and anonymous
functions.
Course Outline
• Module - Python Overview (2 weeks)
• Module - Data Structures and Iterables (2 weeks)
• Module - Functions
• Module - Classes and Objects (2 weeks)
• Module - Libraries and Modules
• Module - Files and File Handling
• Module - Logging and Error Handling
• Module - Testing, Debugging, and SDKs
Hands-on Labs
In this course, you learn to:
• Setup an IDE and install Python and run Python code within the IDE.
• Create a basic statistics calculator application.
• Write programs that perform data manipulation and handle user interactions, such as
reorganizing and summarizing data, as well as taking user input for tasks for an order.
• Develop functions to check for even and odd numbers, and implement a function to validate
user input by accepting a validation function, prompt, and reprompt as arguments, effectively
storing valid order information.
• Develop object-oriented programming skills by creating a music catalog application and
implementing a Savings Account class that inherits from a base Account class.
• Develop a Python module to assess password strength, import the module into a script, and
provide users with a password strength score and appropriate feedback.
• Write JSON objects to a file, handle file operations efficiently, and convert JSON data to
Python objects for further processing and analysis.
• Write a program that calculates the service time of a part based on user input, determines if
the part needs replacement, and logs informational, warning, and critical messages related to
the part's service time to a separate file.
Ideal for anyone looking to develop foundational knowledge of Python and is pursuing cloud roles
such as developer.
Course objectives
In this course, you learn to:
• Understand the concepts and features of AWS monitoring services (Amazon CloudWatch, AWS
CloudTrail, and AWS X-Ray) and their importance in monitoring and troubleshooting AWS
resources, defining monitoring goals, creating monitoring plans, and implementing auto-
scaling based on metrics and alarms.
• Explain the fundamentals of auto scaling and load balancing on AWS, including their
integration with various AWS services and deployment strategies.
• Understand AWS monitoring and logging services (Amazon CloudWatch, AWS CloudTrail,
Amazon EventBridge, and AWS Config) to ensure compliance with regulations and effectively
manage cloud-based applications.
• Understand and apply AWS EventBridge concepts, including event buses, event patterns, and
rules, along with archiving and replaying events, and explore how EventBridge enhances
security through service decoupling.
• Understand the role of AWS Systems Manager in managing and automating AWS
infrastructure, including its various capabilities, tools, and services for operations management,
infrastructure deployment, and instance configuration.
• Understand the application, change, and node management capabilities of AWS Systems
Manager, their benefits, and use cases for effective cloud resource management.
• Understand the fundamentals of scripting, including scripting languages, synchronous and
asynchronous processing, AWS CLI, AWS CloudShell, and Bash shell.
• Describe variables, loops, conditionals, functions, error handling techniques, and logging
techniques, to effectively interact with and manage AWS resources using scripts.
• Understand the fundamentals of AWS Tools for PowerShell, including its installation, setup,
and usage, as well as the basics of PowerShell scripting, such as variables, loops, conditionals,
functions, parameters, error handling, and retries.
• Understand DevOps principles, practices, and tools for efficient software development and
deployment processes, including version control systems and code repositories like AWS
CodeCommit.
• Understand the fundamentals of version control systems, continuous integration and
continuous delivery (CI/CD) practices, and the tools and processes involved in automating
software development and deployment workflows.
Course Outline
• Module - Logging and Scaling (2 weeks)
• Module - Security, Monitoring, and Compliance (2 weeks)
• Module - Systems Management (2 weeks)
• Module - Scripting (2 weeks)
• Module - DevOps (3 weeks)
Hands-on Labs
In this course, you learn to:
Ideal for anyone pursuing cloud roles like developer, cloud administrator, cloud support associate, and
DevOps Engineer.
Course objectives
Hands-on Labs
In this course, you learn to:
• Deploy a secure WordPress blog on an Amazon Linux EC2 instance, including installing
WordPress, configuring the necessary components, and implementing security measures.
• Deploy a Flask application to AWS Elastic Beanstalk using command line tools.
• Deploy a serverless application using AWS Lambda and Amazon S3, with event-driven
functionality.
• Optimize the performance of a product API by applying appropriate techniques and best
practices.
• Use basic network troubleshooting commands to identify network issues.
• Use AWS Network Access Analyzer to analyze and validate network access rules within and
across Amazon VPCs.
• Configure DNS resolution for private resources using Amazon Route 53 private hosted zones
and set up DNS on Amazon EC2 instances.
• Create a CloudFront distribution to securely serve a publicly accessible static image file from an
Amazon S3 bucket using a CloudFront domain name.
• Troubleshoot and remediate connectivity issues related to security group configurations in an
Amazon VPC.
• Use AWS CLI commands to manage Amazon S3 buckets, objects, and configurations, including
creating buckets, moving objects, configuring a static website, and setting up an S3 Batch
Operations job.
• Demonstrate the ability to create and manage Amazon EBS volumes, configure RAID arrays,
compare performance of different volume configurations, and create multi-volume snapshots.
• Deploy and configure Amazon EFS with advanced features such as mounting Amazon EFS file
systems using amazon-efs-utils and fstab, and implement backup and lifecycle management
for Amazon EFS file systems.
• Differentiate between self-managed databases on Amazon EC2 and managed database
services like Amazon RDS, understanding the trade-offs in terms of customization, control, and
operational responsibilities.
• Explain how Amazon RDS automatic backups enable point-in-time recovery and configure the
backup retention period for a database instance.
• Demonstrate the ability to migrate data from a MySQL database on Amazon EC2 to an Amazon
Aurora RDS instance using AWS Database Migration Service (DMS).
• Configure Amazon Cognito User Pools with Hosted UI and integrate it with Amazon API
Gateway to secure API access using Cognito Authorizers.
• Use AWS WAF web ACLs and rate-based rules to secure a web application and API Gateway
endpoint.
• Encrypt a secret using AWS Secrets Manager and AWS Key Management Service (KMS), and use
the encrypted secret to securely connect to an Amazon RDS database.
Developer Intermediate 1
In this course, you will be able to deploy microservices for event-driven applications on containers or in
a serverless fashion. You will design and develop a working application that demonstrates your skill
and ability to use AWS services and Python code to create cloud-based solutions to employer-informed
problem scenarios (Cloud Capstone 1).
Course objectives
In this course, you learn to:
• Understand the fundamentals of web development by exploring the request-response flow,
the roles of HTML, CSS, and JavaScript, and basic HTML elements and best practices for
building simple webpages.
• Analyze the structure and layout of HTML tags, identify the purpose of CSS, and determine
when to use HTML formatting tags versus CSS for enhancing web page readability and
presentation.
• Develop interactive web pages by utilizing HTML form elements, leveraging their attributes,
and enhancing functionality through client-side JavaScript, including understanding its syntax
and applying it to customize webpage behavior.
• Understand the Django web framework, its MVT architecture, and set up a Django
development environment on AWS Cloud9.
• Apply a functional model for data management in a Django web application.
• Implement a view function in Django to handle HTTP requests and render a response.
• Create a basic template in a Django web application to render dynamic content.
• Understand how to set up, access, and use the Django admin site for user management, model
administration, and data maintenance.
• Explain the key features and benefits of AWS Elastic Beanstalk, with a focus on the Python
platform and its available tools.
• Understand how to configure and deploy a Django web application on AWS using services like
Amazon S3, Amazon ElastiCache, Amazon RDS, and AWS Elastic Beanstalk.
• Understand the characteristics, benefits, and design patterns of modern, microservice-based
applications on AWS, and learn how to decompose a monolithic application into microservices.
• Understand microservice data storage patterns and choose the appropriate AWS data storage
service based on the characteristics and persistence requirements of the microservice.
• Understand and apply AWS services for deploying microservices using serverless and container
technologies, including writing and troubleshooting Lambda functions with Python.
• Understand microservice integration patterns, including synchronous and asynchronous
communication, using Amazon API Gateway and AWS Step Functions for efficient process
flows.
• Understand the concept of AWS Step Functions, their purpose in orchestrating microservices,
and build Step Functions to integrate multiple microservices.
• Understand the integration of AWS CloudFormation with AWS CDK and AWS SAM for efficient,
reliable, and secure deployment of serverless applications.
Hands-on Labs
In this course, you learn to:
• Create a basic HTML webpage incorporating various HTML elements and structure it effectively
for web presentation, and deploy the webpage on a web server to make it accessible over the
internet.
• Use HTML lists and tables to structure and organize content on a webpage.
• Enhance the visual appeal and layout of a web page by applying CSS styles and using HTML div
elements for structuring content.
• Apply HTML form elements and CSS styling techniques to create an interactive webpage with a
product order form and dynamic visual elements.
• Apply client-side interactivity and form validation using JavaScript event handling, DOM
manipulation, and form validation techniques.
• Set up a Python virtual environment, install the Django web framework within the virtual
environment, and create a basic Django project with a "Hello World" web application running in
it.
• Develop Django models to represent product and order data structures, enabling the storage
and retrieval of product information and order details in the Django application's database.
• Create Django views to enable users to place orders, view order confirmations, access order
history, and view line item details for previous orders.
• Develop Django templates to create a user-friendly interface for a web application, and
implement order-handling functionality to enable customers to place and manage orders.
• Activate the Django admin interface and explore its core features to manage data, users, and
application configurations efficiently.
• Build a web application hosted on Amazon S3, with an Amazon DynamoDB table as the data
store, using AWS CLI commands to retrieve and store resource information as variables for
later use.
• integrate an Amazon DynamoDB table with a web application hosted on an Amazon S3 bucket,
enabling you to retrieve and display data from the DynamoDB table on the web frontend.
• Integrate AWS Lambda functions with API Gateway to create a RESTful API endpoint, and
modify a web application to invoke the API endpoint.
• Create an AWS Step Functions state machine to orchestrate AWS Lambda functions into a
workflow for a trivia game application.
Ideal for anyone pursuing cloud roles like developer, solutions architect, cloud administrator, or cloud
support associate.
• Configure secure and controlled access to AWS resources for storing and processing customer
data.
• Provision and configure AWS services (Amazon DynamoDB, Amazon SNS, and AWS IAM) to
implement a serverless application that stores customer metadata and sends notifications,
following AWS best practices and security principles.
• Develop and configure an AWS Lambda function using Python and the AWS SDK for Python
(Boto3) to automate file verification and processing for Amazon S3 events.
• Use AWS SAM to deploy a serverless application, including an AWS Lambda function triggered
by an Amazon S3 event.
• Develop Python code to parse a customer details CSV file and interact with a DynamoDB table
using the AWS SDK for Python (Boto3).
• Develop a Python application that uses AWS services (Amazon Rekognition, Amazon SNS, and
Amazon DynamoDB) to perform facial recognition, notification, and data storage tasks.
• Develop a Python application that leverages AWS services to automate the processing and
analysis of ID documents, publish notifications, and update a DynamoDB table.
• Deploy and test a serverless API using AWS Lambda and API Gateway.
• Apply an AWS serverless architecture to validate licenses using SQS, Lambda, and third-party
API integration.
• Decompose an existing Lambda function into multiple functions to prepare for an AWS Step
Functions workflow.
• Configure AWS Step Functions and AWS X-Ray to orchestrate and monitor a serverless
application workflow.
Course Outline
• Module - Introduction to Linux
• Module - DevOps 2 (3 weeks)
• Module - Infrastructure as Code (2 weeks)
• Module - Monitoring and Troubleshooting (5 weeks)
Hands-on Labs
In this course, you learn to:
• Use AWS Systems Manager Session Manager to establish a secure connection to an Amazon
EC2 Linux instance and practice executing basic Linux shell commands.
Ideal for anyone pursuing cloud roles like developer, solutions architect, cloud administrator, cloud
support associate, or DevOps Engineer.
Course objectives
Hands-on Labs
In this course, you learn to:
• Implement secure authentication in a web application using OpenID Connect (OIDC) and JSON
Web Tokens (JWT) by setting up an OIDC provider and integrating the application to receive
temporary JWT credentials.
• Implement Zero Trust principles for securing service-to-service communication in microservices
and distributed architectures.
• Identify techniques for securing data in Amazon S3.
• Investigate and analyze a potentially compromised Amazon EC2 instance by following incident
response procedures to identify and mitigate the potential security breach.
• Configure and test an AWS Client VPN endpoint with mutual authentication using OpenVPN on
an Amazon EC2 instance.
• Use AWS Network Firewall to filter outbound web traffic, configure stateful rule groups to
mitigate threats against AWS workloads, and leverage Amazon CloudWatch Log Groups for
network monitoring and threat detection.
• Create a DynamoDB table with appropriate primary key and secondary indexes to efficiently
store and retrieve player data for an in-game service feature.
• Use Amazon DynamoDB's provisioned read/write capacity mode, monitor performance metrics
using Amazon CloudWatch, and implement auto scaling to dynamically adjust throughput
capacity to handle traffic spikes without throttling.
• Configure DynamoDB streams with AWS Lambda to process real-time data changes, enable
Time To Live (TTL) for automatic item expiration, and verify the setup using AWS Lambda logs.
• Implement caching with Amazon DynamoDB Accelerator (DAX) to improve the performance
and reduce the costs of DynamoDB applications.
• Configure an Amazon ElastiCache for Redis cluster, connect to it from an AWS Cloud9 instance,
perform data operations on a sorted set, and clean up resources by deleting the AWS
CloudFormation stack.
• Implement an Amazon CloudFront distribution to accelerate dynamic content delivery and
enhance website performance and user experience.
• Demonstrate the ability to launch and configure an Amazon EC2 instance for running a Python
application that checks URLs.
• Deploy and invoke an AWS Lambda function to check the availability of URLs, demonstrating
the serverless execution model.
• Build, test, and deploy Docker images to Amazon Elastic Container Registry (ECR).
• Deploy and manage containerized applications on Amazon EKS using Amazon ECR and AWS
Fargate, including creating an EKS cluster with eksctl.
Ideal for anyone pursuing cloud roles like developer, solutions architect, cloud administrator, or cloud
support associate.
Developer Intermediate 2
In this course, you will design and develop a more complex working application that demonstrates your
skill and ability to use AWS services and Python code to create cloud-based solutions to employer-
informed problem scenarios (Cloud Capstone 2). This course will also help you prepare for the AWS
Certified Developer Associate exam.
Course objectives
Course Outline
• Module - Designing a Microservices Application
• Module - Frontend Web Application Development with React
• Module - Building the Pets Microservice
• Module - Building and Deploying the Adoptions Microservice (2 weeks)
• Module - Adding Authentication and Authorization to the Pet Shelter Application
• Module - Adding Reporting to the Inventory Microservice
• Module - Observability and Tracing
• Module - Using Amplify Gen2 to Create Backend Resources and Add Authentication
• Module - Amplify Hosting
• Module - AWS Certified Developer Associate Exam Preparation (2 weeks)
Hands-on Labs
In this course, you learn to:
• Set up an AWS Cloud9 IDE environment and develop a web application using React, Vite, and
JavaScript.
• Create a microservice using AWS Cloud9 and AWS SAM to retrieve order information.
• Develop and deploy a serverless microservice using AWS services, including Amazon
DynamoDB for data storage, AWS Lambda for running microservice code, and Amazon API
Gateway for creating API endpoints.
• Implement user authentication and authorization in a website using Amazon Cognito.
• Develop an AWS Step Functions workflow to generate and deliver an inventory report in
response to authenticated user requests.
• Analyze the performance of a distributed application using AWS X-Ray.
• Implement a secure and efficient backend for a Bike Shop application using Amazon
DynamoDB, including a products table and user authentication.
• Deploy changes to a Pet Shelter application using AWS CodeCommit.
AI for Developers
In this course, you will learn skills to leverage AWS AI/ML technologies in real-world projects. You will
learn to explain the uses of AWS AI/ML tools, differentiate AI and ML concepts, and explore prompt
engineering methods. Finally, you will build an AI application using AWS AI tools, leverage LangChain
to create LLM-powered applications, and apply Retrieval Augmented Generation (RAG) techniques.
Course objectives
• Explain AI and ML concepts, including generative AI, foundation models, and large language
models (LLMs).
• Differentiate between traditional ML and deep learning approaches.
• Identify and leverage appropriate AWS AI/ML services for various tasks.
• Apply prompt engineering techniques for effective LLM utilization.
• Build AI applications using AWS AI tools, such as Amazon Bedrock and Amazon Q Developer.
Course Outline
• Module - Introduction to AI and ML pipeline (2 weeks)
• Module - Practicing Prompt Engineering (2 weeks)
• Module - Developing AI Applications (3 weeks)
• Module - Building LLM Applications (3 weeks)
• Module - Applying Responsible AI (1 week)
Hands-on Labs
In this course, you learn to:
• Explore Amazon Bedrock and enable access to LLMs, experiment with the chat and image
playgrounds, test different models and parameters, and run examples from the Bedrock
console.
• Develop proficiency in crafting effective prompts for language models by building iterative
development techniques, leveraging zero-shot, one-shot, few-shot, and chain-of-thought
prompting methodologies to elicit desired responses.
• Use Amazon Bedrock and Titan, to develop Python functions and Jupyter notebooks for
generating text and images.
• Integrate Amazon Bedrock with other AWS AI services using the boto3 library.
• Develop a serverless AI application integrating Amazon Bedrock, Amazon S3, API Gateway, and
AWS Lambda to generate LLM-based outputs in JSON format for front-end application
consumption.
• Use Amazon Textract, including its API, to automatically extract text, forms, and table data
from documents by configuring AWS services like AWS Lambda and Amazon S3.
• Use Amazon Rekognition, AWS Lambda, and Amazon S3 to automatically detect and analyze
objects, labels, and content in images and videos through the Rekognition API and serverless
architecture.
• Develop a Python-based data analysis pipeline that leverages LLMs and open-source libraries
to generate, analyze, and visualize sample sales data.
• Construct a knowledge base using Amazon Bedrock, including uploading source documents to
Amazon S3, setting up a vector store in Amazon OpenSearch Serverless.
• Use the Amazon Bedrock console test panel to query the knowledge base and observe how
responses are enriched by the retrieved context.
• Use the Amazon Bedrock console to select and evaluate a foundation model, and leverage
AWS Lambda to create quiz questions from FAQ content using API calls to Amazon Bedrock.
• Use LangChain's functionality to develop and interact with chatbots and language models,
including generating text, parsing responses, and leveraging templates and messages for
simplified creation.
Ideal for anyone pursuing cloud roles like developer, cloud administrator, cloud support associate, or
data scientists.