This post will tell you about my experience of the Associate Android Developer certification exam and my journey prior to that.
What is this certification about?
- The Associate Android Developer certification from Google is one of the Developer Certifications offered by Google in collaboration with Udacity.
- As mentioned on the certification page, this exam is designed to test the skills of an entry-level Android developer.
- The test taker must build an Android app based on certain given requirements within 24 hours.
What is the format of this certification exam?
- To get this certification, you need to clear two stages:
- Stage 1: The coding exam
- Stage 2: An exit interview based on Stage 1
(as of 3rd September 2017; for latest details click here)
- Cost: 6500 INR or $149
- Duration: Submit the exam anytime within 24 hours.
- Number of Attempts: You get 3 attempts for paying once. If you’re unable to clear the exam after 3 attempts, you need to pay again.
Stage 1: The coding exam
- Download the starter code project after you pay for the exam.
- Open the downloaded project in your Android Studio, fix bugs, add certain functionalities and test your code as per the given requirements for your exam.💻
- Submit your code by uploading the project within 24 hours. ⏳
- Proceed with Identity Verification by uploading your ID proof & photo.
Stage 2: The exit interview
- The exit interview is an online video call organised via zoom.us wherein a member of the certification team asks you a few questions about the exam.
- This mostly covers questions regarding your code and basics of Android.
- The interview lasts for 15 to 30 minutes and in some cases ended within 10 minutes itself.
- Once again, you’ll have to get yourself verified using the ID you had uploaded at the end of Stage 1 during this interview.
If all goes well, you’ll get your certification credentials via BadgeCert — within 45 days from the day of your exam.
If you’d like to see what the exam interface looks like, click here.
After learning Java at the end of the 2nd year at my engineering college, I was keen on learning Android app development and hence I opted to learn from Coding Ninjas again in August 2015, like I had previously done with Java. There, the quality of teaching and assignments enhanced my interest in the field of Android.
I applied immediately. Soon, I received an email from the scholarship team that I had cleared the pre-assessment round and was now through to the interview stage for the scholarship. The interview was held in December 2015 and soon after the interview, my scholarship was confirmed on 16th January 2016.
The Nanodegree experience was amazing. Udacity’s video content and code reviews were what kept me motivated. The best thing about this nanodegree from Udacity is that it’s course creators are developer advocates from Google itself. Also, the video lessons include recordings of these developer advocates talking to you, making you understand the quizzes and bringing up answers to doubts, seconds before they pop up in your head. This is great compared to other websites offering video lectures where they just show a screen recording while they type the code.
I finally managed to graduate with the Android Developer Nanodegree in January 2017.
Udacity Nanodegrees grant you certain benefits like a certificate with your nanodegree credentials, code reviews for your projects from Nanodegree alumni, resume reviews, an interview preparation course and access to Udacity forums.
You’ll only miss out on these things if you don’t pay for the Nanodegree, but if you want to learn and you only care about the great course content, it’s available for free for all Nanodegrees under the free courses section on the Udacity website.
I got to know about the Associate Android Developer certification soon after I/O Extended (2016) organized by Google Developer Group New Delhi in Okhla.
At that time, I was still pursuing my Android Developer Nanodegree and I had decided to take this certification exam after my Nanodegree.
Before I’d take the certification test, I wanted to publish a few apps on the Play Store, just to have the complete app development experience before the exam.
I had always wanted to publish a few apps on the Google Play Store. I kept waiting for the perfect idea, but it never came. I was hesitant to publish the apps I had created during my Nanodegree because I knew that they’d be used by none since they were apps which I had created while learning Android and didn’t have any good use case for the common man.
But in July 2017, I came across an app on the Play Store that had over 1 Million downloads. “So what?”, you ask. All that app did was: Display images of Mehendi (henna) designs.
That was it.
I realized that I had waited long enough and it was time that I launched something on the Play Store. Hence, I launched 3 of my apps on the Play Store within a week.
I thought that publishing apps would be a piece of cake since coding apps is the real task. I was past that already and I had my APKs ready.
But I was wrong.
Coding your apps is just the beginning. Keystores, App signatures, DebugBuild, ReleaseBuild, generating screenshots, feature graphics, app video and learning how to increase your downloads using ASO is what follows next.
I learned so much in the span of that 1 week, I wish I had done it sooner. Now, I had a portfolio of apps to show no matter how bad they were.
Prior to launching these apps, whenever someone asked me for a link to my work, I’d send them a GitHub link for the app code, a Google drive link for the screenshots of the app and its APK.
Next, they’d ask me if I had something on the Play Store.
To that I’d answer:
No, I don’t. Because I want to launch something that’d be actually used by people.
But what they’d hear was:
If you develop for fun, having apps on the Play Store with few downloads doesn’t mean that you failed, or your app didn’t work, or, you aren’t good at what you do. It acts as proof that since you were passionate about something, you toiled for days to produce something and that you like to show it to the world.
If Zuckerberg would’ve decided to launch Facebook for the entire world or not launch at all, we’d still be Orkut-ing.
For all budding Android app developers, publish whatever you have, right now. Even if it is that first calculator app you created or that to-do app which still has some minor bugs. Publish now so that later, you don’t “wish that you had done it sooner”.
Now let’s get to my exam experience part:
The coding round experience
I had 48 hours to submit my exam, so this is what I had hoped for:
But I got stuck a few times and this how I felt after debugging:
I had worked on almost all aspects of Android that were required for the exam (exam content) except for testing. I had no experience with Espresso whatsoever. Before the exam, I was looking for good resources to learn Espresso when I got to know that the Android Developer Nanodegree content had been updated and it now included Espresso as well! If you’re not a Nanodegree student, you can watch the free course here.
I took the exam on 15th July 2017.
- As soon as you start your exam, you need to download the starter code.
- The exam is designed to model a real-life situation wherein “a developer was assigned to that project, but the developer left due to some reason. Now you’ve been assigned with the task of understanding their code and completing the project.” Hence, you’re provided with a starter code.
- There is a list of features that your app must have upon final submission.
- Your tasks are to: Implement new functionalities as listed in the requirements, create new screens, debug existing code, generate UI tests, and so on.
- As soon as I launched the exam, I went through all the requirements first before I started coding:
- I picked up the easy tasks first and ensured that I finished implementing one functionality before I picked up another one.
- I got stuck at implementing a custom view, but some simple Google queries helped me make it through that.
- The other thing I got stuck on was related to data persistence. I didn’t seem to remember a particular syntax. Again, StackOverflow came to my rescue.
- Yes, there were some functionalities required by the exam which I had not implemented in a long time, but going through a few online resources and then implementing them on my own was not that difficult.
I scheduled my video-call interview for 11:30 pm on 23rd July, after I had received confirmation on the 19th that I had cleared the coding exam.
- The interview was organized via zoom.us and my interview duration was about 15 minutes.
- My interviewer began the interview by asking for my ID proof for verification.
- Then I was asked to provide an overview of the tasks of my coding exam.
- This was followed by some basic questions on Android such what are the 3 ways of doing ABC and the 2 ways of performing XYZ in Android.
- After this, he asked me about the features that were the toughest to implement in my coding exam. I told him about what I felt was challenging and how I finally managed to solve it.
He told me that that would be all and that I’d be getting my certification soon if all went well. He asked me if I had any questions for him and I asked him a couple of things about the advantages of becoming a certified developer.
On 29th July, I got an email from Udacity that I had successfully cleared my interview as well and that I was now a Google Certified Associate Android Developer!
Tips & FAQs:
- “I am an experienced professional and I have been developing Android apps for a couple of years now, is this certification of any use to me?”
As a learning experience? Maybe not. But this is something that would certainly validate your skills as an Android Developer. You may also get to attend the next Google Developer Certification Summit (More details about the summit at the end of this post). Hence, I see no harm in getting certified.
- “I am an amateur in Android app development, hence I am not confident about my Android skills. Where should I prepare from?”
Try to implement everything given in the exam syllabus on the certification website at least once before the exam. Also, incorporate a couple of those things into a single app. Then go on and create multiple apps, by increasing the number of functionalities implemented with every app you make. This will give you the confidence you need. You’ll be able to quickly access your code and refresh your knowledge if you get stuck on a particular task during your exam.
- “I am comfortable with Java and data structures, but I have no prior experience of Android app development, is this exam for me?”
Yes, but only if Android is something that interests you. If you want to do this just for the certification, it’s of no use. If you want to begin with Android, I’d recommend Udacity’s beginner’s level free courses. After that, follow the steps in the previous answer. Don’t rush into giving the exam, try your hand at Android and keep practicing for at least 1–2 months daily.
- “Do you recommend any book?”
No, we have plenty of online resources to learn from, hence I never opted to study Android development from a book. But if books help you learn better, ‘Head First Android Development’ by Anthony J.F. Griffiths and Thomas Asbridge is a book I’ve heard of.
- “Am I allowed to use the internet during my exam?”
Of course, you are. Otherwise, this exam would’ve been held at a physical location with an invigilator monitoring you. Just make sure you do not copy & paste the exact code from StackOverflow or some other online resource during your exam. You’re not prohibited from using online resources during the exam. However, make sure you understand whatever you see online and then code it yourself.
- “Testing? I haven’t done that before!”
Don’t worry, no new developer focuses on testing when they start with Android app development even though we should. Just go through Espresso UI testing on Udacity or some other resource once before the exam and you’ll be good to go.
- Third party libraries?
Avoid using them. I didn’t use any during mine. The exam guidelines don’t explicitly allow you to use them so it’s better that you don’t. Better safe than sorry. Also, I didn’t find any functionality cumbersome enough to require 3rd party libraries. Images?
setImageResource(…)would do, no need to go all Picasso on it.
- “Will I get the same project and continue from where I left off if my submission fails?”
No, if your submission fails, you lose one attempt and you’ll get a completely new project to do for your next attempt.
- “What if I miss out on a tiny functionality? Would my attempt be counted as failed?”
This is something that isn’t clear to me yet. During my exam, I had this doubt that what if I miss out on adding a
textColoror what if I put in the wrong
textSize? Certainly, that small a bug shouldn’t be counted as a failed attempt? Most probably, it won’t. The exam is graded using an automated system first, but later, manually as well. So I’m pretty sure that bugs of this magnitude would be handled by the manual grader. Still, triple check for these before you submit your exam.
- Higher level certifications?
This certification is targeted at entry-level Android Developers. There hasn’t been any announcement for higher level Android Developer certifications from Google so far.
- “Where’s my certificate?”
As of now, you only get the digital badge from BadgeCert and no paper certificate.
- Certification validity?
Your certification is valid for 3 years. As mentioned in the certification code of conduct documentation received after getting certified.
- For more details about the exam, watch this video from Google:
- The certification was introduced at Google I/O 2016:
- This video from DigToKnow’s is the only YouTube video available so far which tells about the certification exam experience. It certainly cleared a few of my doubts before I took the exam. I’ve covered most of this video’s content in my post but I still recommend that you watch it before you take the exam.
- I came across this GitHub repo a few days ago. It includes certain resources to help you prepare for the exam:
Associate-Android-Developer-Certification - All the info and materials about the certification that I've collected so…
- If you’re planning to do a thorough preparation for this certification exam, check this Associate Android Developer Fast Track course from Udacity.
Associate Android Developer Fast Track | Udacity
Learn the skills you'll need to successfully earn Google's Associate Android Developer Certification. Ideal for…
- (Update: 16/10/2017) Latest video from Google Developers India’s YouTube channel:
I wish I had taken this exam earlier so that I could have attended the Google Developer Certification Summit held in Bangalore in April 2017:
I hope Google organizes another one of these next year as well.
If you don’t want to regret missing out on this summit and you are passionate about Android Development as well, then grab your Google certification today and join the community of Google Certified Associate Android Developers!
If you’d like to go through the exam as it happened, have a look at my exam walkthrough post:
Google Certified Associate Android Developer: Exam Walkthrough
When I wanted to appear for this certification exam, I had no clue what the exam interface would look like. I searched…
UPDATE: 9th October 2017: Received my new certificate today