Google Cloud Certified Professional Cloud Developer

Training Architect
course instructor image
Eric Frick
Eric Frick has been involved in software development and IT operations for 30 years. He has worked as a Software Developer, Software Development Manager, Software Architect, an Operations Manager, and a Senior IT Manager. He has a degree in Industrial and Systems Engineering from The Ohio State University and Master’s degree in Computer Science from The University of Dayton. In addition, for the last five years, he has taught classes in various IT related subjects at several universities in the Columbus Ohio area. He has authored a series of online classes and books that can provide practical information to students on various IT related topics including software development, cloud computing, and personal productivity.

Google Cloud Certified Professional Cloud Developer


Course Introduction
About the Training Architect
Using the Interactive Diagram
Course Features and Tools
Google Cloud Platform Case Study

1. Designing Highly Scalable, Available, and Reliable Cloud-Native Applications

1.1 Designing Performant Applications and APIs
1.2 Designing Secure Applications
1.3 Managing Application Data
1.4 Re-Architecting Applications from Local Services to Google Cloud Platform
Hands-On-Lab: Migrating Source Code to a Google Cloud Source Repository

2. Building and Testing Applications

2.1 Setting up Your Development Environment
2.2 Building a Continuous Integration Pipeline
2.3 Testing
2.4 Writing Code
Hands-On-Lab: Establishing a CI/CD Pipeline with Google Cloud
Hands-On-Lab: Setting Up a Google Cloud Development Environment

3. Deploying Applications

3.1 Implementing Appropriate Deployment Strategies Based on the Target Compute Environment
3.2 Deploying Applications and Services on Compute Engine
3.3 Deploying Applications and Services on Google Kubernetes Engine
3.4 Deploying an Application to App Engine
3.5 Deploying a Cloud Function
3.6 Creating Data Storage Resources
3.7 Deploying and Implementing Networking Resources
3.8 Automating Resource Provisioning with Deployment Manager
3.9 Managing Service Accounts
Hands-On-Lab: Deploying to Google Cloud App Engine
Hands-On-Lab: Deploying to Google Compute Engine
Hands-On-Lab: Deploying to a Google Kubernetes Engine Cluster
Hands-On-Lab: Integrating Google Cloud Functions

4. Integrating Google Cloud Platform Services

4.1 Integrating an Application with Data and Storage Services
4.2 Integrating an Application with Compute Services
4.3 Integrating Google Cloud APIs with Applications
Hands-On-Lab: Working with Google Cloud Storage
Hands-On-Lab: Setting Up for Google Cloud Spanner
Hands-On-Lab: Working with Data in Google Cloud SQL
Hands-On-Lab: Utilizing Google Cloud Pub/Sub

5. Managing Application Performance Monitoring

5.1 Installing the Logging and Monitoring Agent
5.2 Managing VMs
5.3 Viewing Application Performance Metrics Using Stackdriver
5.4 Diagnosing and Resolving Application Performance Issues
Hands-On-Lab: Monitoring VMs with Stackdriver

Next Steps

Preparing for the Exam
Live-Environment-Challenge: Google Cloud Professional Cloud Developer Practice Exam


This course will prepare you for the Google Professional Cloud Developer certification, and all sections are based on the outlined objectives Google published for preparation for the exam. We've also included detailed walkthroughs and hands-on labs to help reinforce the concepts we cover throughout the course.

In Section 1, we discuss best practices for designing highly scalable cloud-ready systems. We will explain best practices for designing performant application interfaces as well as designing secure applications. Following that, we will briefly describe how to best manage application data when migrating to the cloud as well as best practices to follow when re-architecting on-premises applications for migration to the cloud.

Section 2 covers best practices for building and testing applications. The first part of the section covers setting up our development environment for Google Cloud Platform applications. Next, we will look at building a continuous integration pipeline and its benefits. After that, we will get a high-level overview of testing code and major types of testing involved with software development. In the last lesson of the section, we will briefly look at considerations for writing code for cloud-based applications.

Section 3 covers best practices for deploying applications to the Google Cloud Platform. We will first discuss implementing the appropriate deployment model for our particular application. In the next lesson, we will look at considerations for deploying applications to compute engine. Then, we will explain the primary benefits of Google Kubernetes Engine and how to create our first cluster and deploy software to it. In lesson four, we will describe the benefits of using Google App Engine and the basic process for deploying software to App Engine as well as the support for software versions within App Engine. Lesson five provides a high-level overview of cloud functions and how to deploy one. In lesson six, we will look at the wide variety of cloud storage resources supported by the Google Cloud Platform and use cases they support for applications. In the last lessons of this section, we will cover high-level networking issues, automating resource provisioning, and implementing service accounts.

In Section 4, we will discuss products and techniques we can use to integrate an application with Google Cloud Platform services. In the first lesson, we will cover methods to integrate our application with Google Cloud Storage services. Next, we will exlain the options to integrate applications with various Compute Services offered by the Google Cloud Platform. In the last part of this section, we will go over examples of integration with Google Cloud API services.

Finally, we will discuss managing application performance using tools provided by Google Cloud Platform. In the first lesson, we will look at the process to install the logging and monitoring agent for virtual machines. Following that, we will go over troubleshooting techniques we can use to manage virtual machines. Then, we will discuss many of the features of Stackdriver and how we can use them to monitor and manage an application's performance. In the last lesson of this section, we will look at some tips and techniques to diagnose and resolve application performance issues.

Interactive Diagram:

Study Guides

Interactive Diagram

You can access the diagram for the course here:

Alternate Case Study LAGiftArt

You can access the alternate case study here that is referred to in the practice exam for this course.

Instructor Deck


certificate ribbon icon

Earn a Certificate of Completion

When you complete this course, you’ll receive a certificate of completion as proof of your accomplishment.

Looking For Team Training?

Learn More