Every topic taught out loud, coded together, tested until it sticks.
Recomposed is a working tutor for Android interviews: lessons read aloud word by word with a voice tutor on call, pair-programming tasks with a coach reading your Kotlin, code-review drills graded by a tech lead, and tests that bring back whatever you miss.
One topic, four passes.
Reading about ANRs doesn't survive a follow-up question. Each topic runs the same loop until it does.
- 01 Hear it — A guided lesson read aloud word by word, with a voice tutor one tap away.
- 02 Build it — Pair tasks in real Kotlin, with a coach that watches your screen and your tests.
- 03 Review it — You review flawed, realistic code — a tech lead grades what you caught.
- 04 Prove it — Timed tests per topic. Anything you miss returns on a spaced schedule.
Lessons read aloud, word by word.
Every topic has a guided lesson narrated word by word, the spoken word highlighted as it goes — reasoning at speaking pace, the pace you'll have to produce it at in an interview.
- Follow the highlighted word as it's read — or mute it and just read.
- Grounded in the official docs — every lesson cites its sources.
- Stuck? “Talk to tutor” opens a voice call about the exact chunk on screen.
Write real Kotlin with a coach on the call.
Each topic ships hands-on tasks with real tests. Share your screen and the coach sees your code as you type — it nudges, it doesn't dictate.
- Tasks graded by real test suites, not vibes.
- The coach teaches the concept, then makes you defend the fix.
- Voice or typed — the session works either way.
You do the reviewing.
Review drills hand you flawed, realistic Android code and you pin comments to lines, like a real PR. Then the tech lead grades your review — what you caught, what you missed, and why it matters.
- Real smells: races, leaked scopes, main-thread I/O, lifecycle traps.
- Graded per issue — found, partial, or missed — with a score for the review.
Miss it once, see it again. On schedule.
Timed tests close every topic — 14 questions each, fresh random draw per attempt. Every miss lands in a Leitner queue and comes back right before you'd forget it.
- Every answer explained — including the wrong ones.
- A readiness score per topic that only moves when you prove it.
Then get grilled.
A voice mock interviewer that asks real follow-ups, presses on hand-waving, and scores you on six dimensions afterward — with the gaps routed back into your review queue.
No sign-up to browse or learn. Voice sessions need an account.
Lessons, quizzes and flashcards are free. Voice sessions run on credits (you start with 50), or go Unlimited for $20 a month.
Everything an Android interview can ask.
Built by reading every link in the source study guide — from scope functions to system design. Pick any topic and start; no account needed.
- Scope Functions
- Null Safety
- Properties, lazy & lateinit
- Data, Sealed & Value Classes
- Nothing & Any
- Generics & Variance
- Delegation
- Extension Functions & Properties
- Lambdas & Inline Functions
- Kotlin 2.x, KSP & Collections
- Coroutines Basics
- Dispatchers & Threading
- Structured Concurrency & Cancellation
- Coroutine Exceptions & Error Handling
- Coroutines Under the Hood
- Flow: the Basics
- Flow Operators
- Flow Context, Errors & Backpressure
- StateFlow & SharedFlow
- Sharing Flows & Lifecycle-Safe Collection
- Channels & Channel-Backed Flows
- The Java Memory Model (JMM)
- Threads, Executors & Thread Pools
- Locks, Atomics & Coordination
- HashMap Internals & Collection Choice
- ConcurrentHashMap
- Activity Lifecycle
- Fragment Lifecycle
- Config Changes & Process Death
- Intents & Deep Linking
- Services & Background Work
- Content Providers & Broadcasts
- Context, Application & Manifest
- Looper, Handler & Threading
- ART Runtime
- Runtime Permissions
- Resources & Configuration
- Compose Mental Model & Phases
- Compose State & Hoisting
- Compose Side Effects
- Compose Layout, Lists & Modifiers
- Compose Animation
- Compose Performance & Stability
- Material Design 3 & Adaptive Layouts
- Navigation (Fragment & Compose)
- RecyclerView, DiffUtil & XML Layouts
- MVVM & Unidirectional Data Flow
- MVI Pattern
- Clean Architecture & Use Cases
- Repository & Data Layer
- ViewModel & UI State
- Lifecycle, LiveData & repeatOnLifecycle
- Paging 3
- Hilt Basics
- Hilt Scopes & Components
- Dagger Fundamentals & Manual DI
- Retrofit & REST
- OkHttp & Interceptors
- JSON Serialization
- Image Loading (Coil & Glide)
- Auth Tokens & Idempotency
- Room Database
- DataStore & Preferences
- Offline-First Architecture
- Unit Testing & MockK
- Testing Coroutines & Flow
- Compose & Espresso UI Testing
- Testing Strategy & Pyramid
- Gradle Basics
- Build Variants & Signing
- R8, Shrinking & App Size
- Modularization
- CI/CD, Signing & Release
- Studio, Profilers & Firebase
- ANR & Memory Management
- App Startup Time
- Jank & Rendering
- Battery & Power
- Network Security
- Data Storage Security
- App Integrity & Injection
- Kotlin Multiplatform (KMP)
- Bluetooth, Sensors & Auto
- Mobile System Design
- Design: Offline-First Feed
- Design: Real-Time Chat
- Behavioural & the STAR Method
- The Senior Signal