DEV Community

Cover image for React Native Interview Handbook — Part 9 of 10: Current React Native Interview Questions
Amit Kumar
Amit Kumar

Posted on

React Native Interview Handbook — Part 9 of 10: Current React Native Interview Questions

This is Part 9 of 10, a curated set of 120 high-frequency, current-style React Native interview questions with concise answers.

Important note

These are curated preparation questions, not claims that every question was recently asked by a specific company. Adapt answers to the React Native version, libraries, and production context of the role.

Complete series

This Dev.to series has five core handbook articles plus five focused practice extras. Open the series page to move through the complete reading order:

  1. Part 1: JavaScript — core handbook, questions 1–120
  2. Part 2: React — core handbook, questions 121–220
  3. Part 3: React Native — core handbook, questions 221–420
  4. Part 4: Performance & Architecture — core handbook, questions 421–560
  5. Part 5: Senior & System Design — core handbook, questions 561–719
  6. Part 6: Output-Based JavaScript Practice — bonus practice article
  7. Part 7: Coding Interview Practice — bonus practice article
  8. Part 8: Code Output Challenges — bonus practice article
  9. Part 9: Current React Native Interview Questions — new high-frequency practice article
  10. Part 10: Project & Production Interviews — senior project ownership and real-production practice

How to use this guide

Answer aloud before opening the response. For senior questions, state assumptions, trade-offs, failure modes, metrics, rollout strategy, and how you would verify the result.

New Architecture and native modules

🔴 Senior

1. What is Fabric?

Answer
Answer: React Native’s renderer for creating and committing native views.

2. What are TurboModules?

Answer
Answer: Typed, lazily loaded native modules generated from a spec.

3. What is JSI?

Answer
Answer: A C++ interface between a JavaScript runtime and native bindings.

4. Why use Codegen?

Answer
Answer: It keeps JavaScript and native contracts typed and synchronized.

5. When keep native work async?

Answer
Answer: For disk, network, database, and CPU-heavy work that could block a runtime.

6. How migrate a legacy module?

Answer
Answer: Create a spec, implement both platforms, test errors, and stage rollout.

7. How check library support?

Answer
Answer: Review maintenance, native setup, build compatibility, and both release builds.

8. Why is synchronous I/O risky?

Answer
Answer: It can block JavaScript and introduce thread or lifecycle hazards.

9. How measure a migration?

Answer
Answer: Compare crashes, startup, memory, frames, and critical business journeys.

10. Does New Architecture fix all performance issues?

Answer
Answer: No; slow renders, images, and blocking work still need profiling.

React rendering and Hooks

🔴 Senior

11. Why does a component re-render?

Answer
Answer: State, props, context, a parent, or a subscribed store changed.

12. When use useMemo?

Answer
Answer: Only when measurement shows caching outweighs its overhead.

13. useCallback versus useMemo?

Answer
Answer: One stabilizes a function reference; the other stabilizes a value.

14. What is a stale closure?

Answer
Answer: A callback using values captured from an older render.

15. How prevent effect races?

Answer
Answer: Abort obsolete work and ignore responses that no longer match current state.

16. When use a ref?

Answer
Answer: For mutable values that should not trigger rendering.

17. How design a data hook?

Answer
Answer: Expose typed data, loading, error, refresh, cancellation, and ownership.

18. Why do inline objects matter?

Answer
Answer: They create new references and can defeat shallow memoization.

19. How scale context?

Answer
Answer: Split stable contexts and keep fast-changing state close to consumers.

20. What does Strict Mode reveal?

Answer
Answer: Impure renders, missing cleanup, and unsafe effects in development.

Performance and lists

🔴 Senior

21. How debug a slow FlatList?

Answer
Answer: Measure JS, UI, images, memory, and network in a release build.

22. When use getItemLayout?

Answer
Answer: Only when dimensions and separators are reliably known.

23. Why avoid index keys?

Answer
Answer: Reordering can attach state to the wrong row.

24. Why are images memory-heavy?

Answer
Answer: Decoded bitmaps are much larger than compressed files.

25. What is list window tuning?

Answer
Answer: Balancing memory, blank cells, and rendering work.

26. How reduce JS blocking?

Answer
Answer: Reduce input, chunk work, defer tasks, or move suitable work native.

27. What startup metric matters?

Answer
Answer: Time to first useful content plus crash, memory, and latency signals.

28. When use React.memo?

Answer
Answer: For measured expensive children with stable props.

29. How find dropped frames?

Answer
Answer: Use JS/UI frame evidence and native traces to isolate the bottleneck.

30. How keep animations smooth?

Answer
Answer: Use UI or native paths when appropriate and fix blocked JS work.

Navigation and UX

🔴 Senior

31. How secure a deep link?

Answer
Answer: Validate URL, parameters, authentication, and authorization.

32. Cold versus warm links?

Answer
Answer: Cold links are read at launch; warm links arrive as runtime events.

33. How avoid duplicate navigation?

