New Content: 50+ New Programming Courses, Learning Paths, and Hands-on Labs + More

March 2022 Content Update

In June, our team of expert certification specialists released seven new learning paths, 111 courses, 13 hands-on labs, and 2 lab challenges!


Amazon Web Services

HANDS-ON LAB: Managing Assets with the AWS CDK v2

In this lab, you will learn about the two CDK asset types and incorporate one of them in a sample CDK application.

HANDS-ON LAB: Instantiating AWS CloudFormation Resources with L1 CDK Constructs

In this lab, you will work with an L1 CDK construct to learn how to implement these low-level constructs into your applications.

HANDS-ON LAB: Incorporating L2 CDK Constructs in an Application

In this lab, you will work with an L2 CDK construct to learn how to implement these higher-level constructs into your applications.

HANDS-ON LAB: Implementing AWS Solution Patterns with L3 CDK Constructs

In this lab, you will work with an L3 CDK construct to learn how to implement predictable and repeatable patterns into your applications.

HANDS-ON LAB: Processing File Uploads Asynchronously with Amazon EventBridge

Create a new Amazon EventBridge rule, configure it to transform event data, test your rule, and see how to monitor it.

HANDS-ON LAB: Managing Access and Permissions with the AWS CDK

In this lab, you will work with the IAM module to create an IAM Role with DynamoDB permissions.

HANDS-ON LAB: Review and Secure a Lambda Function with an IAM Least Privilege Based Security Policy

In this lab scenario, you take on the role of a cloud security engineer, working for a business that has implemented a particular business process in AWS using AWS Lambda.

HANDS-ON LAB: Leveraging AWS WAF to Defend an Insecure Web App

In this lab scenario, you take on the role of a cloud security engineer, working for a business that has recently launched an Internet-facing web application.

COURSE: Amazon CloudFront Design Patterns

In this course, we will be looking at Amazon CloudFront design patterns. We will begin by discussing some of CloudFront’s key features before discussing two patterns:

Pattern 1 – Using CloudFront to cache and secure content when an Application Load Balancer is the origin

Pattern 2 – Using CloudFront to cache and secure content when an S3 bucket is the origin

COURSE: Performing Data Collection using AWS Data Pipeline

This course is designed to show you how to use the AWS Data Pipeline service for data collection requirements.

COURSE: Decoupling Architectures in AWS with SQS

This course explores and introduces you to the concepts of decoupled architectures within AWS using the Amazon Simple Queue Service.

COURSE: Using SNS in a Decoupled and Distributed Environment

In this course, you’ll learn about the Amazon Simple Notification Service (SNS) and how it can be integrated against to provide notification capabilities into your own software products.

COURSE: AWS Authentication Mechanisms

In this course, we shall be looking at how AWS provides many different means of authentication.

COURSE: VPC Sharing Using the AWS Resource Access Manager

In this course, we look at the benefits of sharing a Virtual Private Cloud, a VPC, from a centralized networking AWS account using AWS Resource Access Manager (RAM).

COURSE: What is the AWS Data Provider for SAP?

This course explains what the AWS Data Provider for SAP is, what it does, and how it can help monitor and enhance the performance of business transactions via your SAP applications.

LAB CHALLENGE: Amazon VPC Peering Challenge

This hands-on lab challenge will test your practical ability to configure a solution in a production-like AWS environment. You will be presented with a task and set of requirements that you must fulfill to pass the challenge.

LAB CHALLENGE: AWS Secrets Manager Challenge

This hands-on lab challenge will test your practical ability to configure a solution in a production-like AWS environment. You will be presented with a task and set of requirements that you must fulfill to pass the challenge.

Google Cloud Platform

COURSE: Modernize Your IT Department With GCP

This course covers how GCP can be used to modernize your business. We also look at the benefits and costs of modernization.

Microsoft Azure

LEARNING PATH: MS-900 Exam Preparation: Microsoft 365 Fundamentals

This learning path is designed to help you prepare for the MS-900 Microsoft 365 Fundamentals exam.

