Android System Design Interview Questions
Senior Android interviews almost always include a system design round: design the Android client for a chat app, a feed, a payment flow or an image loader. These walkthroughs cover how to approach each one, from requirements to architecture, offline support and the edge cases interviewers probe.
By Vivek Choudhary, Android engineer · Updated October 2026 · How answers are checked
How to answer an Android system design question
- Clarify the scopeAsk which screens and flows matter, who the users are, and whether you are designing the Android client, the backend, or both. Write down 3–5 functional requirements.
- Agree on the constraintsOffline support, network quality, battery, memory, app size, privacy and scale. On mobile these drive most of the design.
- Sketch the high-level designLayers (UI, ViewModel, repository, local and remote data sources), how data flows between them, and which component owns the source of truth.
- Go deep on the hard partsPick the 2–3 problems that make this app difficult: sync and conflicts, pagination, caching, real-time updates, background work, or process death.
- Talk about trade-offs and edge casesExplain what you chose and what you gave up, then cover failures: no network, slow network, app killed, duplicate requests, and how you would test and monitor it.
13 design walkthroughs
Design a Real-Time Chat ApplicationWhatsApp-style chat: offline-first, WebSocket lifecycle, delivery receipts, media.HardDesign an Analytics SDKEvent capture, buffering, offline persistence, batching and consent.HardDesign a Payment SystemCheckout SDK, card tokenisation, UPI intents, idempotency and double-charge prevention.HardDesign an E-commerce Product ListingFlipkart or Amazon style listing: server-driven UI, Paging 3 with filters, optimistic cart.MediumDesign a File Download ManagerResumable chunked downloads, WorkManager, Scoped Storage and progress.HardDesign an Image Loading LibraryBuild Coil or Glide: memory and disk caches, LRU, bitmap pooling, request dedup.HardDesign an Instagram-Style FeedInfinite feed: Paging 3, offline-first caching, video autoplay, optimistic UI.MediumDesign Maps & Live Location TrackingLive location like Ola or Uber: location updates, WebSocket streaming, smooth markers.HardDesign an Offline-First News AppRoom as the single source of truth, WorkManager sync, freshness vs data and battery.MediumDesign a Push Notification SystemFCM tokens, notification vs data messages, channels, rich notifications, deep links.MediumDesign a Ride-Sharing App (Ola / Uber)Booking flow, trip state machine, live driver tracking and payment.HardDesign a Video Streaming App (YouTube / Netflix)Adaptive bitrate, DASH/HLS, player lifecycle, PiP and offline downloads.HardDesign a Networking SDK (like Retrofit)Build a Retrofit-like client: annotations, interceptor chain, converters, auth refresh.Hard