[go: up one dir, main page]

0% found this document useful (0 votes)
709 views47 pages

Module 1 - Welcome To AWS Academy Cloud Developing

Uploaded by

doaahemaid01
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
709 views47 pages

Module 1 - Welcome To AWS Academy Cloud Developing

Uploaded by

doaahemaid01
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 47

AWS Academy Cloud Developing

Module 01 Student Guide


Version 2.0.3
200-ACCDEV-20-EN-SG
© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved.

This work may not be reproduced or redistributed, in whole or in part,


without prior written permission from Amazon Web Services, Inc.
Commercial copying, lending, or selling is prohibited.

All trademarks are the property of their owners.


AWS Training and Certification AWS Academy Cloud Developing

Contents
Module 1: Welcome to AWS Academy Cloud Developing 4

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 3
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 1: Welcome to AWS Academy


Cloud Developing
AWS Academy Cloud
Developing

Module 1: Welcome to AWS Academy Cloud Developing

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 4
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module overview
Sections
1. Course objectives and overview
2. Café business case introduction
3. Roles in cloud computing
4. What’s new at AWS

Activities
AWS Documentation Scavenger Hunt

This module includes the following sections:


1. Course objectives and overview
2. Café business case introduction
3. Roles in cloud computing
4. What’s new at AWS

This module also includes an AWS Documentation Scavenger Hunt activity.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 5
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Section 1: Course objectives and


overview
Module 1: Welcome to AWS Academy Cloud Developing

Section 1: Course objectives and overview.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 6
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Course prerequisites
• Completion of the AWS Academy Cloud Foundations course, or
• Completion of a similar level of Amazon Web Services (AWS) training or certification, such as
having:
• Passed the AWS Certified Cloud Practitioner certification exam, or
• Completed the AWS Cloud Practitioner Essentials course, or
• Completed the AWS Technical Essentials course
• Additionally, it is assumed that you have:
• A working knowledge of at least one programming language supported by an AWS software development kit
(SDK)
• Experience using an SDK
• Familiarity with using Windows or Linux, the command line, and application programming interfaces (APIs)
• Familiarity with virtualization and distributed computing
• An understanding of version control (for example, Git)
• An understanding of data storage mechanisms such as SQL and NoSQL databases

The following are the prerequisites for the AWS Academy Cloud Developing course:
• AWS Academy Cloud Foundations: You must have completed the AWS Academy
Cloud Foundations course or have equivalent experience. Academy Cloud
Foundations is an AWS Academy course that is designed to provide you with an
overall understanding of the AWS Cloud, independent of specific technical roles.
The course provides a detailed overview of cloud concepts, and core AWS services
and their pricing, security, architecture, and support.
• Working knowledge of at least one programming language supported by an AWS
software development kit (SDK): AWS Academy Cloud Developing requires that
you have some coding experience in a language that’s supported by an AWS SDK.
The languages currently supported by the labs are Node.js, Ruby, and Python. For
more information about the SDKs that AWS supports, see “Tools to Build on AWS”
at https://aws.amazon.com/developer/tools/.
• Experience using an SDK
• Familiarity with using Windows or Linux, the command line, and application
programming interfaces (APIs)
• Familiarity with virtualization and distributed computing
• An understanding of version control (for example, Git)
• An understanding of data storage mechanisms such as SQL and NoSQL databases

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 7
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Course objectives
• Recall cloud computing services and models • Develop solutions with Amazon Simple
• Describe developing on AWS Queue Service (Amazon SQS) and Amazon
Simple Notification Service (Amazon SNS)
• Write code that interacts with Amazon
Simple Storage Service (Amazon S3) by using • Describe the use of AWS Step Functions
AWS SDKs
• Explain the role of AWS Identity and Access • Explain how to build secure applications
Management (IAM) • Identify best practices for deploying
• Write code that interacts with Amazon applications
DynamoDB by using AWS SDKs
• Create a REST API by using Amazon API
Gateway
• Create functions with AWS Lambda by using
AWS SDKs
• Configure containers
• Explain caching with Amazon CloudFront and
Amazon ElastiCache
5

After completing this course, you will be able to do the following:


