Created
January 9, 2026 09:56
-
-
Save davidcafor/24b68fa7f00251d39ed10d4a178200fd to your computer and use it in GitHub Desktop.
🤖 The Unofficial Android Developer Curriculum
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # 🤖 The Unofficial Android Developer Curriculum | |
| ### Android → Jetpack → Compose → Coroutines → Architecture | |
| A curated roadmap for **modern Android development**, focused on concepts that | |
| *still matter in production*. | |
| This is the Android equivalent of a WWDC-based curriculum: | |
| no hype, no demos that don’t scale — only fundamentals that age well. | |
| --- | |
| ## 🎯 Goal | |
| Build a deep, long-lasting understanding of Android development: | |
| **Kotlin → Compose → State → Concurrency → Data → Testing → Performance → Multiplatform** | |
| --- | |
| ## 📜 Rules | |
| - Only concepts that still matter today | |
| - Prefer fundamentals over frameworks | |
| - Production-first mindset | |
| - Opinionated and battle-tested | |
| --- | |
| ## 🟩 Phase 1 — Kotlin First (Non-Negotiable) | |
| Before Android, **Kotlin**. | |
| ### Core Concepts | |
| - Immutability | |
| - Null safety | |
| - Data & sealed classes | |
| - Extension functions | |
| - Coroutines basics | |
| ### Must-watch | |
| - Kotlin Language Overview | |
| https://www.youtube.com/watch?v=F9UC9DY-vIU | |
| - Kotlin Coroutines Deep Dive — Roman Elizarov (KotlinConf) | |
| https://www.youtube.com/watch?v=YrrUCSi72E8 | |
| - Structured Concurrency | |
| https://www.youtube.com/watch?v=Mj5P47F6nJg | |
| **Outcome** | |
| > You think in Kotlin, not Java-with-better-syntax. | |
| --- | |
| ## 🟩 Phase 2 — Android Fundamentals (Still Matter) | |
| Compose does not remove the need to understand Android internals. | |
| ### Core Concepts | |
| - Activity vs Fragment | |
| - Lifecycle (real lifecycle, not diagrams) | |
| - Context | |
| - Configuration changes | |
| - Process death | |
| ### Must-watch | |
| - Understanding Android App Lifecycle | |
| https://www.youtube.com/watch?v=bn7w3U6kD6E | |
| - Android Memory Management | |
| https://www.youtube.com/watch?v=7E3h1Y6h1Ww | |
| **Outcome** | |
| > You understand *why* Android apps break. | |
| --- | |
| ## 🟩 Phase 3 — Architecture (The Spine) | |
| ### Core Concepts | |
| - MVVM (proper MVVM) | |
| - Unidirectional Data Flow | |
| - State hoisting | |
| - Repository pattern | |
| - Dependency Injection (Hilt) | |
| ### Must-watch | |
| - Guide to App Architecture (Google I/O) | |
| https://www.youtube.com/watch?v=Z9XKfZ7yP9Q | |
| - Android App Architecture — From MVC to UDF | |
| https://www.youtube.com/watch?v=5ACbP6F4W8Q | |
| **Outcome** | |
| > Your app survives feature growth. | |
| --- | |
| ## 🟩 Phase 4 — Jetpack Compose (The SwiftUI Moment) | |
| Compose is Android’s SwiftUI — with the same traps. | |
| ### Core Concepts | |
| - Composables | |
| - Recomposition | |
| - State hoisting | |
| - `remember` vs `rememberSaveable` | |
| - Side effects (`LaunchedEffect`, `DisposableEffect`) | |
| ### Must-watch | |
| - Thinking in Jetpack Compose | |
| https://www.youtube.com/watch?v=SMOhl9RK0BA | |
| - State in Jetpack Compose | |
| https://www.youtube.com/watch?v=FJY3v5dF7FQ | |
| - Jetpack Compose Performance | |
| https://www.youtube.com/watch?v=EOw1V8hQz1E | |
| **Outcome** | |
| > You stop fighting recomposition. | |
| --- | |
| ## 🟩 Phase 5 — Concurrency & Async | |
| ### Core Concepts | |
| - Coroutines | |
| - Structured concurrency | |
| - Dispatchers | |
| - Flow | |
| - Cold vs hot streams | |
| ### Must-watch | |
| - Kotlin Coroutines on Android | |
| https://www.youtube.com/watch?v=BOHK_w09pVA | |
| - Flow vs LiveData | |
| https://www.youtube.com/watch?v=ZX8VsqNO_Ss | |
| **Outcome** | |
| > No more callback spaghetti. | |
| --- | |
| ## 🟩 Phase 6 — Data & Persistence | |
| ### Stack | |
| - Room | |
| - DataStore | |
| - Retrofit + OkHttp | |
| - Offline-first architecture | |
| ### Must-watch | |
| - Modern Android Data Layer | |
| https://www.youtube.com/watch?v=8X6L8yGk4Ks | |
| - Building Offline-First Apps | |
| https://www.youtube.com/watch?v=EwQx0nJwE9E | |
| **Outcome** | |
| > Your data layer is boring — and that’s good. | |
| --- | |
| ## 🟩 Phase 7 — Testing (Where Android Devs Fail) | |
| ### Core Concepts | |
| - Unit testing ViewModels | |
| - Coroutine testing | |
| - Compose UI testing | |
| - Fakes > mocks | |
| ### Must-watch | |
| - Testing on Android — Google I/O | |
| https://www.youtube.com/watch?v=ZQw9uVbE9p8 | |
| - Testing Jetpack Compose | |
| https://www.youtube.com/watch?v=Kq8L3HkF9WQ | |
| **Outcome** | |
| > Refactors stop being scary. | |
| --- | |
| ## 🟩 Phase 8 — Performance & Debugging | |
| ### Core Concepts | |
| - Recomposition tracking | |
| - Startup performance | |
| - Memory leaks | |
| - Layout inspection | |
| ### Tools | |
| - Android Studio Profiler | |
| - Layout Inspector | |
| - LeakCanary | |
| ### Must-watch | |
| - Android App Performance | |
| https://www.youtube.com/watch?v=7m7F3JzP6G4 | |
| **Outcome** | |
| > You know *why* it’s slow. | |
| --- | |
| ## 🟩 Phase 9 — Multiplatform (Optional, Advanced) | |
| ### Kotlin Multiplatform | |
| - Shared domain & data | |
| - Android + iOS | |
| - Compose Multiplatform | |
| ### Must-watch | |
| - Kotlin Multiplatform in Production | |
| https://www.youtube.com/watch?v=Vj7wB0K0h2A | |
| **Reality check** | |
| > Powerful, but only after mastering everything above. | |
| --- | |
| ## 🧭 Recommended Learning Paths | |
| ### 🧠 Kotlin & Concurrency | |
| Kotlin → Coroutines → Flow → Structured concurrency | |
| ### 🎨 UI Mastery | |
| Compose basics → State → Performance → Testing | |
| ### 🏗️ Architecture | |
| MVVM → UDF → DI → Modularization | |
| --- | |
| ## 🎓 Final Note | |
| If you complete this curriculum: | |
| You won’t just *build Android apps*. | |
| You’ll understand **why modern Android looks the way it does** — | |
| and you’ll stop rewriting your architecture every year. | |
| Signal > noise. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment