ProAndroidDev

The latest posts from Android Professionals and Google Developer Experts.

Follow publication

Modern Android Interview Questions

Mansi Shah
ProAndroidDev
Published in
4 min readOct 14, 2022

Hey Android Devs πŸ’š,
I am working as a full-time Android Developer for a long time now in a client-based IT company. And during my service, I am fortunate enough to appear in a few client interviews for MNCs & startups as well. My intent to write this blog is to share my past interview experiences & help you all out with your journey.

I habitually note down questions immediately after completing my interview round. I have listed down below some interview questions for senior developers and tried to include answers to most questions as well.

I have also attached the Codelab link to try coding examples & Quiz links for the MCQ round at the end of this blog. Also, I have added a publication link to learn jetpack Compose from scratch with example code as it’s a hot skill nowadays!

Java β˜•οΈ

  • What is the diff between encapsulation & abstraction (practical example) β€” Check here
  • HashMaps vs HashTables β€” Check here
  • When to use array & ArrayList β€” Check here
  • What is the volatile keyword β€” Check here
  • What is the transient keyword β€” Check here
  • What is a diff between a string buffer & string builder β€” Check here
  • Why is string immutable β€” Check here
  • Explain multithreading. How two threads pass messages internally β€” Handler
  • class A -> extends class B, implements interface C. Both have the same method fun add() {}, Which one will be implemented in class A?
    Try yourself
  • What is the difference between String test = new String(β€œX”) & String test = β€œX”. Explain String constant pool & String literal β€” Check here

Android

  • When I am in my activity onResume() & get a phone call what will be the lifecycle of the fragment inside my activity β€” Try yourself
  • Explain context & applicationContext, also a practical example β€” Check here
  • what is the difference between ViewModel and AndroidViewModel β€” Check here
  • what is the diff between MVP & MVVM β€” Check here
  • Tell me any method of broadcast receiver except onReceive() β€” Check here
  • How Broadcast receiver is used for the network (WIFI) changes β€” Check here
  • Type of services in Android β€” Check here
  • Is the Intent service run on background or main thread β€” Check here
  • Explain FCM foreground & background notifications β€” Check here
  • Design patterns in Android β€” Check here
  • What do you think about NavHost in navigation? β€” Check here
  • Explain database management using SQLite, Room & Realm β€” Check here
  • What is a foreign key in Room DB? Why do we use it? β€” Check here
  • What is doze mode, and when is it introduced? β€” Check here
  • what is ADB, can you tell me any commands? β€” Cheatsheet
  • what is linting in Android β€” Check here
  • What is Rxjava, and how it works? β€” Check here
  • What are SOLID principles? β€” Check here
  • Have you worked with any other hardware systems? (i.e. I have worked with Clover POS system)
  • What is KMM? β€” Check here

Kotlin

  • What are the benefits of Kotlin over Java
  • Explain the use of lateinit & lazy keywords
  • In any class we have a member variable or function, so how can we make a getter setter of that variable?
  • What is MVVM, and how does it work? what is the use of Live data?
  • What is null safety in Kotlin?
  • What is the diff between Var & Val
  • What is Elvis operator?
  • What is Flow API in Kotlin β€” Check here
  • Explain coroutines in kotlin
  • What are scoped functions in kotlin
  • How can you declare a singleton class
  • what is the diff between companion obj & object
  • used extension functions? example
  • what is the diff between static & singleton > Singleton has an instance/object while static class is a bunch of static methods.
  • what is constant
  • Explain @jvmstatic @jvmoverloads @jvmfiled

You can get most of the Kotlin answers here:
https://blog.mindorks.com/kotlin-android-interview-questions

Jetpack Compose πŸš€

  • What are the benefits of using Jetpack compose?
  • What is a Composable function?
  • What is a declarative approach?
  • What jetpack compose libraries have you used?
  • Explain compose UI basic components

Jetpack compose blogs with Github examples: Jetpack Composers

Testing πŸ›

Espresso Testing Library: Espresso UI Testing for Intents

Data Structure

  • The time complexity of Hash Table β€” O(1)
  • Best for getting the last item β€” Stack
  • Time Complexity of Binary Search β€” O(log N)
  • Which is best Sorting Algo β€” Quick Sort
  • Best performance for finding minimum value β€” Array

Others

If you have 5+ years of experience, it’s recommended to prepare for this section.

  • Explain one of your challenging/exciting/recent project
  • VCS β€” Git β€” PR review process, CI/CD process
  • Explain deep linking
  • About NDK, c++
  • What other languages do you know apart from Kotlin?
  • Explain the architecture of the communication application, and what data security measures you take while developing.
  • How do you keep up to date yourself with the latest development?
  • Any contribution to the community? Git, StackOverflow

That’s a wrap for now! Many more to come πŸ’₯
I hope you find this blog helpful.
All the best! πŸ‘

Published in ProAndroidDev

The latest posts from Android Professionals and Google Developer Experts.

Written by Mansi Shah

Lead Android Engineer. Hands-on experience in Java, Kotlin, and Dart. Obsessed with Jetpack Compose! Travel Geek. Painting Lover. https://linktr.ee/mansik15

Responses (5)

Write a response