• Recall cloud computing services and models
• Describe developing on Amazon Web Services (AWS)
• Write code that interacts with Amazon Simple Storage Service (Amazon S3) by
using AWS SDKs
• Explain the role of AWS Identity and Access Management (IAM)
• Write code that interacts with Amazon DynamoDB by using AWS SDKs
• Create a REST API by using Amazon API Gateway
• Create functions with AWS Lambda by using AWS SDKs
• Configure containers
• Explain caching with Amazon CloudFront and Amazon ElastiCache
• Develop solutions with Amazon Simple Queue Service (Amazon SQS) and Amazon
Simple Notification Service (Amazon SNS)
• Describe the use of AWS Step Functions
• Explain how to build secure applications
• Identify best practices for deploying applications

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 8
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Course outline
• Module 1: Welcome to AWS Academy Cloud • Module 9: Caching Information for Scalability
Developing (this module)
• Module 10: Developing with Messaging
• Module 2: Introduction to Developing on Services
AWS
• Module 11: Defining Workflows to
• Module 3: Developing Storage Solutions
Orchestrate Functions
• Module 4: Securing Access to Cloud
Resources • Module 12: Developing Secure Applications
on AWS
• Module 5: Developing Flexible NoSQL
Solutions • Module 13: Automating Deployment Using
CI/CD Pipelines
• Module 6: Developing REST APIs
• Module 7: Developing Event-Driven • Module 14: Bridging to Certification
Serverless Solutions
• Module 8: Introducing Containers and
Container Services

To achieve the course objectives, the course consists of the 14 modules that are listed
on the slide. The next slides provide more detail on what subtopics each module
covers.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 9
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 2: Introduction to Developing on AWS


Module sections
1. Introduction
2. Systems development lifecycle
3. Steps to get started developing on AWS
4. Fundamentals of working with the AWS SDKs

Module lab
Exploring CloudShell and the AWS Cloud9 IDE

Module 2 covers the following topics:


1. Introduction
2. Systems development lifecycle
3. Steps to get started developing on AWS
4. Fundamentals of working with the AWS SDKs

At the end of this module, you will complete the Exploring CloudShell and the AWS
Cloud9 IDE lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 10
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 3: Developing Storage Solutions


Module sections
1. Introduction
2. Introducing Amazon S3
3. Creating S3 buckets
4. Working with S3 objects
5. Protecting data and managing access to Amazon
S3 resources

Module lab
Working with Amazon S3

Module 3 covers the following topics:


1. Introduction
2. Introducing Amazon S3
3. Creating S3 buckets
4. Working with S3 objects
5. Protecting data and managing access to Amazon S3 resources

At the end of this module, you will complete the Working with Amazon S3 lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 11
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 4: Securing Access to Cloud Resources


Module sections
1. Introduction
2. Shared responsibility model
3. Introducing AWS Identity and Access
Management (IAM)
4. Authenticating with IAM
5. Authorizing with IAM

Module 4 covers the following topics:


1. Introduction
2. Shared responsibility model
3. Introducing AWS Identity and Access Management (IAM)
4. Authenticating with IAM
5. Authorizing with IAM

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 12
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 5: Developing Flexible NoSQL Solutions


Module sections
1. Introduction
2. Introducing AWS database options
3. Key concepts for DynamoDB
4. Partitions and data distribution
5. Secondary indexes
6. Read/write throughput
7. Streams and global tables
8. Backup and restore
9. Basic operations for DynamoDB tables

Module lab
Working with DynamoDB
10

Module 5 covers the following topics:


1. Introduction
2. Introducing AWS database options
3. Key concepts for DynamoDB
4. Partitions and data distribution
5. Secondary indexes
6. Read/write throughput
7. Streams and global tables
8. Backup and restore
9. Basic operations for DynamoDB tables

At the end of this module, you will complete the Working with DynamoDB lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 13
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 6: Developing REST APIs


Module sections
1. Introduction
2. Introducing APIs
3. Introducing Amazon API Gateway
4. Creating a REST API
5. Integrating with API Gateway
6. Deploying an API
7. Controlling access to a REST API
8. Monitoring a REST API
9. Optimizing API Gateway

Module lab
Developing REST APIs with API Gateway
11

Module 6 covers the following topics:


1. Introduction
2. Introducing APIs
3. Introducing Amazon API Gateway
4. Creating a REST API
5. Integrating with API Gateway
6. Deploying an API
7. Controlling access to a REST API
8. Monitoring a REST API
9. Optimizing API Gateway

