Notes from my Google Cloud Looker LookML Developer Certification Exam
Subscribe to my YouTube channel that teaches you to apply Google Cloud to your projects and also prepare for the certifications: youtube.com/AwesomeGCP. Check out the playlists I currently have for Associate Cloud Engineer, Professional Architect, Professional Data Engineer, Professional Cloud Developer, Professional Cloud DevOps Engineer, Professional Cloud Network Engineer, and Professional Cloud Security Engineer.
tldr; I passed, but preparation was long for a beginner and the exam format was tough.
p.s. I wrote a good part of this post before I took the exam so as to truly relay my learning journey to you. Some I wrote later. So I might jump between a present tense and past tense often in this post.
What is Looker and the LookML Developer certification?
Looker works as an abstraction layer between data sources (databases) and users who want to visualize data in dashboards/charts/graphs/etc. LookML Developers create the abstractions in the Looker Modeling Language. (Btw, the ML in “LookML” has nothing to do with machine learning and it also does not stand for “Markup Language”.) With LookML we create data models that represent the data source. These are shown to the user, typically a business analyst, in a web interface who can create charts and dashboards from the user interface by mostly clicking and choosing what they want. This removes the need for them to know SQL or having to work directly with database SQL querying.
Google acquired Looker in mid 2019. Tighter integration with Google Cloud continues.
The Google Cloud LookML Developer certification checks your ability to create these data models in an efficient and effective way.
side note: There used to be a Looker Business Analyst certification, but it is now defunct.
Why am I doing the LookML certification?
I’d posted on LinkedIn that one of my goals for this year was to do more learning on data, data engineering, and machine learning/artificial intelligence. Visualization is an essential part of the data pipeline as stakeholders and decision makers can consume the data easily. The word on the street is also that Looker is going to be integrated more into other parts of Google Cloud. Overall, it just makes sense for me to learn about it, and the certification, as usual, gives me a good goal to focus on.
Where am I starting from?
This is the first time I’m working on any business intelligence + data visualization tool like Looker. However, I know SQL and I understand data visualization — I’ve worked with d3js and even created custom components. I’ve also created dashboards using d3js or other similar tools which work at a higher level.
Being a noob, understanding and interpreting all the new terms and nomenclature took me longer than I thought it would. As you read my notes, please keep this in mind — I would expect the experience of somebody who’s more familiar with Looker and LookML would be quite different.
How is the learning going?
Looker hasn’t been easy to understand for me because I don’t have similar knowledge from elsewhere to transfer in. Many things were not intuitive for me.
I also see occasional inconsistent design. What’s the parameter to define time splits? “timeframes”. What’s the parameter to define duration splits? “intervals”. If created was a time split, how will you access the hour field? “${created_hour}”. If created is a duration split, how will you access the hour field? “${hours_created}”. Ugh. Why the inconsistency?
What’s a pre-configured chart called? A look. Why can’t it just be called a report or a chart like it is commonly referred to? I understand that the company is called Looker, but so?
What is a datagroup? It is a caching policy. Then why not just name it something that matches that intent.
You define objects like this: view: my_view. Here my_view is a view. How about explore: abcd? Well, abcd is an explore but abcd also has to be a view to start with. Honestly, this should have been so evident but it took me longer than it should have to confirm that this was the case.
I don’t know if this was just a coincidence in the samples, but I see the same name being repeated often. Explores and views, projects and models. As a beginner, it confused me. Even when I navigated the user console, I was confused what I was looking at or clicking.
I’m certain that there are historic and probably valid reasons for all of this and many others that I found difficult to contend with, but I’m not in a position of knowledge to judge or criticise any of this. The only personal experience I want to convey to you is that to get a handle on LookML it took me longer than I thought it would — in the range of a couple of months. So, you should also probably budget for about that much if you are starting off too.
How should you learn?
I would recommend that you go through a workshop or course with a trainer who knows Looker/LookML already. My belief is that it took me much longer to self learn. It would really help to have somebody give you basic pointers.
As of now, you can’t just go to a Looker instance via the Google Cloud console. To get practice around the admin parts, therefore, is a little tougher. There are a few Qwiklabs exercises, but not too many and definitely not enough. There is a sandbox available here, which I found useful: https://kitchentablesandbox.cloud.looker.com/
Get hands-on experience for all the basic tasks. Areas like performance, git integration, and administration is tougher to get some real world experience on, unless you are already in a project implementing Looker. So, for those, rely on the documentation and YouTube videos to get a high level understanding.
Any other resources, I’ll continue to add in the awesome-gcp-certifications git repo.
Scope of Exam
A key difference between other Google Cloud professional certifications and the LookML exam is the scope of the subjects. For example, quite wide exams like the Cloud Architect and Data Engineer encompass tens of products and hundreds of sub-products and thousands of features. Even more focused exams like the Network Engineer, Security Engineer, and Machine Learning cover many products and sub-products. In comparison, LookML is much more limited in scope. This is both a blessing and a curse.
It’s a blessing because you need to focus on only one product. You are not left wondering what other products have I not even checked out or tried out — a significant concern for lots of test takers which makes them unconfident about attempting the exam. It’s also a curse because given the limited scope, to get a good range of questions, the LookML certification exam has to go to inner details and edge cases on the exam. I really am not good at remembering these things like particular parameter names and special syntax. In recent years, I try to draw out the main, high level picture and mainly only retain that in my head. When I need to implement something or respond to a specific question, I search the documentation. As I also mentioned before, some of the parameter naming didn’t seem consistent, which means it is not effective to only remember core ideas and then derive whatever needs to be done in a new context.
Practice Exams
This was one of the toughest aspects — there are no official sample questions. I went in blind into this exam, and that is definitely not helpful. There is no indication as to what kind of questions there would be on the exam. What I did was to create my own warm-up and practice questions before I even took the exam so that I can simulate some practice for myself. (I plan to publish them some time later.) These questions I came up with, started off as just basic questions so that it forces me to think about alternatives. Since then I also made up some scenario questions. Of course, this was very tough as I was just working in the dark not knowing anything about the exam. I have a fair idea about the kind of questions that are asked on other Google Cloud exams, but I could not be sure that the LookML exam questions would be similar because it probably was inherited via the acquisition. I didn’t know if Google had reworked the exam questions after the acquisition.
Anyways, come back here or follow me on LinkedIn to know when I publish some practice questions. I’ve got a set of practice tests on Udemy for the CDL, but I can see how practice questions for LookML will be difficult to put on Udemy since they have a very restrictive format for questions. The LookML questions with all its code doesn’t suit the Udemy restrictions. I’ll have to check what I can do.
The Exam
On Monday morning, 24th Jan, 2022 I sat for the LookML Developer certification. Some of my high level notes:
- The exam is for 100 minutes and I got 50 questions. (On average, 2 minutes per question.) Google does not make an official statement about the number of questions, so you might get a different number.
- I did not get any time to review questions in the end. Probably the only GCP exam where I had this issue.
- Some of the questions were too long. Very few questions that I would term “simple and straightforward”. Almost every question was wrapped in a scenario or situation.
- Between a third to half the questions had LookML code.
- The code is, frustratingly, unformatted. Blocks of code were entirely left aligned — explores, views, parameters, etc. all start in column one. It takes so much time to just find out which code is in which block. TIHI. (I understand that this might be a problem with kryterion’s systems, but at least put spaces to align the code better to get around this issue.)
- It is also just black text without any code coloring. Everything looks the same and makes checking for code errors all the more difficult. All of it is just unwarrantedly painful. I won’t face such issues in the real world.
- In at least one code block, there weren’t matching closing brackets. So when asked to choose the right code, should I eliminate that option or was that just a typo? How am I to know during the exam? There was also one option with a random “>” at the beginning. It was completely out of place and I was able to dismiss it as a typo, but I definitely couldn’t do this always.
- There were questions where I had to choose the correct LookML code block. Double spaced. No code formatting. In one particular question, I had to choose two out of 5 options. Each option was about 6–8 lines of code. So I was scrolling up and down at least 3 screen-fulls to try and compare the code. It was annoying and also infuriating to have to spend some 8 minutes on scrolling up and down and comparing unformatted code. It wasn’t even a tough question in the end, but I still had to waste all that time. (As I mention in another point, there were questions that check syntax validity. So I had to check all the code with a fine toothed comb.)
- There was one question that only had a question stem. No actual question ending in a question mark asking what was needed. I had to guess/assume what might have been the question.
- There were a few questions and options that were not crystal clear. (I’m unable to give any specific info about these questions as it could reveal the question type, but I’ve made a note of it in case the Google Cloud certifications team would like to review them.)
- Gotcha questions. It is not typical of GCP exams to have “gotcha” questions that have impossible options. I think there were at least a couple of answer options like this. Of course, maybe it’s possible that this is my ignorance rather than the non-existence of the option. There was a parameter value like this made up one — abcd: “2” “days”. This is syntactically wrong and wouldn’t compile. I’ve to pore through the badly formatted code to find syntax errors like this and eliminate the option! I no more like these kind of questions that is trying to catch me on an irrelevant technicality.
My guess is that these questions were imported from the original Looker certification before the Google acquisition. I know for a fact that the other exams’ questions go through a thorough review and are held to higher standards at Google Cloud. This team needs to do a review of these questions in the LookML Developer certification. Single space code lines. Indentation could be fixed with hard coded spaces. I doubt if the Kryterion format has colored text, but they should definitely add it. If that’s not possible, use images with pre-formatted code. Layout code blocks in the options in a 2x2 grid so that it is easier to compare in one screen-full.
Some of these issues might get fixed, but it is unlikely to happen soon. So, for you the test taker, the advise is to expect some issues like these and don’t get flustered during the exam.
Exam Topics
There really is not much to list out here. Since LookML is fairly limited in scope, study everything. Yet, I found the exam guide too abstract and I believe it would be good for you to get some direction for yourself from the listing below. A few things that I think you can avoid based on the exam guide: liquid parameters and templated filters, features connected to specific database dialects, creating dashboards/tiles/looks from the perspective of a business analyst.
These are some of the general topics you would need to know:
- Changing how dimensions, measures, views, explores as seen by the user using various techniques.
- Content Validator (https://docs.looker.com/data-modeling/getting-started/look-validation, https://community.looker.com/technical-tips-tricks-1021/content-validator-quick-facts-23551)
- Creating views from queries and merging results.
- Datagroup — how to define it? What are the different types and strategies? When would you use each of them?
- Debugging errors — given a certain error, what does it imply and how can you resolve it? (Tip: I went through community posts to get an idea of the kinds of errors that are often seen and also to learn how they were resolved.)
- Defining the LookML to get a certain result given a certain customer situation, say like count of fruits in each type.
- Different filters: access_filter, sql_always_where, always_filter, conditionally_filter. Which to use for what kind of user requirements.
- Different kinds of type and datatype.
- Dimension Groups and how they are referenced.
- Git — resolving conflicts, setting workflows, working with branches.
- How to achieve certain expected results by using appropriate parameters, say like, type, sql_on, hidden, filters, etc.
- How to restrict fields that are fetched or visible?
- If there are code changes, how are you going to maintain consistency for the user while parameter values like column names change?
- Importing other files.
- Improving performance — with PDTs.
- Improving performance — with customized SQL.
- Join relationships and when to use which
(https://docs.looker.com/reference/explore-params/relationship) - Persistent Derived Tables. Ways to define them and which option to use when.
- Referencing fields from different views.
- Symmetric Aggregates (https://help.looker.com/hc/en-us/articles/360023722974) and dealing with fan-out issues.
- Syntax for joining views/tables and order of joining for performance depending on user requirements.
- Types of derived tables: SQL and Native. How to define them?
- Use of and setting the primary key (https://docs.looker.com/reference/field-params/primary_key)
- Ways to use access filter.
- What is the difference between access_filter and access_grant? (https://community.looker.com/lookml-5/access-grant-access-filter-20830)
Should you take the exam?
I think the LookML certification is quite niche — since the Google acquisition and exam re-branding, I’m the 210th person to pass the certification. If you are working in anything but data engineering, my opinion is that it is not very relevant. It also has a learning curve — so be prepared to invest weeks or months figuring it out. Alternatively, if you can attend an instructor led training with an instructor who has good knowledge of Looker, it will definitely accelerate your learning.
The exam is also priced at an indefensible USD 250! Again, likely the vestiges of the previous exam from an independent Looker. Within the Google Cloud certification portfolio, this needs to be normalized— in the range of the price of the Cloud Digital Leader or Associate Cloud Engineer.
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.
Overall notes across all GCP certification exams
Notes from the Professional Cloud Architect exam
Notes from the beta Professional Cloud Developer exam
Notes from the Professional Data Engineer exam
Notes from the Associate Cloud Engineer exam
Notes from the beta Professional Cloud Network Engineer Exam
Notes from the beta Professional Cloud Security Engineer Exam
Notes from the Professional Collaboration Engineer Exam
Notes from the Professional DevOps Engineer Exam
Notes from the Professional Machine Learning Engineer Exam
Github Repo: awesome-gcp-certifications
A collection of posts, videos, courses, qwiklabs, and other exam details for all exams: https://github.com/sathishvj/awesome-gcp-certifications
More Questions?
Check the FAQs here: https://medium.com/@sathishvj/frequently-asked-follow-up-questions-on-google-cloud-gcp-certifications-438e1addb91d.
Wish you the very best with your GCP certifications. You can reach me at LinkedIn and Twitter. If you can support my work creating videos on my YouTube channel AwesomeGCP, you can do so on Patreon or BuyMeACoffee.