Android Roadmap

Step by step guide to becoming an Android developer.

Back to home

Legend

Propose
Alternatives
Options

1 Core Components & Fundamentals

Pick a Language

Kotlin
Java

Version Control

Git
VCS Hosting

App Components

Activity & Lifecycle
Service
Broadcast Receiver
Content Provider

2 UI & Navigation

Layouts & Elements (XML)

Layouts
UI Elements
RecyclerView & ListView

Modern UI Toolkit

Jetpack Compose

Navigation

Fragments
Navigation Component
Intents

3 Architecture

Architectural Patterns

MVVM
MVI
MVP & MVC

Design Patterns

Repository Pattern
Builder Pattern
Factory Pattern

4 Data & Storage

Room Database
DataStore
Shared Preferences
File System

5 Networking & Asynchronism

Asynchronism

Coroutines
RxJava / RxKotlin
Threads

Networking

Retrofit
OkHttp
Apollo-Android

6 Advanced Topics

Dependency Injection

Hilt
Koin
Dagger

Firebase

Authentication
Crashlytics
Cloud Messaging
Firestore

7 Testing & Distribution

Testing

JUnit
Espresso
Jetpack Benchmark

Debugging & Linting

Timber
Leak Canary
Ktlint

Distribution

Google Play Store
Firebase Distribution
Signed APK

Visit the following related paths and keep learning.