At the end of this module, you will complete the Developing REST APIs with API
Gateway lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 14
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 7: Developing Event-Driven Serverless Solutions


Module sections
1. Introduction
2. Introducing serverless computing
3. Introducing AWS Lambda
4. Invoking Lambda functions
5. Setting permissions for Lambda
6. Authoring and configuring Lambda functions
7. Deploying Lambda functions
8. Monitoring and debugging tools for application
developers

Module lab
Creating Lambda Functions Using the AWS SDK for Python

12

Module 7 covers the following topics:


1. Introduction
2. Introducing serverless computing
3. Introducing AWS Lambda
4. Invoking Lambda functions
5. Setting permissions for Lambda
6. Authoring and configuring Lambda functions
7. Deploying Lambda functions
8. Monitoring and debugging tools for application developers

At the end of this module, you will complete the Creating Lambda Functions Using
the AWS SDK for Python lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 15
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 8: Introducing Containers and Container Services


Module sections
1. Introduction
2. Introducing containers
3. Introducing Docker containers
4. Using containers for microservices
5. Introducing AWS container services
6. Deploying applications with Elastic Beanstalk

Module labs
• Migrating a Web Application to Docker Containers
• Running Containers on a Managed Service

13

Module 8 covers the following topics:


1. Introduction
2. Introducing containers
3. Introducing Docker containers
4. Using containers for microservices
5. Introducing AWS container services
6. Deploying applications with AWS Elastic Beanstalk

At the end of this module, you will complete two labs: Migrating a Web Application to
Docker Containers and Running Containers on a Managed Service.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 16
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 9: Caching Information for Scalability


Module sections
1. Introduction
2. Caching overview
3. Caching with ElastiCache
4. Caching with CloudFront
5. Caching strategies

Module labs
• Caching Application Data with ElastiCache
• Implementing CloudFront for Caching and
Application Security
14

Module 9 covers the following topics:


1. Introduction
2. Caching overview
3. Caching with ElastiCache
4. Caching with CloudFront
5. Caching strategies

At the end of this module, you will complete two labs: Caching Application Data with
ElastiCache and Caching with CloudFront.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 17
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 10: Developing with Messaging Services


Module sections
1. Introduction
2. Processing requests asynchronously
3. Introducing Amazon SQS
4. Working with Amazon SQS messages
5. Configuring Amazon SQS queues
6. Introducing Amazon SNS
7. Developing with Amazon SNS
8. Introducing Kinesis Data Streams

Module lab
Implementing a Messaging System Using Amazon SNS and
Amazon SQS

15

Module 10 covers the following topics:


1. Introduction
2. Processing requests asynchronously
3. Introducing Amazon SQS
4. Working with Amazon SQS messages
5. Configuring Amazon SQS queues
6. Introducing Amazon SNS
7. Developing with Amazon SNS
8. Introducing Amazon Kinesis Data Streams

At the end of this module, you will complete the Implementing a Decoupled
Architecture Using Amazon SNS and Amazon SQS lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 18
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 11: Defining Workflows to Orchestrate Functions


Module sections
1. Introduction
2. Coordinating tasks in distributed applications
3. Introducing Step Functions
4. State types
5. Step Functions use cases
6. Step Functions API

Module lab
Orchestrating Serverless Functions with Step
Functions
16

Module 11 covers the following topics:


1. Introduction
2. Coordinating tasks in distributed applications
3. Introducing Step Functions
4. State types
5. Step Functions use cases
6. Step Functions API

At the end of this module, you will complete the Orchestrating Serverless Functions
with Step Functions lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 19
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 12: Developing Secure Applications on AWS


Module sections
1. Introduction
2. Securing network connections
3. Authenticating with AWS STS
4. Authenticating with Amazon Cognito

Module lab
Implementing Application Authentication Using
Amazon Cognito

17

Module 12 covers the following topics:


1. Introduction
2. Securing network connections
3. Authenticating with AWS Security Token Service (AWS STS)
4. Authenticating with Amazon Cognito

At the end of this module, you will complete the Implementing Application
Authentication Using Amazon Cognito lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 20
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 13: Automating Deployment Using CI/CD


Pipelines
Module sections
1. Introduction
2. Introducing DevOps
3. Using AWS code services for CI/CD
4. Deploying applications with CloudFormation
5. Deploying applications with AWS SAM