HANDS-ON LAB: Using Conditional Access Policies to Enable Azure AD Multi-Factor Authentication

In this lab, you will set up and test a conditional access policy to trigger a multi-factor authentication request.

HANDS-ON LAB: Deploying Custom App Image to Container Apps using Azure Container Registry

In this hands-on lab, you will learn how to deploy custom container images to Container Apps referencing Azure Container Registry using the Azure Portal.

HANDS-ON LAB: Creating Users in Azure Active Directory

In this lab, you will create a new user in Azure Active Directory and assign an Azure AD role to the user.

COURSE: Unified Data Governance With Microsoft Purview

In this course, users will explore the suite of tools available in Microsoft Purview for registering and scanning data sources, connecting a business glossary, searching the data catalog, and customizing metadata with enrichments and classifications.

COURSE: Device and Application Protection in Microsoft 365

In this course, you will learn how to successfully manage different types of devices in Microsoft 365.

COURSE: Configuring Apps on a Session Host in Azure Virtual Desktop

This course will help you to deploy applications and allow you to streamline your Azure Virtual Desktop experience.

COURSE: Configuring and Managing Multi-Site, Multi-Domain, and Multi-Forest Environments in Active Directory

In this course, we start by reviewing AD DS forest and domain trusts. Then we examine forest design considerations to create a scalable environment that can meet future demands. Next, we investigate Active Directory sites, site links, and how they relate to the organization’s network configuration.  Finally, we evaluate AD DS replication and how site links can optimize replication in an AD DS environment.

COURSE: Introduction to Security in Microsoft 365

In this course, we take an introductory look at the security tools within Microsoft 365.

COURSE: Introduction to Microsoft 365

In this course, we take an introductory look at the productivity tools included within Microsoft 365. We go over the wide range of benefits each tool can provide and give examples of how and when to use each tool.

COURSE: Implementing Azure Backup

In this course, we’ll take an introductory look at Azure Backup, where you’ll learn what it is and what it does.

COURSE: Prepare for the MS-900 Exam

In this course, we go over the objectives of the MS-900 Microsoft 365 Fundamentals exam.

COURSE: Introduction to Microsoft 365 Administration

In this course, we take an introductory look at administration within Microsoft 365.

COURSE: Microsoft 365 License Structure

In this course, we take a look at the licenses available for Microsoft 365 and what each offers.

Programming

LEARNING PATH: C++ Programming: From Beginner to Master

Practical, hands-on, and aimed at beginners who are keen on mastering C++, this learning path is designed to get students coding in C++ as quickly as possible, while also teaching the best tips, tricks, and theory behind the code.

LEARNING PATH: Android App Development with Kotlin – Beginner to Advanced

The content in this learning path is a perfect mix of theoretical and practical content, which will go deep into the essential aspects of Kotlin and app development for Android.

LEARNING PATH: Programming with Java: From Beginner to Master

Learn Java quickly and confidently with this practical learning path which will have you writing code in Java straight away!

LEARNING PATH: Developing Mobile Apps for iOS

Learn how to build your own mobile apps for iOS with this practical learning path covering the essentials of iOS as well as SwiftUI!

HANDS-ON LAB: Python: Introduction to Pip

This lab introduces some of the core concepts of pip. Expand your development skills by learning to install Python distribution packages.

HANDS-ON LAB: Configure a dbt Profile and Define Sources

In this lab, you will configure a dbt profile that points to a PostgreSQL database hosted in your lab environment, and you will define some sources based on tables available in the PostgreSQL database.

COURSE: Components of Android

This course explores the essential components of the Android system and how they can be used for building apps in Android.

COURSE: Exceptions and Debugging in C++

In this course, we will discuss the topic of exceptions and debugging. We’ll see that exceptions are objects representing exceptional situations and that these are usually problems in our code or in the environment in which our code is running.

COURSE: Intent & Lifecycles in Android App Development

This course focuses on lifecycles and intent in Android and then moves on to look at services, receivers, and Android app binding.

COURSE: VIPER & Protocol in iOS and Swift Development

