KEMBAR78
Android Checklist | PDF | Android (Operating System) | Systems Architecture
0% found this document useful (0 votes)
4 views5 pages

Android Checklist

This document is an interview preparation checklist for Android Developer SDE-1, covering core Android topics, Jetpack & architecture, Kotlin internals, system design, serialization/networking, and testing. It includes a revised 4-week study plan with specific topics to focus on each day, as well as recommended resources and final tips for effective preparation. The checklist emphasizes practical understanding and hands-on experience in various Android development concepts.

Uploaded by

Aishwarya Kamal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views5 pages

Android Checklist

This document is an interview preparation checklist for Android Developer SDE-1, covering core Android topics, Jetpack & architecture, Kotlin internals, system design, serialization/networking, and testing. It includes a revised 4-week study plan with specific topics to focus on each day, as well as recommended resources and final tips for effective preparation. The checklist emphasizes practical understanding and hands-on experience in various Android development concepts.

Uploaded by

Aishwarya Kamal
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

✅ INTERVIEW PREP CHECKLIST (ANDROID

DEVELOPER SDE-1)
🔹 Core Android Topics
⭐ Topic Subtopics

⭐⭐⭐ Activity & Fragment Lifecycle methods, onCreate vs onStart, back


Lifecycle stack, config changes

⭐⭐⭐ ViewModel (internal) How it survives config changes,


ViewModelStoreOwner, no-context rule

⭐⭐⭐ RecyclerView Internals onCreateViewHolder vs onBindViewHolder,


view recycling, DiffUtil

⭐⭐ Fragment Transactions add() vs replace(), lifecycle impact

⭐⭐⭐ Navigation Component NavHost, SafeArgs, NavBackStackEntry,


ViewModel scoping

⭐⭐ Custom Views & How to write one, @JvmOverloads, styleable


Attributes attributes

⭐⭐ ViewModel & Context Memory leaks, lifecycle awareness

⭐⭐ DiffUtil Efficient RecyclerView updates

⭐⭐ Dispatchers.IO vs Main When to use which, impact on UI thread

🔹 Jetpack & Architecture


⭐ Topic Subtopics

⭐⭐⭐ MVVM ViewModel, LiveData/StateFlow, Repository, UseCase

⭐⭐⭐ Room (Offline-first) Entity, DAO, DB schema design, migrations,


PagingSource

⭐⭐⭐ Paging 3 Loading strategy, RemoteMediator, placeholders

⭐⭐⭐ Coroutines launch, async, await, withContext, exception flow


⭐⭐⭐ Flow vs LiveData Cold vs hot, lifecycle-aware vs not, operators

⭐⭐ WorkManager Use cases, constraints, chaining tasks

⭐⭐ App Architecture Clean Architecture vs MVP vs MVVM vs MVI

🔹 Kotlin + Internals
⭐ Topic Subtopics

⭐⭐⭐ Scope Functions let, apply, run, with, also – differences +


internal impl

⭐⭐ Sealed Class vs Enum vs Memory, behavior, use cases


StringDef

⭐⭐⭐ val vs var vs lateinit vs Internal behavior & memory implications


lazy

⭐⭐ Inline Functions When and why to use

⭐⭐ Extension Functions Syntax + use cases

⭐⭐ Abstract class vs Interface Key differences and use cases

🔹 System Design (Basic SDE-1)


⭐ Topic Subtopics

⭐⭐⭐ Offline-first architecture Syncing strategies, Room + Retrofit layering

⭐⭐⭐ API Contract Design Request/response modeling, enums over


strings

⭐⭐ SDUI (Server-Driven UI) Dynamic UI, rendering, flexibility, challenges

⭐⭐ Feed Design Pagination, UI state modeling, retries

⭐⭐ Compose State mutableStateOf, recomposition, remember


Management

🔹 Serialization / Networking
⭐ Topic Subtopics

⭐⭐⭐ Retrofit Coroutine integration, suspend functions, error


handling

⭐⭐⭐ Gson / Moshi @SerializedName, @Expose, custom deserializers

⭐⭐ Serializable vs When to use, performance implications


Parcelable

🔹 Testing
⭐ Topic Subtopics

⭐⭐ Testing Basics Unit test for ViewModel, Repository, mocking APIs

🗓️ REVISED 4-WEEK STUDY PLAN


✅ Week 1 – Android Core + MVVM + Navigation (✔ Completed)
Day Topic

Day 1 Activity/Fragment Lifecycle + Config changes

Day 2 ViewModel internals, ViewModelStoreOwner, no-context rule

Day 3 RecyclerView internals, view recycling, DiffUtil

Day 4 MVVM, Repository, UseCases – hands-on

Day 5 Navigation Component, NavBackStackEntry, SafeArgs

Day 6 Custom View, @JvmOverloads, styleable attrs

Day 7 Review + self QnA or mocks

🚀 Week 2 – Coroutines + Offline DB + Paging + Compose


Day Topic

Day 8 Coroutines – launch, async, await, exception flow


Day 9 Room DB – schema, DAO, migrations

Day 10 Paging 3 – RemoteMediator, placeholders

Day 11 Flow vs LiveData – lifecycle, operators

Day 12 Kotlin internals: lateinit, lazy, val/var

Day 13 Scope Functions: let, apply, run, also (internal impl)

Day 14 Mini project – Feed app with Room + Paging3

🧪 Week 3 – System Design + Advanced Kotlin + Testing


Day Topic

Day 15 Design Quiz App – sealed vs enum vs


stringDef

Day 16 Feed Design + pagination + retry + contracts

Day 17 SDUI architecture, pros/cons

Day 18 Retrofit + Gson + custom deserializers

Day 19 Serializable vs Parcelable – pros/cons

Day 20 Unit Testing: ViewModel + Repository

Day 21 Mock Interview with friend or self-record

🧪 Week 4 – Final Polish + WorkManager + Memory Mgmt + Compose


Day Topic

Day 22 WorkManager – constraints, chaining, use cases

Day 23 Dispatchers.IO vs Main – thread mgmt best practices

Day 24 ViewModel memory leaks + Context best practices

Day 25 Abstract class vs Interface + Extension Functions

Day 26 Compose State Management – remember,


recomposition
Day 27 App Architecture: Clean vs MVVM vs MVI

Day 28 Final Review + Resume update + Final mock Q&A

🎯 Resources
Topic Resource

ViewModel Official Guide

Lifecycle Lifecycle Docs

Room + Paging Codelab

Coroutines Roman Elizarov's Talks + Kotlin Docs

Compose Compose Basics

System Design YouTube – Kunal Kushwaha, Suraj Vishwakarma

Testing Android Testing Guide

✅ Final Tips
●​ Build small feature-based apps to validate concepts.​

●​ Do mock interviews (record or with friends).​

●​ Dive into Android source code (LiveData, ViewModel, etc.) for deeper understanding.​

●​ Focus on clarity and practical use-cases, not just buzzwords.​

●​ Simulate system design with ChatGPT or peer discussions.​

You might also like