Module lab
Automating Application Deployment Using a CI/CD
Pipeline
18

Module 13 covers the following topics:


1. Introduction
2. Introducing DevOps
3. Using AWS code services for continuous integration and continuous deployment
(CI/CD)
4. Deploying applications with AWS CloudFormation
5. Deploying applications with the AWS Serverless Application Model (AWS SAM)

At the end of this module, you will complete the Automating Application Deployment
Using a CI/CD Pipeline lab.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 21
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module 14: Bridging to Certification


Module sections
• Certification and resources
• Additional resources

19

Module 14 focuses on bridging your learning in this course to attaining an AWS


certification. Module 14 covers the following topics:
• Certification and resources
• Additional resources

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 22
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Section 2: Café business case


introduction
Module 1: Welcome to AWS Academy Cloud Developing

20

Section 2: Café business case introduction.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 23
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Café and bakery

21

The labs in this course are built around a fictional business case. The business case
provides a way to explore cloud-computing topics in the context of relatable business
needs. This scenario is intended to provide an example of the real-world applicability
of the technical concepts that you will learn in this course.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 24
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Café owners and staff


Frank Sofía
• Co-owner of café • Daughter of Frank and Martha
• Retired from the Navy • Manages the café’s supply chain
• Likes to bake • Technical skills, including
programming, future business
• Not technical administration student
• Started to use AWS

Martha Nikhil
• Co-owner of café • Café employee, visual design skills
• Retired accountant • Interested in learning cloud
computing
• Knows how to use
spreadsheets, otherwise not • Might take on more
technical responsibilities at the café when
Sofía starts her studies at the
university
22

Frank and Martha had a dream to open a café and bakery after they retired. They
were not yet ready to live out their retirement around the house. Instead, Frank and
Martha wanted to do something that included their love of baking and supplemented
their income. They enjoy interacting with the people in their neighborhood. They also
like to support community events across town with their baked goods and coffee.

To make their dreams a reality, Frank and Martha recently opened their café and
bakery. Their daughter, Sofía, and a local school student, Nikhil, help out and work at
the café. Since they opened the café, Frank and Martha have experienced an increase
in local business. They also sometimes have customers who are traveling through the
area either for business or as tourists.

Sofía is Frank and Martha’s daughter, and she runs the café. She manages the supply
chain to source ingredients, and she tracks inventory. She took some programming
classes in secondary school and plans to start working toward a university degree in
business administration later this year.

Sofía just learned about Amazon Web Services. She has talked to her parents about
how they could use AWS services to automate some aspects of the café business,
reduce manual administrative work, and improve the customer experience.

Nikhil works at the café part time. He will finish secondary school this year. He works
behind the counter to serve customers and do other tasks under Sofía’s supervision.
He has some experience with visual design, and wants to learn more about web
development and cloud computing. He plans to get a university degree that will build
upon his existing design skills and also enable him to learn cloud computing skills.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 25
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

AWS consultants, café visitors

Olivia Mateo
• An AWS solutions architect • Systems administrator and
• Technical, with specialties in engineer
databases and network • Likes to find ways to automate
technologies and create repeatable solutions
• Knows the importance of backups
and disaster recovery in solution
design
Faythe
• Developer, experienced
with AWS programming
interfaces
• Knowledgeable about cloud
security

23

Olivia is an AWS solutions architect (SA) who recently moved to the downtown area.
She frequently visits the café and enjoys talking with Sofía. Through their
conversations, Sofía has learned that Olivia is an expert in AWS and cloud
technologies. Olivia used to be a network engineer, and she also has a strong
background in database technologies.

Faythe is an AWS developer who recently completed an AWS internship program. She
likes to use her programming skills to apply the appropriate technology to a business
problem. She recently achieved the AWS Certified Security – Specialty and is
interested in developing data analytics solutions. Faythe is friends with Olivia and
Mateo, and she also frequently visits the café.

Mateo is an experienced AWS SysOps engineer. He is skilled at bringing automation


and fault tolerance to the solutions that he builds. He also likes to design for backup
and disaster recovery. Mateo previously worked as a developer and has been a
mentor to Faythe since she started as an intern with AWS. Mateo is happy to help
Faythe and anyone who is interested in learning. Mateo is friends with Nikhil, Sofía,
Olivia, and Faythe, and he frequently grabs a coffee at the café on his way to work.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 26
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