In this course, we’re going to take a look at the VIPER architectural pattern and also protocol-oriented programming and we’re going to start our project.

COURSE: Building a To Do List App in Android

In this course, we develop an Android application named To Do List. You will follow along as we build an app that allows you to add tasks to a list, save the data to device memory and read the data back.

COURSE: Building an Angry Birds Clone

In this course, we learn about a framework called Sprite Kit and use it to build a clone of the Angry Birds game.

COURSE: Crash Course in SwiftUI

This course delves into SwiftUI, which you can use to create user interfaces for your apps. We’re going to cover how to use it, how to create views, and how to leverage it to create responsive apps that work in all screen sizes.

COURSE: Pointers in C++

In this course, we will explore the basic concepts and fundamentals of pointers in C++ and you’ll learn how to use them to point to dynamically allocated memory.

COURSE: Control Flow Statements in Kotlin

In this course, you will learn about control flow statements in Kotlin, including the if-else statement, the if-else-if ladder statement, the nested if statement, and when statements.

COURSE: Building a Foursquare Clone

In this course, we’re going to build a Foursquare Clone using Parse. Parse provides you with a great tool to work in cloud servers and you will learn the advantages and disadvantages that come with it.

COURSE: Android App Development with Kotlin – Introduction

This course provides the introduction to the Android App Development with Kotlin learning path and provides you with a general overview of the upcoming training as well as the general Android ecosystem as a whole.

COURSE: Control Statements in Java

This course explores the fundamental concepts and syntax associated with Control Flow and showcases these with some real-life projects.

COURSE: File Input and Output in C++

This course covers file input/output (file I/O). Being able to read from and write to secondary storage is important because often we want to keep some data persistently. By the end of this course, you will have the skills necessary to do this.

COURSE: Leveraging Map Functions for Your iOS Apps

This course explores maps and how we can integrate them into our apps. We’ll leverage map functions like finding the user location, showing the user’s location on the map, and choosing a location on the map to get its coordinates.

COURSE: Introduction to Classes and Objects in C++

In this course, we look at Object-Oriented Programming, focusing on objects and classes.

COURSE: SharedPreferences & Data Saving in Android App Development

This course explores how to both save and then retrieve data in your Android app. We’ll look at storage in the SharedPreferences class as well as saving data to local memory.

COURSE: Inheritance and Polymorphism in C++

This course is designed to enhance your object-oriented programming skills by focusing on two concepts: inheritance and polymorphism.

COURSE: Lists & Views in Android App Development

In this course, we look at the various different ways that information can be presented to users within an Android app. We’ll cover a variety of views that you can incorporate into your apps.

COURSE: Object Oriented Programming (OOP) in Kotlin

This course covers the concept of Object-Oriented Programming in Kotlin, which is a method of designing and implementing software.

COURSE: Strings and the StringBuilder Class in Java

This course delves into the String class and looks at the functionality it provides through a host of methods. We will also discuss how string objects are immutable, which means the object itself can’t be modified once they’ve been created.

COURSE: Design Practice in iOS

This course covers how to draw some icons and logos within your iOS app. In order to do that we’re going to use Adobe XD one more time and you will see it in practice.

COURSE: Introduction to Design

This course explores the fundamentals of how to design an iOS app. You’ll learn what you need to consider in the design process and the various tools available.

COURSE: Getting Started with C++

This course will help you prepare for the Complete C++ Developer learning path and get you set up with the right development environments.

COURSE: Advanced iOS Features: Permanent Features, Segue, Alert Message, Timers, and Gestures

This course explores some advanced iOS features. We’ll look at how to store data permanently. You’ll learn how to work with more than just one screen, how to use Gesture Recognizers, Timers, Alert Messages and so much more.

COURSE: Leveraging Core Data to Store Data on iOS

This course focuses on a concept known as core data, which will allow us to store our data in a database.

COURSE: C++ Functions

This course explores functions in C++ and puts them to use in a range of projects.

COURSE: Using Operators in Kotlin

This course takes a deep dive into Kotlin operators, giving you a practical understanding of how to use operators in your code.

