Performance & Memory Optimization Interview Questions (React Native)
10 Performance & Memory Optimization questions from the React Native track. Read each short answer here, then open a question for the full explanation, examples, common mistakes, and sources.
- Senior
How do you detect and fix memory leaks in React Native apps?
Take memory snapshots and monitor the Xcode Memory Gauge and Android Studio Profiler for unreleased native objects and activities, and review useEffect cleanup for timers and subscriptions.
Read the full explanation - Senior
What is overdraw on Android devices, and how does it affect rendering smoothness?
Overdraw occurs when the system draws the same screen pixel multiple times in one frame because unnecessary colored backgrounds accumulate in nested <View> containers, wasting GPU power.
Read the full explanation - Senior
How do you reduce the final app bundle size on Android and iOS?
Enable ProGuard/R8, split APKs by processor architecture (ABI splitting), use modern image formats such as WebP, compress fonts, and remove unused libraries with a bundle visualizer.
Read the full explanation - Senior
How do you improve app startup time (Time to Interactive, TTI)?
Use the Hermes engine to run precompiled bytecode, defer initialization of nonessential SDKs to the background, and avoid heavy synchronous storage and network calls while showing the first screen.
Read the full explanation - Mid-level
What does removeClippedSubviews do, and when can enabling it be a double-edged sword?
It detaches native views outside the viewport from the native render tree to save memory, but can cause some elements to flicker or temporarily disappear during fast scrolling.
Read the full explanation - Mid-level
How do you handle runtime image rendering and downscaling issues?
Request image dimensions matching the display size from the server (through CDN image resizing), and avoid downloading 4K images to show in a tiny 50x50 icon, which wastes memory.
Read the full explanation - Junior
How does excessive console.log use affect a React Native app's performance in production?
console.log operations are synchronous, pass through the Bridge, and serialize large objects into strings, causing noticeable freezes and dropped frames if left in production code.
Read the full explanation - Senior
What is Shopify's FlashList architecture, and what does it improve over FlatList?
FlashList recycles existing native view cells and replaces only their contents (cell recycling) instead of destroying and creating new components while scrolling.
Read the full explanation - Mid-level
How do you use the React Profiler to identify causes of component rerenders on mobile screens?
Wrap screens with <Profiler> to record actualDuration and baseDuration metrics, or use the Profiler tab in React Native DevTools to record and analyze rerenders.
Read the full explanation - Mid-level
How do you prevent UI freezes during heavy calculations with InteractionManager?
Defer heavy tasks (such as complex data processing or storage) until current animations and touch interactions finish, using InteractionManager.runAfterInteractions.
Read the full explanation