You will build solutions for the café in the


labs in this course
The café has business needs that can be
solved with cloud development.

The café employees and the consultants often


socialize and share cloud architecture ideas.

24

In the hands-on labs in this course, you gain hands-on practice building on AWS.

Each lab presents new business requirements, which are based on the evolving needs
of the café. Some labs contain sections where the instructions do not provide full,
click-level guidance or detailed step-by-step instructions. Rather, you will be
challenged to apply the skills that you gained from previous labs and the concepts
that are presented in the lectures.

In the labs, you take on the role of Sofía or Nikhil. With advice from the AWS
consultants who occasionally pass through the café, you will architect cloud solutions
that help fulfill the business needs of the café.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 27
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

The café application that you will build

25

The diagram on this slide gives an overview of the application that you will build
through the labs in this course. By the end of this course, you will have learned about
all the components in this diagram. You should also be able to construct your own
cloud application that has as many components as this example.

Here is an overview of the services and application logic represented in the diagram:
Developers use cloud development tools, including the AWS Management Console,
AWS Command Line Interface (AWS CLI), AWS Cloud9, AWS CloudShell, and the AWS
SDK for Python (Boto3) to interact with and build the application.
• The café website has static content stored in the Amazon Simple Storage Service
(Amazon S3). The S3 bucket is secured with a bucket policy.
• Dynamic product information, which is accessible through the website, is stored
on Amazon DynamoDB in the Products table.
• Café website user requests are routed through AWS WAF and Amazon CloudFront
to retrieve content from the S3 bucket, an Amazon API Gateway endpoint, or both.
The API endpoints are integrated with an AWS Lambda function, which handles
queries to the Products table in DynamoDB.
• The café website also integrates data from a legacy coffee suppliers web
application, which was originally built by a company that the café acquired. The
application was subsequently migrated to run in containers on AWS Elastic
Beanstalk. Docker containers running on Amazon Elastic Compute Cloud (Amazon
EC2) instances host the front end of the suppliers website. The container image is
pulled from Amazon Elastic Container Registry (Amazon ECR).
• The suppliers website backend was migrated from MySQL to instead run on an
Amazon Aurora Serverless database on Amazon Relational Database Service
(Amazon RDS) with Amazon ElastiCache for Memcached providing a database
cache.
• Messaging services including Amazon Simple Notification Service (Amazon SNS)
and Amazon Simple Queue Service (Amazon SQS) are used to asynchronously

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 28
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

manage the flow of updates from suppliers about their coffee inventories.
• Café employees can request a coffee inventory report, and AWS Step Functions coordinates the
workflow to fulfill report requests.
• Amazon Cognito user pools control access to portions of the café website that are not available
for all users, such as the inventory report.

You will see this diagram repeated at the start of most modules in the course. Components of the
entire application will be revealed in the diagram within the modules where you will first implement
or use those components in a lab activity.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 29
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Section 3: Roles in cloud computing


Module 1: Welcome to AWS Academy Cloud Developing

26

Section 3: Roles in cloud computing.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 30
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Roles in cloud computing: IT professional

Characteristics
• Generalist, might manage an application
• Often manages a production environment
• Highly technical
• Might have significant or limited experience in cloud
technologies
• Might specialize in one area (such as security or storage)
Job titles: IT administrator, systems administrator,
network administrator

27

In this section, you will learn about five common roles in cloud computing.

You might want to start your career in cloud computing or to transition your career to
a cloud computing role. Maybe you would like to work in an organization where some
employees have cloud computing responsibilities. For any of these reasons, it is
helpful to understand the common job titles or roles that individuals, teams, or
departments perform.

IT professionals are generalists. They typically have a broad range of skills. For
example, they might manage the infrastructure for an entire application and have a
strong understanding of the components that make up the solution. However, they
might not always have detailed knowledge of any one service that is part of the
application. IT professionals are typically highly technical.

Common job titles include IT administrator, systems administrator, and network


administrator.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 31
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Roles in cloud computing: IT leader

Characteristics
• Leads a team of IT professionals
• Responsible for day-to-day operations
• Manages a budget, and stays informed about and chooses
new technologies
• Hands on during early stages of a project, then delegates
the team to take over
Job titles: IT manager, IT director, IT supervisor

28

