Practise answering common interview questions for Android engineering roles, covering Kotlin, Jetpack, architecture, and performance.
Interview tips
Use STAR method for behavioural questions
Reference modern Jetpack libraries and Kotlin idioms
Show awareness of Android's evolving background execution restrictions
0 / 5 completed
1 / 5
An interviewer asks: "How do you handle configuration changes, such as screen rotation, in an Android application?" — which response is most professional?
The best answer demonstrates the modern Android architecture approach: ViewModel for surviving configuration changes, reactive observation via LiveData or StateFlow, and SavedStateHandle for process-death persistence. It shows understanding of why ViewModel is the correct tool rather than workarounds. The other responses are either deprecated patterns (onRetainNonConfigurationInstance), anti-patterns that restrict UX (locking orientation), or manifest workarounds that still require manual state management.
2 / 5
An interviewer asks: "How do you implement background work in Android that needs to run reliably even when the app is not in the foreground?" — which response is most professional?
The best answer correctly identifies WorkManager as the modern recommended API for guaranteed background work, explains its benefits (constraint-based scheduling, chaining), and correctly distinguishes when a foreground Service is more appropriate. This shows architectural judgement. The other responses reference deprecated or incorrect APIs: Services without WorkManager are unreliable on modern Android due to background execution limits; AsyncTask is deprecated in API 30; postDelayed does not survive process death.
3 / 5
An interviewer asks: "How do you structure a Kotlin coroutine scope in an Android application to avoid memory leaks?" — which response is most professional?
The best answer demonstrates understanding of structured concurrency as a principle and maps specific scopes to their correct lifecycle components: viewModelScope, rememberCoroutineScope, and lifecycleScope. The explicit warning about GlobalScope shows awareness of a common antipattern. The other responses either require manual management that is error-prone (onDestroy), recommend GlobalScope (an antipattern that causes the exact problem the question asks about), or confuse exception handling with lifecycle management.
4 / 5
An interviewer asks: "How do you approach accessibility in an Android application?" — which response is most professional?
The best answer shows comprehensive accessibility thinking: content descriptions, touch target sizes, custom view delegates, TalkBack testing, automated tooling, and regression prevention through Espresso accessibility checks. The phrase "first-class requirement, not an afterthought" is the professional framing. The other responses are partial (content descriptions only), assume standard widgets are sufficient (they often need augmentation), or incorrectly treat accessibility as optional — which also conflicts with legal requirements in many markets.
5 / 5
An interviewer asks: "How do you reduce APK or AAB size in an Android project?" — which response is most professional?
The best answer describes a systematic, tooling-driven approach: enabling R8, using APK Analyser to find the biggest wins, then applying specific techniques (WebP, vector drawables, dynamic features, App Bundles). It prioritises impactful changes over generic advice. The other responses are either too generic (remove unused libraries, without specifying how to identify them), focused only on code (ProGuard/R8, which is correct but incomplete), or suggest quality degradation as a solution.