Intermediate Android Development and Kotlin (

Building high quality Android applications with the latest technologies, software patterns, and languages available

Created by: Mickey Dang

Produced in 2022

What you will learn

  • Understand how to write a complex Android application to be scalable, readable, and modular for personal projects or a development job
  • Understand how Android view inflation actually works and make custom views
  • Understand industry programming concepts such as dependency injection and event driven programming
  • Stay current by learning the new Google Architecture Components, AndroidX, and JetPack
  • Learn about modern design patterns such as the Model-View-ViewModel (MVVM) architecture
  • Learn about Kotlin and its powerful features for Android development
  • Understand the 2 most popular Java libraries Mockito and JUnit to write automated tests

Quality Score

Content Quality
Video Quality
Qualified Instructor
Course Pace
Course Depth & Coverage

Overall Score : 92 / 100

Live Chat with CourseDuck's Co-Founder for Help

Need help deciding on a android development course? Or looking for more detail on Mickey Dang's Intermediate Android Development and Kotlin? Feel free to chat below.
Join CourseDuck's Online Learning Discord Community

Course Description

Why Am I Making This?
I wanted to make this course because when I was first learning mobile development, I tried going online and finding beginner videos and courses. What I found is that, they were great at teaching surface concepts as a starting point, but in and of themselves, they weren't enough to explain how to build an app beyond a certain point of complexity. So, if you're coming off of a beginner tutorial, you have some prior knowledge of Java and you understand some Android concepts such as the activities and lifecycles, then this is a great next step to further deepen your skillset and really stand out when applying for a job or trying to make a quality app by yourself.

What Are We Going to Make?
We're going to be making a "Google Notes" clone with the following features:
1. Make tasks that are broken down into todos
2. Todos can be checked off as completed or incomplete and appropriately displayed
3. Notes will be displayed on a separate view from tasks and todos
4. Both notes and tasks will be stored in a SQL database
Building this app is a great way to learn good software architecture and object-oriented principles. For example, we'll be able to reuse a lot of our code within the adapters and the view models when displaying a task list and a notes list if properly architecture.
Also, this is just the no frills version of the app. Along the way after teaching each concept, I'll have assignments followed by solutions on how to add deeper complexity into the app such as adding coloured tags for tasks, or making a list for only active tasks. By the end of it, you'll have a clean and material design adherent app that you can customize to your delight and use as a reference point to implementing your own app idea.

What Is Different?
Apart from learning new trends in Android such as Kotlin, Google Architecture Components, and MVVM, I'll also introduce you to a few popular libraries and tools that are widely used in industry to allow greater team collaboration and reusability of code.
1. Dependency Injection If you've ever heard of Dagger or Toothpick as a library and wondered why it's so cool, this will teach you!
2. Coroutines One of the biggest advancements in Kotlin is the ease of multi-threading and writing concurrent applications. Whether it's making a database query or waiting for a network request, what used to be a very complex task in Java without the use of a third-party library is now fast and built into Kotlin. This is also one of the few courses to explain how multi-threading and concurrency works which is transferable to almost any field of programming, not just mobile development!
3. Google Architecture Components- Learning how to use pre-made templates for ViewModels will facilitate the MVVM architecture which greatly helps simplify code and speed up development time and using the Room SQL Database Library will enable developers to persist data at ease.
4. JUnit and Mockito Testing is a vital part of programming when working in the industry where apps need to be reliable and robust to serve a large number of users while keeping testing time as low as possible. Who this course is for:
  • Beginner to intermediate Android developers who have just finished a beginner course and want "the next step"
  • Android developers who want to learn more detailed and complex concepts about Android to work in industry
  • Existing Android developers who previously worked with Java and want to stay updated and learn Kotlin, Android's newly supported language
  • Android developers who want to develop scalable and high quality applications
  • Prior knowledge of Java and basic understanding of Android is recommended to maximize learning through this course

*Some courses are excluded from this sale. Coupon not working? If the link above doesn't drop prices, clear the cookies in your browser and then click this link here.
Also, you may need to apply the coupon code directly on the cart page to get the discount.

Coupon Code

Instructor Details

Mickey Dang

Hello everyone, my name is Mickey.
I'm currently a software developer with work experiences in multiple industries. I have deployed Fintech solutions at a large Canadian bank that serves millions of clients, developed Android apps at a multi-billion-dollar ecommerce company that powers hundreds of thousands of businesses, and explored the applications of voice recognition interfaces in collaboration with university researchers.



38 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

i already knew some staff which have been at this course before the course but the course haven't just helped me learn new staff like coroutines but also it helped to start to think on more organized way and one of the things i liked also is that at the last video the instructor told us wait to learn next so i will no have to go randomly to the next course i know what i am going to study thanks alot for the course

The video quality is not enough. This is not 720p ! sorry!Many mistakes!Difficult level

one of the best course so far. I learn new technique that I never though. good job, but the video quality is a not so good, if the font is bigger will be easy to watch. thank you

This is a really awesome course that I have ever seen in udemy. Here the instructor covers lots of topics. And if u want to write really optimized code then this is the right place. So don't think too much and take this course.

I originally purchased the course for the Room section. After watching the entire course and following along with the demo, I learned a great deal of new techniques and better design and architecture. Thanks Mickey!!!

Great explanations. Clear and to the point. Shows you how to work in Android Studio and with Kotlin with some more advanced technics. In a lesson the videos where not updated and GitHub came to the rescue, so no panic. Also the quality is good, though not maximal and code could be more readable with more quality. Mickey replies VERY fast and he is very knowledgeable about Kotlin / Android. Honestly, one of the best course available on Udemy for more advanced architecture and topics than the beginner courses. More like that please!

The course is great, congrats!!!The only thing you need to fix asap is the quality of the videos.

By D S on

A design overview of what we are building would have been extremely helpful. For example before writing the Notes App a UML of the overall architecture would help the student create a mental map of things being built.

Excellent course, the instructor is really good and very professional. All themes are exposed clearly and in a progressive manner to learn as we advance developing the sample app.Just a note: Audio is not very good.Thanks for the excellent course.

Low resolution, mediocre video editing & explanation

The quality of the video sux. I have two fullHD displays and the image is blurred considerably on both of them. The text is still readable, but it's like watching it on an old CRT display. It is really noticeable and hence disappointing since the content of the course is excellent.

I think the course is different than other Android courses on Udemy and teaches a bit more advanced topics without wasting time going through basic stuff.That said, I found it to be slightly unorganised in some cases. There are repeating sections in the videos and a couple of quick and dirty fixes. Also the picture quality of some of the videos is not ideal but I see that's fixed in new videos which is positive.Overall I think this could be a great course but still needs some work. Since the course is fairly new, I will be happy to edit my rating when the issues are fixed and/or the content is updated