IT leaders are managers. They typically lead a team of IT professionals and decide on
the type of technology that will be used for a project. They might be significantly
involved in the implementation details early in the project lifecycle. Then, they
delegate the team to handle the details as the project gets closer to completion.

Typical job titles include IT manager, IT director, and IT supervisor.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 32
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Roles in cloud computing: DevOps engineer

Characteristics
• Builds out the infrastructure that applications run on, often
in the cloud
• Follows the guidelines of the cloud architect
• Prefers experimenting and trying things out rather than a lot
of reading
Job titles: DevOps engineer, reliability engineer, build
engineer

29

DevOps engineers spend their time building out the infrastructure that applications
run on. They often create or improve the code that installs and configures servers and
application deployments. DevOps staff prefer to experiment and learn by doing. They
create repeatable deployment solutions, and they work to apply engineering skills to
the business needs of operations teams.

Common job titles include DevOps engineer, reliability engineer, and build engineer.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 33
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Roles in cloud computing: Cloud architect


Characteristics
• Stays up to date with new technologies and helps decide
which to use
• Provides documentation, processes, and tooling to
developers
• Gives developers freedom to innovate
• Common challenges include:
• Resource management
• Cost optimization
• Defining best practices for performance, reliability, and
security
Job titles: cloud architect, systems engineer, systems
analyst
30

Cloud architects spend their time reading and staying up to date with the latest
developments and trends in cloud computing. They are responsible for the design
architecture of applications and selecting which technologies should be used to meet
the needs of a technical business objective. They should be aware of the capabilities
of the many cloud service options that are available. Thus, they can decide which
services to adopt, given a specific set of business requirements. Cloud architects
provide guidance to developers through architectural diagrams and documentation.
They also provide tooling, but they give the development team room to innovate if
they meet the success criteria.

Common challenges for the cloud architect role include resource management; cost
optimization; and defining best practices for performance, reliability, and security.

Typical job titles include cloud architect, systems engineer, and systems analyst.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 34
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Roles in cloud computing: Developer

Characteristics
• Writes, tests, and fixes code
• Thinks about projects at the application level
• Likes sample code
• Works with APIs and SDKs
Job titles: software developer, systems architect,
software development manager

31

Another common role in cloud computing is the developer role. Developers like to
code. They work with the details—writing, testing, and fixing the code that makes an
application work. Developers are likely to borrow ideas from sample code. They work
with application programming interfaces (APIs) and software development kits
(SDKs).

Common job titles include software developer, systems architect, and software
development manager.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 35
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

AWS Certification exams


Role-based certifications align to the following Specialty certifications align to
roles and levels: domain expertise in the following
areas:
Architect Operations Developer

Professional level

Associate level

Foundational level Cloud


practitioner

32

AWS Certification helps learners to build credibility and confidence by validating their
cloud expertise with an industry-recognized credential. Certification helps
organizations to identify skilled professionals who can lead cloud initiatives by using
AWS.
The slide shows the AWS Certifications that are currently available. To earn an AWS
Certification, you must earn a passing score on a proctored exam. Each certification
level for role-based certifications provides a recommended experience level with
AWS Cloud services as follows:
• Professional: two years of comprehensive experience designing, operating, and
troubleshooting solutions using the AWS Cloud
• Associate: One year of experience solving problems and implementing solutions
using the AWS Cloud
• Foundational: Six months of fundamental AWS Cloud and industry knowledge

This course helps prepare you for the AWS Certified Developer – Associate exam

Specialty certifications focus on a particular technical domain. The recommended


experience for taking a specialty exam is technical experience in the domain as
specified in the exam guide.

AWS does not publish a list of all services or features that are covered in a
certification exam. However, the exam guide for each exam lists the current topic
areas and objectives that the exam covers. For exam guides and other preparation
materials, see “AWS Certification exam preparation” at
https://aws.amazon.com/certification/certification-prep/.

The information on this slide is current as of August 2021. However, exams are
frequently updated, and the details regarding which exams are available—and what is
tested by each exam—are subject to change. For the latest AWS Certification exam
information, see “AWS Certification” at https://aws.amazon.com/certification/.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 36
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

You are required to update your certification (or recertify) every 3 years. For more information on
recertification, see “AWS Recertification” at https://aws.amazon.com/certification/recertification/.

