On Passing All Google Cloud Certifications
And the questions I got in the Profession Data Engineer, Professional Cloud Architect, beta Professional Cloud Developer, and Associate Cloud Engineer exams.
If there was one caption to describe my experience writing each of the google cloud certification exams, it is this: confident before, doubtful during, relieved after. I would also prefix a ‘very’ to each of those parts. That should give you a view into what the exam is like. There’s quite a bit to study before, for sure. Having covered that reasonably, I walk into the exam with confidence. But the exam is not easy — non-direct questions, multiple areas combined into one question, “out-of-syllabus” questions on general concepts, questions/options about obscure sub-services and details that I’ve never heard of before, and finally, answer options that are all right but we have to pick the ‘best or the recommended way’. During each exam, I honestly wasn’t sure if I would pass. And it was a big relief to see a “Provisional Result: PASS” at the end each time. Whew!
But let’s step back a bit. And let me take you through my experience in a little more detail. Today, I have all of the Google Cloud certifications: Professional Data Engineer, Professional Cloud Architect, and Associate Cloud Engineer. I also wrote the beta Professional Cloud Developer but the results will be out only a few months from now. (Update on Jan 24th 2019: the Professional Cloud Developer exam is out of beta now and I passed!)
How long did it take you to do all the exams?
I wrote the associate engineer exam in mid November, 2018. Then bunched up the remaining 3 for the two weeks when I got time to myself to prepare around Christmas and New Year. It worked for me, luckily. And i think there is a reason this worked. Read on.
Sounds like it was easy if you finished it that quick, was it?
I don’t think so. I don’t think it is easy to pass all exams without wide knowledge of software development and systems in general and some knowledge of almost all offerings from Google Cloud — and there are over a hundred of them. The exams don’t go very deep in all of them (a mile wide and a few inches deep), but you will need to understand enough to know the concepts and best/recommended practices. People write blog posts only about their passing, but I really wonder how many failed. I’ve seen only a few people openly discussing how they flunked their exam the first time and how they are preparing again for it.
How long did I study?
Without realising it, for quite a while. The certifications were not in my sights until the last quarter of 2018. However, I’d been using GCP for projects for a few years now. A bunch of my hackathon projects, personal projects, and static web sites (all from the early part of this decade) were made on Google AppEngine Standard. I had completed almost every Coursera specialisation on GCP starting from end 2017. I’d also used Firebase for a few of my Ionic/Angular projects. I owned domain names that I’d setup with GSuite and created AppEngine projects within them. I’d also done some work on Kubernetes and Docker during my stint at Red Hat. From early on in 2018, I had also gluttonously devoured (went super fast through) Andrew Ng’s machine learning courses on Coursera followed by Google’s specialisation in Machine Learning and also the Google Machine Learning Crash Course. So I had been learning merely for the sake of figuring out these technologies and using GCP for my projects for more than a year. The certifications weren’t yet a goal.
My original plan somewhere around October, probably, was to write the Professional Cloud Architect (PCA) only. Then I found the Associate Cloud Engineer (ACE) certification and thought it might be a simpler first step and digressed to write that first. Since the time I decided to attempt the certification, I prepared across two+ months for all four certifications. Within that, I actually got less than a month because I was traveling around visiting various clients. For the Architect exam, I had been preparing little by little with a burst of activity just prior to the exam. I hadn’t done too much prior work in the Professional Data Engineer (PDE) subjects, so I spent about two focused weeks, studded with a few Christmas and New Year parties, on preparing for the Data Engineer exam. I didn’t really prepare for the beta Professional Cloud Developer (bPCD) because there wasn’t any specific material to prepare with.
What is the key takeaway across all exams?
One for all, all for one.
An aspect that clearly stood out for me was the overlap across all the certifications. If you want to pass any one exam, you have to study for all of them. IAM, GCS, and Stackdriver are universal — every exam had these sections prominently. (Stackdriver questions were a little less in my Data Engineer exam, but there still were a few.) Beyond that, every exam had a piece of every other one. My Professional Architect exam had quite a few questions on Datastore. Usage and setup of Dataproc, Dataflow, and Pub Sub was everywhere. Firebase is not part of the exams, but they featured in some of the options. Dataprep and Datastudio featured in the developer exams. You might not fully understand the Data* products, but you have to know how they are deployed and the use cases where they are best employed. BigQuery was there in the ACE, PCA, PDE, bPCD, but probably a little less in the PCA. Kubernetes was there in all except for the PDE.
Given the considerable overlap, my key advice is to watch all tutorials/training videos for all certifications, and then focus on practice questions for the specific exam you intend to take.
So why take any or all certifications?
To pick up from where I left off earlier, taking all certifications wasn’t my goal. Having skimmed through the courses though, I realised that there was way more to GCP than just the parts I was repeatedly using. So to get a better understanding of the possibilities and arm myself with a wider repertoire of tools, I decided that I’d try the Professional Architect exam. I then realised that there was considerable overlap between the exam content. I checked the ACE exam and realised that because I’d coded GCP projects already, maybe the AE exam would be an easier intermediate step combined with the learning I’d done for the PCA. So the ACE certification happened. Later when I got time, I wrote the PCA and passed that. Meanwhile, a client of mine wanted some help with data engineering on GCP and I wondered if I could do the PDE also. In learning for that, I again realised that I could, with the knowledge from ACE+PCA+PDE and maybe just a little more, I could probably attempt the bPCD exam. So that happened quite suddenly — I just booked it one day and went for it the next. For the bPCD, there wasn’t any material or questions or courses online yet, so there was nothing I could specifically prepare for. Finally, I also took the PDE certification, which required the most learning for me. But having written all the other exams, the PDE was way less daunting.
What online courses were useful?
I went all out on courses, because I also had an agenda to evaluate them and suggest them to clients I’m working with. Coursera is the closest to the exam. My wild guess is that the original exams were created/reviewed by some of those who created the Coursera training material. However, often they barely skimmed the surface on some topics. But then, no course I have seen so far comprehensively covered all the material related to the exam questions. All of them were ‘introductory’ in nature. On the exam, every once in a while the questions were from a remote corner of the documentation. GCP products and services that were not even mentioned in the courses were part of the options. The documentation, therefore, is the most comprehensive but you clearly can’t go over it all. I also went through the Linux Academy and Cloud Academy courses. Both were useful; incrementally so from the Coursera one. Yet, some of those modules were very useful because the instructors there have taken the exam and they give quite a few tips based on their experience. (For tips based on my experience, follow the links at the end.) The Linux Academy course also has a good readout and analysis of the case studies which were very useful. The practice questions at the end of these courses were too simplistic and unlike the actual exam questions. The exam questions are convoluted and long, while the practice tests are straightforward. If you go into the exam with only that practice, you’re going to be badly surprised. The practice test on the google certification site is the closest to the real one. Take that and get used to those lengthy questions. I had to spend quite some time reading and re-reading some of the 50 questions in the real exam and took the full 120 minutes to finish, whereas I could finish a 50 question practice test on some of these online courses in 15 minutes. I tried a few courses and practice tests on Udemy. Almost all of them were derivative or ridiculously bad. There was one PCA practice test set which was reasonable. A bunch of questions in this were copied from other places and sometimes (I felt) the answers were wrong, but still.
So how good are you at GCP now?
After all the certifications, my best guess would be - below average. I thought I knew GCP reasonably well, but now that I know more, I realise I know less. There is so much more to GCP than I will ever be able to grasp and they are releasing new products and services and updates to them regularly. Some parts of the internal GCP engineering is nothing but astounding, but we’re not even talking about internals of that sort. Even at a high level, my ignorance is substantial. I haven’t personally worked on Hadoop+Spark=Dataproc except in small doses. I haven’t worked with Apache Beam yet, but I like it now and I’m keen to work on it especially since it also has a Go library now. My knowledge of Machine Learning is middling with only a little knowledge of Tensorflow, but I have coded full fledged applications that use Cloud Vision and AutoML. I’ve done projects on AppEngine standard but not Flexible. I’ve done a little bit of DataPrep and DataStudio, but not much. This list goes on and on. Then there are products that I’ve never used in any of my projects yet — like Cloud Armor, BigTable, Build. My hope is only to continue learning, work on small projects, and keep trying out what I see in blogs and tutorials. What the certifications have given me though, apart from a slap of humility, is a wide view of what is possible with GCP. Instead of a hammer that I used everywhere previously, I now have a wider array of tools and better knowledge about tools (if not in-depth knowledge of tools) to make architectural choices from.
- Another odd thing I noticed across all the regular exams (i.e. not the beta one) was that the first few questions were super tough. Or oddly worded. Or too convoluted. Or the options were tough to decide among. It took me about 3 or 4 minutes per question. Ideally you should be averaging about 2 minutes per question given 50 questions and 120 minutes. I wondered after each exam whether those were the trial questions — i.e. they are not scored for me but are experimental ones. So if you find the exam starts of real tough and you are taking more time in the beginning, don’t panic. Keep your focus and calm. Soldier on.
- Only in one exam (bPCD) out of four was I given a sheet of blank paper and a pencil. So you’ll have to do all calculations in your head. Keep some regular calculations pre-computed. E.g. Theoretically, how much time does it take to transfer 10GB over a 10Mbps connection? Ans: 8000 seconds~=2+ hours. Note that GB refers to Giga Bytes while Mb in Mbps refers to Mega Bits. You will have to decide among different storage transfer options depending on customer requirements for which you need to have a rough estimate of how much time it takes. You don’t have to be exact — assume 1GB~=1000MB. Given the rough calculation of 2 hours for 10GB over 10Mbps, you can scale that for different numbers. Usually data to be transferred will be in 100s of GBs or Terabytes (1000 GBs) or Petabytes (1000 TBs) and network speeds will be 10Mbps or 100Mbps. Given the time it takes to transfer data and the frequency at which it is needed, you might have to choose among various options — Storage Transfer Service, Transfer Appliance, gsutil, Direct Interconnect.
- Thoroughly go through decision flowcharts for GCP. A bunch of questions are about following the decision process to match requirements with GCP products. https://medium.com/google-cloud/a-gcp-flowchart-a-day-2d57cc109401
- If you take a break, it does not pause the exam. Plan accordingly.
- This might work differently for you … If you use special keys like Ctrl+A during the exam, it temporarily locks you out. The test center person has to come and unlock it for you. I don’t know if the exam time pauses during this period. So maybe if you do that, your break time won’t be counted as part of the exam. Don’t take my word on it though.
- Ridiculously, the test center did not allow me to eat anything during my 4 hour beta Professional Cloud Developer! I was allowed to take a break if I wanted, come out, use the restroom, and drink water. But absolutely no eating a snack. WTH! I had had my breakfast around 9am, then got ready and traveled to the test center and reached there about 11:15am. I’d carried a sliced apple in a box for a snack knowing that this was going to be a long process from 11:30am to 3:30pm. When I went for my previous exams, I’d noticed that other test takers (doing their GRE, GMAT, TOEFL, Adobe, Salesforce, AWS, etc.) had brought a snack and kept it outside to have during their break. When I tried to do the same, he said I couldn’t keep any food out. What about all those other snacks and plantains there? Oh, they are allowed but not you, because you are taking the Google Certification. (insert multiple “huh, wth!” memes) And that’s how I ended up taking a 4 hour test without eating anything for a stretch of about 7 hours. If this is actually a rule, it is inconsiderate and needs to be stopped. If it is not, that test center needs to be belted; they anyways messed up other things also.
What next for me on GCP? Keep using GCP and keep learning. Apart from that, I’m hoping to train more people in using Google Cloud, getting their certifications, and do short term consulting. If there are such opportunities, do reach out to me on LinkedIn.
Notes from each of my exams
For those appearing for the various certification exams, here is a list of sanitized notes (no direct question, only general topics) about the exam.
Wish you the very best with your GCP certifications. You can reach out to me at LinkedIn and Twitter, especially for training for the certifications, short term consulting on GCP, and anything related to GoLang.