Answer
Answer: Centralize intents and make notification or link handling idempotent.

34. When use route modals?

Answer
Answer: When the modal should be deep-linkable and back-stack aware.

35. How preserve tab state?

Answer
Answer: Keep state at the correct owner and manage focus deliberately.

36. What makes a screen accessible?

Answer
Answer: Labels, roles, focus order, touch targets, contrast, and testing.

37. How handle keyboard overlap?

Answer
Answer: Use inset-aware layout and scroll the focused field into view.

38. How handle app lifecycle?

Answer
Answer: Pause or resume subscriptions, timers, sensitive screens, and refresh work.

39. How test navigation?

Answer
Answer: Cover cold, warm, auth, back, malformed-link, and accessibility paths.

40. How protect a route?

Answer
Answer: Wait for auth hydration and redirect while retaining the intended destination.

Networking and server state

🔴 Senior

41. Client versus server state?

Answer
Answer: Server state needs freshness, caching, retries, and invalidation.

42. How avoid duplicate requests?

Answer
Answer: Centralize ownership, deduplicate by key, cancel stale work, and cache.

43. What belongs in a request layer?

Answer
Answer: Auth, errors, timeout, cancellation, retries, telemetry, and idempotency.

44. How refresh tokens safely?

Answer
Answer: Use one refresh owner, replay eligible requests, then clear on failure.

45. When retry a request?

Answer
Answer: Retry bounded, idempotent transient failures with backoff and jitter.

46. How design pagination?

Answer
Answer: Use cursors, stable IDs, deduplication, and separate refresh from append.

47. What is request cancellation for?

Answer
Answer: It prevents obsolete work and stale responses from updating UI.

48. How model API errors?

Answer
Answer: Use typed recoverable categories instead of raw transport messages.

49. How cache safely?

Answer
Answer: Define keys, freshness, invalidation, persistence, and privacy limits.

50. How expose loading?

Answer
Answer: Distinguish initial loading, refresh, pagination, empty, and error states.

Offline storage and sync

🔴 Senior

51. What is an offline outbox?

Answer
Answer: Durable replay-safe mutations with IDs, retries, and conflict metadata.

52. How resolve conflicts?

Answer
Answer: Use explicit domain rules, versions, merges, server authority, or user choice.

53. MMKV versus SQLite?

Answer
Answer: MMKV suits small key-value data; SQLite suits relational transactions.

54. Why use transactions?

Answer
Answer: They keep related local changes atomic and consistent.

55. How show sync status?

Answer
Answer: Expose fresh, syncing, failed, and offline states with recovery actions.

56. How make mutations idempotent?

Answer
Answer: Attach a stable client operation or idempotency key.

57. What is a tombstone?

Answer
Answer: A persisted deletion marker needed to synchronize removed records.

58. How migrate local schemas?

Answer
Answer: Version deterministic migrations and test supported upgrade paths.

59. When encrypt local data?

Answer
Answer: When threat model requires it; keep keys in platform secure storage.

60. How recover after restart?

Answer
Answer: Rehydrate durable state and reconcile it with server cursors or versions.

Security and authentication

🔴 Senior

61. Where store refresh tokens?

Answer
Answer: In Keychain or Keystore-backed secure storage.

62. Should access tokens persist?

Answer
Answer: Prefer memory for short-lived tokens when practical.

63. What is biometric authentication?

Answer
Answer: Local user verification, not a replacement for server authorization.

64. How prevent log leaks?

Answer
Answer: Redact secrets, personal data, payment data, and auth headers.

65. How secure a WebView?

Answer
Answer: Allow-list origins, validate messages, and avoid exposing credentials.

66. What is pinning tradeoff?

Answer
Answer: It can add protection but makes rotation and failures operationally harder.

67. How treat rooted devices?

Answer
Answer: As risk signals, not complete proof of compromise.

68. How minimize local exposure?

Answer
Answer: Store less, clear on logout, and define backup and retention behavior.

69. How review a dependency?

Answer
Answer: Check maintenance, vulnerabilities, permissions, native code, and data use.

70. How secure a payment flow?

Answer
Answer: Use approved SDKs, backend truth, idempotency, and redacted telemetry.

Android platform

🔴 Senior

71. What causes an ANR?

Answer
Answer: The Android main thread fails to respond in time.

72. How handle Android permissions?

Answer
Answer: Declare required permissions and request runtime consent with rationale.

73. What are ABI splits?

Answer
Answer: Separate native binary packaging for CPU architectures.

74. How debug Android-only crashes?

Answer
Answer: Use release symbols, logcat, traces, and a minimal reproduction.

75. What is ProGuard or R8 risk?

Answer
Answer: Shrinking can remove classes or reflection targets needed at runtime.

76. How handle Android back?

Answer
Answer: Define predictable navigation, modal, and unsaved-change behavior.

77. What is an app link?

Answer
Answer: A verified HTTPS URL association that opens the Android app.

78. How handle notification channels?