The final module in this course provides more information to supplement what you learn in this
course. That module will also guide you in how to apply this knowledge toward achieving the AWS
Certified Developer – Associate certification.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 37
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Activity: AWS
Documentation
Scavenger Hunt

33

You will now complete the AWS Documentation Scavenger Hunt.

The purpose of this brief activity is to acclimate you to locating information in the AWS Documentation, which
will support your learning experience throughout the course.

We recommend bookmarking the AWS Documentation site for future use: https://docs.aws.amazon.com.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 38
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

AWS Documentation Scavenger Hunt


1. Which section of the website contains links to the supported AWS SDKs and
toolkits?
2. How would you navigate to the method for creating an S3 bucket in the AWS
SDK for Python (Boto3)?
3. How would you navigate to the Getting Started topic in the AWS
Documentation for IAM?
4. Which section of the website has a tutorial on how to build a serverless
application?
5. Which section of the website provides a link to AWS technical whitepapers?

https://docs.aws.amazon.com

34

Use the AWS Documentation website at https://docs.aws.amazon.com to answer the


following questions:
1. Which section of the website contains links to the supported AWS SDKs and
toolkits?
2. How would you navigate to the method for creating an S3 bucket in the AWS SDK
for Python (Boto3)?
3. How would you navigate to the Getting Started topic in the AWS Documentation
for IAM?
4. Which section of the website has a tutorial on how to build a serverless
application?
5. Which section of the website provides a link to AWS technical whitepapers?

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 39
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Section 4: What’s
new at AWS
Module 1: Welcome to AWS
Academy Cloud Developing

The “What’s new at AWS” section introduces new and emerging technologies at AWS.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 40
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

What is Amazon CodeWhisperer?


AI-powered code generator for IDEs and code editors
• AI coding companion:
• Generates code suggestions based on comments and
existing code
• Offers real-time support for code authoring directly
within your integrated development environment
(IDE)
• AI security scanner:
CodeWhisperer • Helps identify hard-to-find vulnerabilities
• References multiple standards and best practices

Content processed by CodeWhisperer Professional is not stored or used


for service improvement.
36

Amazon CodeWhisperer analyzes your comments and code as you write them in your
integrated development environment (IDE). It goes beyond code completion by using
natural language processing to comprehend the comments in your code. By
understanding English comments, CodeWhisperer generates complete functions and
code blocks that align with your descriptions. CodeWhisperer also analyzes the
surrounding code, ensuring the generated code matches your style and naming
conventions and seamlessly integrates into the existing context.

When scanning for security vulnerabilities, CodeWhisperer assesses your code against
multiple sets of standards and best practices. This includes the following:
• Open Worldwide Application Security Project (OWASP) standards
• Crypto library best practices
• AWS security standards

The security scan feature is continuously updated to help keep applications free from
new security vulnerabilities.

Compatibility: CodeWhisperer integrates with popular tools such as Visual Studio


Code, JetBrains IDEs (IntelliJ IDEA, PyCharm, etc.), Amazon SageMaker Studio,
JupyterLab, AWS Cloud9, and AWS Lambda console.
Support: CodeWhisperer supports a wide range of programming languages and
development environments, including Python, Java, JavaScript, TypeScript, C#, Go,
Rust, PHP, Ruby, Kotlin, C, C++, shell scripting, structured query language (SQL), and
Scala.
Installation: You can access CodeWhisperer by downloading and installing the AWS
Toolkit IDE extension or plugin. You can also activate CodeWhisperer from directly
within the AWS Lambda and AWS Cloud9 console code editors.

Installation instructions vary depending on the environment. For more information,


see the Content Resources page of your online course.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 41
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Code generation
• Code suggestions
1 import boto3
• Code completion
• Code generation from
comments 1 import boto3
2 # create an s3 bucket named cw95323
• Alternate code
suggestions
• Option to accept or
reject 2 # create an s3 bucket named cw95323
s3 = boto3.resource('s3')
• Reference tracking for s3.create_bucket(Bucket='cw59323')
code that resembles # upload a file to the bucket
open-source training
data
37

