Mobile Engineer
Imagine a user opens your app on a subway with no signal. What should the app do, and how would you build that?
What the interviewer is looking for
- This question tests offline & networking. Designs for flaky connections with caching, local storage, retries and sync conflict handling.
- Strong answers: Showing cached data, clear offline messaging, local storage, queuing changes for later, and syncing when the connection returns.
- Likely follow-up: What if the user edits something offline that someone else changed online?
Another way it may be asked: Your app has a list of saved recipes. What should happen when there's no internet, and how do you make it work?
A structure to follow: Answer, explain, example, limits
- Step 1
Answer
Give your direct answer in the first sentence so the interviewer knows where you are going.
- Step 2
Explain
Say how it works or why you would do it that way, in plain words before jargon.
- Step 3
Example
Anchor it in something you have actually done or seen, with the detail that shows hands-on experience.
- Step 4
Limits
Say when your approach would not be the right one. It shows judgement.
This is guidance on shape, not a script. Use your own real experience and facts; never invent details to fill a gap. See the STAR guide and answer frameworks.
Common slips
- Reciting a definition without showing you have applied it.
- Using terms you cannot explain if asked a level deeper.
- Claiming experience beyond what you can discuss in detail.
How to practise it
Say the answer in 90 seconds, then answer the follow-up as if it were a new question.
Related questions
- Can you explain the lifecycle of a screen in an iOS or Android app, and why it matters when you load data?
- How do you make sure your app's screens adapt to different screen sizes, dark mode and larger text settings?
- How would you build a scrolling list of thousands of items so it stays smooth on an older phone?
- What architecture pattern do you use to structure your app's screens and logic, and why that one?
- Your crash reporting shows a spike after a release, but only on some devices. How do you track it down?