Answer
Answer: Create stable channels with appropriate importance before posting notifications.

79. Why test low-end Android?

Answer
Answer: Memory, CPU, storage, and OEM behavior expose real constraints.

80. How avoid main-thread work?

Answer
Answer: Move I/O and long CPU work to background execution.

iOS platform

🔴 Senior

81. What is an entitlement?

Answer
Answer: A signed capability declaration for Apple platform services.

82. What is an Info.plist usage string?

Answer
Answer: User-facing permission text required for protected capabilities.

83. What does CocoaPods manage?

Answer
Answer: iOS native dependencies and related build configuration.

84. What is an associated domain?

Answer
Answer: An entitlement used for services such as universal links.

85. How handle iOS background work?

Answer
Answer: Use approved modes, persist progress, and expect OS limits.

86. What are dSYMs for?

Answer
Answer: They symbolicate iOS crash reports into readable stack traces.

87. How debug iOS memory?

Answer
Answer: Use Instruments allocations, leaks, and representative lifecycle paths.

88. What is Keychain sharing?

Answer
Answer: An entitlement-controlled way to share secure credentials across apps.

89. How test push on iOS?

Answer
Answer: Use real devices and correct APNs environment, entitlements, and payloads.

90. Why check release archives?

Answer
Answer: Signing, optimization, capabilities, and embedded frameworks differ from debug.

Build, release, and CI/CD

🔴 Senior

91. What should Fastlane automate?

Answer
Answer: Versioning, signing, builds, distribution, release notes, and gates.

92. How protect signing keys?

Answer
Answer: Use least-privilege CI secrets and never commit credentials.

93. What is OTA compatibility?

Answer
Answer: An update must target binaries with the required native capability.

94. How stage a release?

Answer
Answer: Roll out cohorts, watch impact metrics, and retain rollback.

95. Why test release builds?

Answer
Answer: Debug behavior differs in performance, shrinkers, permissions, and symbols.

96. How speed CI safely?

Answer
Answer: Use deterministic caches and affected builds while retaining full checks.

97. What is artifact provenance?

Answer
Answer: Commit, version, config, dependencies, tests, and signing metadata.

98. What is a build variant?

Answer
Answer: A build-time artifact configuration, distinct from runtime environment state.

99. How plan rollback?

Answer
Answer: Define flags, OTA versions, cohorts, and support communication ahead of time.

100. What store risks matter?

Answer
Answer: Permissions, privacy, metadata, subscriptions, and policy-sensitive behavior.

Testing and observability

🔴 Senior

101. What belongs in unit tests?

Answer
Answer: Pure logic, parsing, reducers, utilities, and deterministic hooks.

102. What belongs in integration tests?

Answer
Answer: Screens, state, navigation boundaries, and error recovery.

103. What belongs in E2E tests?

Answer
Answer: Critical release-like journeys such as login, payment, and deep links.

104. How find memory leaks?

Answer
Answer: Capture evidence and locate retained listeners, timers, images, or closures.

105. What are breadcrumbs?

Answer
Answer: User-safe context such as navigation, actions, request IDs, and flags.

106. How group crashes correctly?

Answer
Answer: Upload source maps, Android mappings, and iOS dSYMs for each release.

107. What is a mobile SLI?

Answer
Answer: A user-impact metric such as crash-free sessions or startup percentile.

108. How debug production-only bugs?

Answer
Answer: Compare release config, flags, device state, timing, and symbols.

109. Why not rely on console logs?

Answer
Answer: They lack safe structure, correlation, and production visibility.

110. How prevent recurrence?

Answer
Answer: Add a focused test or monitor and verify the original release path.

System design and senior behavior

🔴 Senior

111. How design login?

Answer
Answer: Hydrate, refresh through one owner, store credentials safely, and observe failures.

112. How design notifications?

Answer
Answer: Use typed intents, validate access, and queue navigation readiness.

113. How design chat?

Answer
Answer: Use local persistence, IDs, sequences, realtime events, and an outbox.

114. How design payments?

Answer
Answer: Use backend truth, idempotency, reconciliation, and approved SDK boundaries.

115. How design observability?

Answer
Answer: Combine crashes, traces, breadcrumbs, releases, business metrics, and privacy.

116. How handle architecture disagreement?

Answer
Answer: Compare constraints, tradeoffs, reversibility, evidence, and record decisions.

117. How answer incident questions?

Answer
Answer: Explain detection, containment, cause, impact, communication, and prevention.

118. How mentor while delivering?

Answer
Answer: Use pairing, bounded ownership, reasoning reviews, and reusable tooling.

119. When rewrite?

Answer
Answer: Prefer incremental seams unless measured pain justifies a rewrite.

120. What makes a senior engineer?

Answer
Answer: Explicit tradeoffs, user focus, clear communication, and evidence-based decisions.

Continue practising

Use Parts 6–8 for output-based and coding practice, then revisit the core handbook for detailed answers and code examples.

Top comments (0)