The code generation feature of CodeWhisperer offers code suggestions in real time in
your development environment. It automatically offers code completion and code
generation suggestions. It uses natural language processing of English comments in
your code and an understanding of surrounding code to suggest whole lines of code,
complete functions, and logical blocks of code. The generated code is aligned with
your coding style and naming conventions. CodeWhisperer prioritizes secure coding
and responsible artificial intelligence (responsible AI) practices. It’s optimized for
Amazon APIs and trained extensively on Amazon and open-source code. You have the
option to accept the first suggestion, explore more suggestions, or continue writing
your own code. It’s important to review each code suggestion before accepting it
because you might need to make edits to ensure that the suggestion aligns with your
intended functionality.

User actions
• Previous and next suggestion: Use the left arrow and right arrow.
• Accept a suggestion: Press Tab.
• Reject a suggestion: Press Esc.
• Manually start code generation when typing a comment: On MacOS, press
Option+C, and on Windows, press Alt+C.

Open Code Reference Log


CodeWhisperer learns from open-source projects and the code it suggests might
occasionally resemble code samples from the training data. With the reference log,
you can view references to code suggestions that are similar to the training data.
When such occurrences happen, CodeWhisperer notifies you and provides repository
and licensing information. Use this information to make decisions about whether to
use the code in your project and properly attribute the source code as desired.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 42
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Security scan
1 import boto3
2
3 def upload_file(bucket_name, file_path):
4 s3 = boto3.client('s3')
5 with open(file_path, 'rb') as file:
6 s3.upload_fileobj(file, bucket_name, file_path)
7 print("File uploaded.")
8
9 bucket_name = input("Enter bucket name: ")
10 file_path = input("Enter file path to upload: ")
11 upload_file(bucket_name, file_path)

PROBLEMS

CWE-22 – Path traversal: Constructing path names with unsanitized user input can lead to…

38

The security scanning feature of CodeWhisperer detects security vulnerabilities in


both CodeWhisperer-generated code and developer-written code. It scans the code
to identify potential vulnerabilities and provides suggestions for remediation. This
includes scanning for hard-to-find vulnerabilities that might be overlooked. The
security scan is compatible with popular IDEs such as VS Code and JetBrains. It
supports Python, Java, and JavaScript.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 43
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Benefits of Amazon CodeWhisperer

Value to developers Value to organizations


• Increase velocity. • Use at all experience levels.
• Spend less time writing code. • Support open-source attribution.
• Receive help directly within your IDE. • Reduce the risk of security
• Find security vulnerabilities in your code. vulnerabilities.
• Increase code quality and
developer productivity.
39

Automated code generation automates repetitive tasks and saves you time. It
eliminates the need for you to invest excessive hours in exploring and learning new
technologies. Instead, you can rely on high-quality code suggestions that match your
coding style. This approach enhances your productivity so you can focus on critical
tasks, which encourages innovation and progress in software development. With
automated code generation, you can streamline your workflows and achieve
significant time savings while ensuring the delivery of code that meets your
standards.

CodeWhisperer code generation offers many benefits for software development


organizations. It accelerates application development for faster delivery of software
solutions. By automating repetitive tasks, it optimizes the use of developer time, so
developers can focus on more critical aspects of the project. Additionally, code
generation helps mitigate security vulnerabilities, safeguarding the integrity of the
codebase.

CodeWhisperer also protects open source intellectual property by providing the open
source reference tracker. CodeWhisperer enhances code quality and reliability,
leading to robust and efficient applications. And it supports an efficient response to
evolving software threats, keeping the codebase up to date with the latest security
practices. CodeWhisperer has the potential to increase development speed, security,
and the quality of software.

For more information on the benefits of CodeWhisperer, see the Content Resources
page of your online course.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 44
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module wrap-up
Module 1: Welcome to AWS Academy Cloud Developing

40

It’s now time to review the module.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 45
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Module summary
In summary, in this module, you learned to:
• Identify course prerequisites and objectives
• Recognize the café business case
• Identify roles in cloud computing
• Familiarize yourself with AWS documentation
• Explore new technologies at AWS

41

In summary, in this module, you learned how to do the following:


• Identify course prerequisites and objectives
• Recognize the café business case
• Identify roles in cloud computing
• Familiarize yourself with AWS documentation
• Explore new technologies at AWS

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 46
AWS Training and Certification Module 1: Welcome to AWS Academy Cloud Developing

Thank you

Corrections, feedback, or other questions?


Contact us at https://support.aws.amazon.com/#/contacts/aws-academy.

42

Thank you for completing this module.

© 2023, Amazon Web Services, Inc. or its affiliates. All rights reserved. 47

You might also like