COURSE: Exploring Table Views on iOS

This course is going to explore table views, which are views that allow you to display data in your arrays.

COURSE: Pentesting and Privilege Escalation with Mr. Robot

In this course, we explore brute force attacks, hacking WordPress, changing users, and suid privilege escalation.

COURSE: Using Object-Oriented Programming in Swift

This course delves into Object-Oriented Programming (OOP), covering its main components, and then putting these into practice by walking you through the creation of an app using OOP.

COURSE: Enabling Push Notifications for iOS Apps

This course explores how to enable push notifications in your iOS apps.

COURSE: Building an Instagram Clone

In this course, we’re going to create an Instagram Clone and learn how to work with cloud servers using Firebase.

COURSE: Environment Setup

This brief course will walk you through how to set up the environments necessary for following along with the Android App Development with Kotlin learning path.

COURSE: Using Layouts in Your iOS Apps

In this course focused on layouts, we’re going to see how to create user interfaces for our apps so that you can see how views work and you’ll learn how to create views just using code rather than your main storyboard.

COURSE: Using Advanced Techniques in Swift

This course focuses on advanced techniques in Swift. You’ll be introduced to structs and how we can use them in our code.

COURSE: Assessing the Features of Android Devices with Kotlin and Java

In this course, we’ll cover how to access the features of Android devices. You’ll learn how to send an SMS, send an email, make a call, and convert speech to text on Android.

COURSE: Methods in Java

This course looks at methods, which are named, self-contained blocks of code that you can call upon to help solve problems for you.

COURSE: Fragment Operations in Kotlin

This course explores fragment operators in Kotlin. You’ll learn about the different types of fragments and how you can use them.

COURSE: Fundamentals of Data Structures in C++

In this course, we will explore the fundamental concepts of abstract data types (ADTs) and data structures.

COURSE: XCode Overview & Getting Started

In this course, we’re going to get ready to write some code. We’re going to set your MacBook up and we are going to download a software called Xcode, in which we will write our swift codes.

COURSE: Templates, the STL, and Other Skills in C++

In this course, we will build on your existing foundational and object-oriented oriented skills and enhance them by looking at templates, the Standard Template Library, and other skills to help you in your builds.

COURSE: Tips & Tricks for Android App Development

This course covers some tips and tricks for developing Android applications from an experienced developer and will help you when you are building your own mobile apps.

COURSE: Threading, Async & Await in iOS

This course covers the concepts of Threading, Async & Await in iOS.

COURSE: How to Make a Website for Your App

This course shows you how you can build a website for your app so that after you upload your app to the app store, you have a marketing website for it.

COURSE: File I/O and Exceptions in Java

This course covers how to persist data as well as how to write data from programs to file to be used later, which is called file output.

COURSE: Components for Developing an Android App

This course delves into the essential components that will allow you to build engaging and user-friendly Android apps!

COURSE: Introduction to Android App Development

This course will introduce you to Android app development, get you set up with the correct development environments, and begin introducing the basics of the Android system.

COURSE: Exploring Android Studio Interface

In this course, we will examine the interface of Android Studio and explore the Gradle Build system, manifest files, and resources such as strings, drawables, etc.

COURSE: Deep Dive into Swift 5

This course will provide you with a comprehensive understanding of the fundamentals of Swift.

COURSE: Using WidgetKit to Create and Manage Widgets in iOS

In this course, we explore what widgets are and how to work with them. You’ll learn what a widget is and how you can leverage them in order to provide an optimum user experience in your apps.

COURSE: Leveraging Machine Learning for Your iOS Apps with MLKit

This course focuses on machine learning. We’re going to discuss what machine learning is and how we can leverage it to create intelligent and engaging apps.

COURSE: Control Statements in C++

This course explores the fundamental concepts and syntax associated with the flow of control in programs.

COURSE: Functions in Kotlin

This course explores functions in Kotlin. You’ll learn what a function is and how you create a function. We will then learn about declarations and calling of functions. Finally, we will look at function types and function return types.

COURSE: User Interactions in Android App Development

