Nanodegree key: nd9990
Version: 3.0.0
Locale: en-us
Become an AWS cloud developer.
Content
Part 01 : Welcome
-
Module 01: How to Get Help from Peers and Mentors
-
Lesson 01: Welcome to Udacity
You are starting a challenging but rewarding journey! Take 5 minutes to read how to get help with projects and content.
- Concept 01: What It Takes
- Concept 02: Project Reviews
- Concept 03: Knowledge
- Concept 04: Mentors and Student Hub
- Concept 05: Community Initiatives
- Concept 06: Meet the Careers Team
- Concept 07: Introduction to the Career Portal
- Concept 08: Access Your Career Portal
- Concept 09: Your Udacity Professional Profile
- Concept 10: Prepare for the Udacity Talent Program
-
Lesson 02: Get Help with Your Account
What to do if you have questions about your account or general questions about the program.
-
-
Module 02: Welcome
-
Lesson 01: Welcome to Cloud Developer Nanodegree Program!
Welcome to the Cloud Developer Nanodegree program! In this lesson, you will learn more about the structure of the program and meet the team.
-
-
Module 03: Careers Services Orientation
-
Lesson 01: Nanodegree Career Services
The Careers team at Udacity is here to help you move forward in your career - whether it's finding a new job, exploring a new career path, or applying new skills to your current job.
-
Lesson 02: Jobs in Cloud Computing
To kick off your industry research, learn about different jobs found in Cloud Computing.
-
Part 02 : Cloud Fundamentals
The cloud has become a key enabler for innovation with beneficial features like high availability, unlimited capacity, and on-demand scalability and elasticity. Learn the fundamentals of cloud computing while being introduced to compute power, security, storage, networking, messaging, and management services in the cloud. While learning the fundamentals, you will explore tools and services offered by Amazon Web Services (AWS) through interactive hands-on exercises. By the end of the course, you will have deployed your first website to AWS, and you will be prepared to continue your learning journey in the Cloud Developer nanodegree program.
-
Module 01: Cloud Fundamentals
-
Lesson 01: Cloud Computing
Learn the basics of cloud computing including cloud deployment models, benefits, and popular options.
- Concept 01: Course Introduction
- Concept 02: Instructor Introduction
- Concept 03: Lesson Introduction
- Concept 04: What is Cloud Computing?
- Concept 05: Types of Cloud Computing
- Concept 06: Cloud Computing Deployment Model
- Concept 07: Common Benefits
- Concept 08: Options
- Concept 09: Services
- Concept 10: Global Infrastructure
- Concept 11: Shared Responsibility Model
- Concept 12: Lab: Setup free-tier account
- Concept 13: Lesson Recap
-
Lesson 02: Foundational & Compute Service
Learn why we need servers, compute power, and security.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need servers in the cloud?
- Concept 03: Elastic Cloud Compute (EC2)
- Concept 04: Demo - Elastic Cloud Compute (EC2)
- Concept 05: Elastic Block Store (EBS)
- Concept 06: Demo - Elastic Block Store (EBS)
- Concept 07: Why do we need security in the cloud for our servers?
- Concept 08: Virtual Private Cloud (VPC)
- Concept 09: Demo - Virtual Private Cloud (VPC)
- Concept 10: Lab - Launch an EC2 instance
- Concept 11: Why do we need compute power in the cloud?
- Concept 12: Lambda
- Concept 13: Demo - Lambda
- Concept 14: Lab - Create and execute a Lambda
- Concept 15: Elastic Beanstalk
- Concept 16: Lab - Deploy App to Beanstalk
- Concept 17: Lesson Recap
-
Lesson 03: Storage & Content Delivery
Learn why we need storage and content delivery in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need storage in the cloud?
- Concept 03: S3 & Glacier
- Concept 04: Demo - S3 & Glacier
- Concept 05: DynamoDB
- Concept 06: Demo - DynamoDB
- Concept 07: Lab - DynamoDB
- Concept 08: Relational Database Service (RDS)
- Concept 09: Demo - Relational Database Service (RDS)
- Concept 10: RedShift
- Concept 11: Lab - RDS
- Concept 12: Why do we need content delivery in the cloud?
- Concept 13: Cloud Front
- Concept 14: Demo - Cloud Front
- Concept 15: Lab - S3 & Cloud Front
- Concept 16: Lesson Recap
-
Lesson 04: Security
Learn the importance of security in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need security for applications?
- Concept 03: AWS Shield
- Concept 04: AWS Web Application Firewall
- Concept 05: Identity and Access Management (IAM)
- Concept 06: Demo - Identity and Access Management (IAM)
- Concept 07: Lab - IAM
- Concept 08: Lesson Recap
-
Lesson 05: Networking & Elasticity
Learn the basics of networking and elasticity in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need networking in the cloud?
- Concept 03: Route 53
- Concept 04: Why do we need elasticity in the cloud?
- Concept 05: EC2 Auto Scaling
- Concept 06: Demo - EC2 Auto Scaling
- Concept 07: Elastic Load Balancing
- Concept 08: Demo - Elastic Load Balancing
- Concept 09: Lab - EC2 Auto Scaling
- Concept 10: Lesson Recap
-
Lesson 06: Messaging & Containers
Learn the basics of messaging and containers in the cloud.
- Concept 01: Lesson Introduction
- Concept 02: Why do we need messaging in the cloud?
- Concept 03: Simple Notification Service (SNS)
- Concept 04: Demo - Simple Notification Service (SNS)
- Concept 05: Why do we need queuing technology?
- Concept 06: Simple Queue Service (SQS)
- Concept 07: Demo - Simple Queue Service
- Concept 08: Lab - SNS
- Concept 09: Why do we need containers?
- Concept 10: Elastic Container Service (ECS)
- Concept 11: Demo - Elastic Container Service
- Concept 12: Lesson Recap
-
Lesson 07: AWS Management
Learn why we need logging, auditing, and resource management in the cloud.
- Concept 01: Introduction
- Concept 02: Why do we need logging and auditing in the cloud?
- Concept 03: Cloud Trail
- Concept 04: Demo - Cloud Trail
- Concept 05: Cloud Watch
- Concept 06: Demo - Cloud Watch
- Concept 07: Lab - Cloud Watch
- Concept 08: What is Infrastructure as Code and why do we need it?
- Concept 09: Cloud Formation
- Concept 10: Demo - Cloud Formation
- Concept 11: Lab - Cloud Formation
- Concept 12: AWS Command Line Interface (CLI)
- Concept 13: Demo - AWS Command Line Interface (CLI)
- Concept 14: Lesson Recap
- Concept 15: Course Recap
-
Lesson 08: Deploy Static Website on AWS
In this project, you will deploy a static website to AWS.
-
Part 03 : Full Stack Apps on AWS
-
Module 01: Engineering Full Stack Apps in the Cloud
-
Lesson 01: Cloud Basics
Learn key terminology and building blocks of a cloud system. Understand the design paradigm of modern cloud applications.
-
Lesson 02: Develop
Implement a process so you write quality code, working alone or on teams. Unit and integration testing, a better way to git, and how to use packaged dependencies.
-
Lesson 03: Storing Data in the Cloud
Set up and start using a cloud-based relational database for storing user data using AWS RDS. Implement a filestore for media like images using AWS S3.
-
Lesson 04: Building and Deploying
Consume cloud data services (database and filestore) within your server application. Deploy your application using AWS Elastic Beanstalk.
- Concept 01: Intro
- Concept 02: Organizing Our Code & Working With Larger Systems
- Concept 03: Connecting our RDS Database in Node
- Concept 04: Connecting our S3 Filestore in Node
- Concept 05: Handling Secrets with Environment Variables
- Concept 06: Permissions for Elastic Beanstalk
- Concept 07: Deploying Our Server to the Cloud
-
Lesson 05: User Authentication and Security
Cloud systems come with a new set of challenges to only allow authorized users access to sensitive information. Learn common mistakes and modern techniques for dealing with security.
- Concept 01: Basic Security and User Auth
- Concept 02: Tips to Follow Along
- Concept 03: Implementing Salted Hashed Passwords
- Concept 04: bcrypt Implementation Solution
- Concept 05: Storing Passwords on our Clients
- Concept 06: Implementing JWTs in Node
- Concept 07: Deploying Changes
- Concept 08: Closing Tips on Security
- Concept 09: Lesson Recap
-
Lesson 06: Scaling and Fixing
Your work is never over. Cloud systems need to be maintained as dependencies are updated and there is more demand for your service. We explore tools and process to minimize growing pains
-
Lesson 07: Udagram: Your Own Instagram on AWS
In this project, you will develop a cloud-based application for uploading and filtering images!
-
-
Module 02: Career Support
-
Lesson 01: Optimize Your GitHub Profile
Other professionals are collaborating on GitHub and growing their network. Submit your profile to ensure your profile is on par with leaders in your field.
- Concept 01: Prove Your Skills With GitHub
- Concept 02: Introduction
- Concept 03: GitHub profile important items
- Concept 04: Good GitHub repository
- Concept 05: Interview with Art - Part 1
- Concept 06: Identify fixes for example “bad” profile
- Concept 07: Quick Fixes #1
- Concept 08: Quick Fixes #2
- Concept 09: Writing READMEs with Walter
- Concept 10: Interview with Art - Part 2
- Concept 11: Commit messages best practices
- Concept 12: Reflect on your commit messages
- Concept 13: Participating in open source projects
- Concept 14: Interview with Art - Part 3
- Concept 15: Participating in open source projects 2
- Concept 16: Starring interesting repositories
- Concept 17: Next Steps
-
Part 04 : Monolith to Microservices at Scale
Microservices are becoming the default mode of developing and deploying applications at scale. The microservice architecture make it more easy to scale an application to large system and is a great enabler for continuous integration and delivery. Microservices architecture allows independent scaling, independent releases and deployments and independent development so that each service has its own codebase. In this course we will cover the best practices on how to develop and deploy microservices. You will learn topics such as different microservice architecture patterns, independent scaling, resiliency, service replication, service registration and discovery. By the end of this course, you should be able to design and build an application using an microservice architecture.
-
Module 01: Monolith to Microservices at Scale
-
Lesson 01: Best Practices for Micro-Services Development
- Concept 01: Lesson Intro
- Concept 02: Design and Development of Microservices
- Concept 03: Application overview
- Concept 04: Hands On
- Concept 05: Benefits of Microservices
- Concept 06: Operational Concerns
- Concept 07: When to Use Microservices
- Concept 08: Exercise: Start the Monolith Application
- Concept 09: Lesson Recap
-
Lesson 03: Container
- Concept 01: Lessson Intro
- Concept 02: Docker Intro
- Concept 03: Building your first image
- Concept 04: Running the container
- Concept 05: Debugging a container
- Concept 06: Important commands in docker
- Concept 07: Image registry
- Concept 08: Docker compose
- Concept 09: Exercise: Run the application in docker
- Concept 10: Lesson Recap
-
Lesson 04: Service Replication
- Concept 01: Lessson Intro
- Concept 02: Intro into Kubernetes
- Concept 03: Creation of a Kubernetes cluster
- Concept 04: What Are Pods?
- Concept 05: Deployment of an microservice application as pod
- Concept 06: Converting a pod into a deployment
- Concept 07: Exercise: Start a Kubernetes Cluster
- Concept 08: Lesson Recap
-
Lesson 05: Service Registration, Discovery & Scaling
- Concept 01: Lessson Intro
- Concept 02: ConfigMaps & Secrets
- Concept 03: Configuration of the Application
- Concept 04: Overview about Service Registration and Discovery
- Concept 05: Service Types
- Concept 06: Creation of Service
- Concept 07: Connection service with a Deployment
- Concept 08: Scaling the Application
- Concept 09: Exercise: Extend Your Application
- Concept 10: Lesson Recap
-
Lesson 06: Independent Development
- Concept 01: Lessson Intro
- Concept 02: Udagram Microservice
- Concept 03: Shared Data Microservice Pattern
- Concept 04: Proxy Pattern
- Concept 05: Aggregator Microservice Pattern
- Concept 06: Chained Microservice Pattern
- Concept 07: Branch Microservice Design Pattern
- Concept 08: Asynchronous Messaging Microservice Pattern
- Concept 09: Dividing services into multiple services
- Concept 10: Exercise: Integrate Travis as CI
- Concept 11: Lesson Recap
-
Lesson 07: Refactor Udagram app to Microservices
In this project, you will reuse their existing Udagram application and convert and extend into a microservice architecture.
Project Description - Refactor Udagram app into Microservices and Deploy
Project Rubric - Refactor Udagram app into Microservices and Deploy
-
Part 05 : Develop & Deploy Serverless App
Serverless technologies have become very popular recently because they can increase the speed of development and drastically reduce the cost of running a cloud infrastructure. This course combines the theory of using serverless technologies with the practice of developing a complex serverless application and focuses on learning by doing. You will learn advanced serverless features such as implementing WebSockets and stream processing and learn about serverless best practices throughout the course.
-
Module 01: Develop & Deploy Serverless App
-
Lesson 01: Serverless Introduction
Introduction to the course, and Introduction to Serverless
-
Lesson 03: Serverless Framework
Serverless Framework
- Concept 01: Serverless Framework
- Concept 02: Serverless Frameworks
- Concept 03: YAML
- Concept 04: Frameworks
- Concept 05: CloudFormation
- Concept 06: Demo:Serverless Template
- Concept 07: Port Get ALl Groups Demo
- Concept 08: Demo: Group API
- Concept 09: Validate Requests
- Concept 10: Images API
- Concept 11: Demo: get images
- Concept 12: Indexes in DynamoDB
- Concept 13: Ex: create image record
- Concept 14: Summary
-
Lesson 04: Event Processing
Event Processing
- Concept 01: Events Processing
- Concept 02: Uploading Files
- Concept 03: Demo: presigned URL
- Concept 04: S3 Events
- Concept 05: WebSocket Notification
- Concept 06: Full-Text Search
- Concept 07: Decouple DynamoDB
- Concept 08: Elasticsearch
- Concept 09: Simple Notification
- Concept 10: Exercise
- Concept 11: Summary
-
Lesson 06: Best Practices
Best Practices
-
Lesson 07: Serverless Application
In this project you will develop an Instagram-like serverless services for uploading, listing, and filtering images.
-
-
Module 02: Career Support
-
Lesson 01: Take 30 Min to Improve your LinkedIn
Find your next job or connect with industry peers on LinkedIn. Ensure your profile attracts relevant leads that will grow your professional network.
- Concept 01: Get Opportunities with LinkedIn
- Concept 02: Use Your Story to Stand Out
- Concept 03: Why Use an Elevator Pitch
- Concept 04: Create Your Elevator Pitch
- Concept 05: Use Your Elevator Pitch on LinkedIn
- Concept 06: Create Your Profile With SEO In Mind
- Concept 07: Profile Essentials
- Concept 08: Work Experiences & Accomplishments
- Concept 09: Build and Strengthen Your Network
- Concept 10: Reaching Out on LinkedIn
- Concept 11: Boost Your Visibility
- Concept 12: Up Next
-
Part 06 : Capstone
-
Module 01: Capstone
-
Lesson 01: Capstone
In the capstone project, you’ll build an application of your choice on AWS based on predefined criteria.
-