AWS Academy Cloud Computing Architecture

Start date: February 2018
End date: TBD
Schedule: TBD
Duration: 6 weeks

This course is open to all students who meet the admission requirements below.

Next group starts

February 2018

Amazon Web Services Academy logo
Cloud Computing Architecture is an AWS Academy curriculum designed to help students develop technical expertise in cloud computing and prepare them for the AWS Certified Solutions Architect – Associate certification exam. The curriculum is delivered through instructor-led classes, hands-on labs, and project work. Students have access to course manuals, online knowledge assessments, hands-on labs, a free practice certification exam, and a discount voucher for the certification exam.


UNIT 1: Introduction to Cloud Computing

  • What is Cloud Computing?
  • Leveraging Cloud Computing
  • Cloud Economics and Total Cost of Ownership

UNIT 2: Getting Started with AWS

  • AWS Compute, Storage, and Networking
  • AWS Security, Identity, and Access Management
  • AWS Database Options
  • AWS Elasticity and Management Tools

UNIT 3: Architecting on AWS

Part 1: Introduction to System Design

  • AWS Essentials Review
  • Designing Your Environment
  • System Design for High Availability (Part I & II)

Part 2: Automation and Serverless Architectures

  • Event-Driven Scaling
  • Automating Your Infrastructure

Mid-curriculum project

  • Decoupling Your Infrastructure
  • Designing Web-Scale Storage

Part 3: Well-Architected Best Practices

  • Introducing the Well-Architected Framework
  • Well-Architected Pillar 1: Security
  • Well Architected Pillar 2: Reliability
  • Well Architected Pillar 3: Performance Efficiency
  • Well Architected Pillar 4: Cost Optimization

Part 4: Deployment and Implementation

  • Troubleshooting
  • Design Patterns and Sample Architectures

Final project


Admission Requirements

Students planning to enroll in the AWS Academy Cloud Computing Architecture curriculum should have technical knowledge and skills in the following topics:

Data Center Concepts

Basic concepts of data center design philosophies, architecture, and operation of modern data centers, including:

  • Hardware (servers, racks, storage, and networking devices)
  • Software (virtualization)
  • Connectivity (backbones and peering)
  • Offsite backup services


  • Understand typical networking devices (e.g., switches, routers), protocols (e.g., Ethernet, IPv4 protocol stack, HTTP), and services (e.g., DNS, DHCP)
  • Know how to configure IP settings on common operating systems and devices
  • Understand networking subnetting
  • Describe common network appliances (e.g., firewall, load balancer, and proxy) and their functions

Servers and Systems Administration

  • Install and manage Windows or Linux operating systems, manually or unattended
  • Install applications, manually and via packaged deployments (e.g., RPM, MSI or yum)
  • Manage system security by administering users and groups, assigning permissions to resources, and configuring personal firewalls
  • Preferred: Understand distributed systems concepts including fault tolerance, high availability, configuration management, and automation


  • Understand common storage architecture and concepts related to servers and application environments (e.g., RAID, clustering)
  • Differences between types of storage (e.g., file, block)
  • Preferred: How file systems work (e.g., NTFS or ext4)


  • Understand common methods used to secure data centers, including:
    • Access control and identity management
    • Securing data in transit (e.g., SSH, SSL or TLS) and at rest (e.g., AES or SHA)


  • Conceptual understanding of common database technologies and solutions, including:
    • Relational (e.g., MySQL, Microsoft SQL Server or Oracle SQL)
    • NoSQL (e.g., Cassandra or MongoDB)
    • Preferred: Distributed frameworks (e.g., Apache Hadoop, Apache Spark or Presto)

Preferred: Scripting and Configuration Management

  • Comfortable reading scripts in one or more scripting languages (e.g., Bash, Python, Java, C#, Ruby or PowerShell)
  • Conceptual knowledge of configuration management solutions (e.g., Puppet or Chef)

Preferred: Application Development

  • Conceptual understanding on how applications are built, and the tools and methods used to manage development, such as:
    • Version control solutions (e.g., Git, Perforce or BitBucket)
    • Development tools (e.g., code review solutions and development collaboration solutions)


Cost (Subject to change)

  • TBD