This course covers the different types of messages that you can use in your Android app, namely toast messages, snackbar messages, and dialog messages.

COURSE: Fundamentals of C++

This course provides you with a solid understanding of the fundamentals of C++.

COURSE: Fundamentals of Kotlin

This course covers the fundamentals of Kotlin, looking at the building blocks of the programming language and how they can be used to build apps in Android.

COURSE: Exploring the Special Features of iOS

This course focuses on iOS special features including face recognition, custom keyboards, sticker packs, and more.

COURSE: Sending Data Between Screens in Android App Development

This course explores how to send data from one screen to another in Android applications.

COURSE: Building a Snapchat Clone

In this course, we’re going to create a Snapchat clone using structs and various advanced techniques of Firestore.

COURSE: Loops in Kotlin

This course explores Kotlin loops, including for loops, forEach loops, while loops, infinite loops, and do-while loops.

COURSE: Arrays and ArrayLists in Java

This course covers the fundamentals of data structures specifically looking at the regular built-in arrays that Java provides as part of the language, as well as the ArrayList class, which lives in 

the java.util package.

COURSE: Arrays and Vectors in C++

This course explores arrays and vectors which are types of data structures in C++.

COURSE: Augmented Reality in iOS

This course explores augmented reality and how to use it to bring some visuals into our lives, into our living rooms.

COURSE: Using JSON & APIs to Build a Currency Converter

In this course, we’re going to build a currency converter app in order to teach you about JSON and APIs.

COURSE: Introducing Java

This course explores the fundamentals of Java and puts them to use with some real-life examples looking at an average of three program and a mad libs project.

COURSE: How to Make Money from Your App

This course will show you how we can make money out of your apps. We’ll explore the alternative ways to make money using IOS development as well as how to use Google advertisements in your app so that you can earn money with Google ads.

COURSE: Device Compatibility in Android 12 App Development

In this course, we look at the various components that you can use to enhance the compatibility of your app. We’ll look at multi-language support, different pixel densities, and different screen sizes.

COURSE: Introduction to Classes and Objects in Java

This course looks at Object-Oriented programming in Java and shows how classes are designed and constructed, and how objects are created from them.

COURSE: Building a Math Game App on Android

This is a highly practical course that walks you through how to create a simple math game for school children on Android. We will make use of the Kotlin components that we covered in the Android App Development with Kotlin learning path, bringing them all together in a real-world app.

Security

LEARNING PATH: Web Penetration Testing & Bug Bounty Hunting

This practical learning path will guide you through how to find vulnerabilities and bugs in websites and web applications through web penetration testing.

LEARNING PATH: Practical Deep Dive into Pentesting & Privilege Escalation

This LP is ideal for anyone who wants to learn about penetration testing and privilege escalation or anyone who is looking to transition into a cybersecurity role. It covers penetration testing in-depth, privilege escalation for Windows and Linux, and walks users through a wide variety of capture-the-flag ethical hacking challenges.

COURSE: SQLi GET Requests

In this course, we’re going to learn about SQL Injections, focusing on GET SQL Injections.

COURSE: Advanced SQLi

This course provides you with a deep dive into SQL Injections, covering some of the more advanced techniques.

COURSE: Introduction to Cross-Site Scripting Attacks

This course covers cross-site scripting (XSS) attacks, which are important to know about for anyone interested in ethical testing or bug bounty hunting.

COURSE: A Practical Introduction to HTML Injection

This course explores HTML injection, stored HTML injection, and other types of attacks in order to begin carrying out some web pen testing in a practical way.

COURSE: Introduction to Kali Linux

This course provides an overview of Kali Linux and some of its main components and features. We’ll also take a look at Linux in general including how it looks, how to use it, how to use the command line, how to change the settings, and more.

COURSE: Brute Force Attacks

This course covers brute force attacks as well as the features of Burpsuitel.

COURSE: Setting Up Kali Linux

This course explains how to set up Kali Linux as part of the Web Penetration Testing & Bug Bounty learning path.

COURSE: Introduction to Server-Side Request Forgery

