Journey of a Professional Google Cloud Developer
Introduction
This month marks a significant milestone: two years since I began my journey as a Google Cloud DevOps Engineer at my current company. Reflecting back, it’s astounding how swiftly time has flown.
Just last week, I undertook the Google Cloud Certified Professional Developer exam as a means to gauge my skills in this area. Delightedly, I passed. In this article, I aim to share the insights and experiences gained from preparing for and taking this exam.
For those interested in similar topics, you may find the following articles useful:
Scope of the Certification and My Impressions After Taking the Exam
Design Highly Scalable, Available, Reliable Cloud-Native Applications
- Best practices for containerizing applications, including the separation of services.
Architectural Design and Proper Service Utilization
- Optimal use of deployment services such as Cloud Run, Google Kubernetes Engine(GKE), AppEngine, and Managed Instance Group.
- Effective utilization of database services like Cloud SQL, BigTable, Firebase, and Spanner.
- Internal connection architecture via Private Google Access.
- Best practices for using Cloud PubSub, including strategic topic placement between services and methods for pushing and pulling data from topics.
Fundamentals of Google Kubernetes Engine (Kubernetes)
- Understanding the roles of various manifests such as Deployment, Pod, Service, Ingress, etc.
- Implementing Workload Identity for workload access control.
- Methods for connecting between pods.
- Comprehension of horizontal and vertical auto-scalers.
- Basics of Istio (Anthos Service Mesh).
Deploy Applications
- Understanding various deployment methods like Canary, Blue/Green, and Rolling deployments.
- Techniques for traffic separation to gradually roll out new features in Cloud Run or Kubernetes.
- Automated application build and deployment control using Cloud Build.
Manage Deployed Applications
- Implementing Cloud Logging techniques, including JSON formatted output and using standard error streams.
- Integration of Cloud Logging with BigQuery, Cloud Storage, and PubSub via Log Router. For more details of Log Router for Cloud Storage, check out my related post:
- Alerting strategies based on log or metric analysis.
- Troubleshooting errors and latency issues using tools like Cloud Profiler and Cloud Trace.
- Fundamental IAM principles, focusing on the least privilege approach and error log troubleshooting.
Build and Test Applications
- Automating image builds with Cloud Build and Cloud Source Repositories.
- Conducting artifact analysis and vulnerability scanning of images in Artifact Registry.
- Performing local testing of applications using emulators for Cloud PubSub and Cloud Run.
Integrate Google Cloud services
- Facilitating integration of Kubernetes clusters between on-premises environments and Google Cloud.
- Understanding the fundamentals of Lift and Shift strategies, including minimizing business impact and considerations for database applications.
Overall Impressions
The Cloud Developer exam, true to its name, extensively tests knowledge of best practices in using Google Cloud’s services. A strong understanding of Kubernetes fundamentals and development environment services, such as Cloud Run and GKE within Google Cloud, is essential. The exam often requires choosing the most suitable answer based on the context of the question, such as whether a managed service is necessary, or which solution offers the best balance of high availability and cost-efficiency. Additionally, the ability to eliminate incorrect options based on the context is valuable, making a thorough understanding of the nuances between similar services crucial.
Summary
As Google Cloud’s services continue to expand, I find myself discovering new offerings I hadn’t explored before. Taking this exam introduced me to services like Cloud Profiler and Cloud Trace. I was particularly impressed by Cloud Profiler and am eager to integrate it into my professional work. Additionally, I’ve come to view Cloud Run as a go-to option for deploying applications, given its utility and versatility.
A significant portion of the exam questions are based on the Cloud Architecture Center, which suggests that delving into each best practice outlined there can substantially deepen one’s developer skills. I wholeheartedly recommend embarking on this certification journey. The exam is not just a test but an opportunity for growth and discovery in the ever-evolving world of Google Cloud.