In this course, we’re going to take a look at Server-Side Request Forgery (SSRF) vulnerability and learn what it is and how we can exploit it.

COURSE: Pentesting and Privilege Escalation with Wakanda

This course will walk you through how to solve a number of tasks as part of a capture-the-flag (CTF) game called Wakanda. You will learn the necessary skills to excel in penetration testing and privilege escalation.

COURSE: Introduction to SQL Injection

This course looks at how to find vulnerabilities, how to inject comments using said vulnerabilities, and other techniques that allow you to penetrate SQL databases.

COURSE: Penetration Testing and Privilege Escalation with Bandit

This course will walk you through a variety of exercises and techniques as part of a capture the flag (CTF) game called Bandit.

COURSE: Information Gathering

This course looks at the information gathering techniques that you can carry out as reconnaissance on the website you’re planning to attack.

COURSE: Introduction to Directory Traversal

In this course, you will learn how you can view unauthorized files and folders using a technique known as directory traversal and learn how to automize the process with a tool called dotdotpwn.

COURSE: Web Penetration Testing with Juice Shop

This course puts into practice a lot of the concepts we’ve covered so far. We’ll be using a vulnerable website called Juice Shop to solve a variety of challenges.

COURSE: How to Make Money Legally with Web Pentesting

This course covers some additional resources that you can use to improve your web penetration testing skills, and how you can make money from them through legitimate means.

COURSE: Command Injection & SSI

In this course, we continue working on bWAPP and we’re going to use it to learn about some new attacks, namely command injection and SSI vulnerabilities.

COURSE: SQL Crash Course

This course focuses on SQL vulnerabilities which are some of the most common and dangerous vulnerabilities that you will come across when you carry out web pentesting or bug bounty hunting.

COURSE: Deep Dive into Privilege Escalation on Linux

This course explores how to carry out privilege escalation on Linux machines. We look at enumeration, kernel exploits, sudo list, suid, crontab, and much more!

COURSE: Crash Course in HTML

This crash course in HTML starts off with some basic questions such as “What is a website?” and “How do websites work?” before moving on to look at the fundamentals of HTML.

COURSE: API Pentesting

This course focuses on API Security and explains the kinds of vulnerabilities that we can find inside APIs, how to exploit them, and how to secure them as well.

COURSE: Pentesting and Privilege Escalation with FristiLeaks

In this course, we solve a vulnerable virtual machine called FristiLeaks in order to explore pentesting and privilege escalation techniques.

COURSE: Cross-Site Request Forgery (CSRF)

This course talks about Cross-Site Request Forgery (CSRF) and covers how to install a vulnerable machine called Metasploitable and how to start using it.

COURSE: A Practical Intro to PHP Injections

This course builds upon our bWAPP app to run you through how to carry out PHP Injections as well as look at upload vulnerabilities.

COURSE: Pentesting and Privilege Escalation with Arctic

In this course, we explore pentesting and privilege escalation as we solve a Windows virtual machine called Arctic.

Webinars

Check out the complete list, including links to sign up for future webinars and watch recordings of past ones, on our Webinars page.

Recent — click to view recording

Ongoing — click to register

New Product Features

Changes to the way the product looks or works appear in the Cloud Academy Release Notes page. We released four new features in June.

We expanded the scope of the Team Members report (previously the Active Team Members report) to include all invited users regardless of whether they have accepted the invitation. For consistency, we also renamed the Members report (previously the Active and Invited Members report).

We changed the name of the Job Role Paths menu option (formerly Job Roles) on your management toolbar. We made this change to prevent confusion with the Job Roles Skills Intelligence Platform feature currently available in beta release.

A new version of the Certifications dashboard is now available in beta release. You can view it by clicking the banner that appears at the top of the Certifications screen. This version of Certification will replace the existing version around the end of July 2022. See How the New Certifications Dashboard is Different for a summary of the changes.
Two major components of our Skill Intelligence Platform capabilities ⁠— Programs and Career Paths ⁠— are now available in beta release. If you are interested in participating in the beta program, contact support@cloudacademy.com or your CSM.

Cloud Academy