Interview Experience
Anonymous
Company: Reliance Intelligence
- Company: Reliance Intelligence
- Location: Bangalore
- Experience: 5
- Interview Date: 2026-07-09
Round 1 : LLD/Machine Coding
- # React Native (Frontend Mobile) Interview Experience Recently appeared for a **React Native (Frontend Mobile)** interview. The discussion was practical and focused more on React Native internals, performance optimization, and designing scalable UIs rather than trivia. ## Round 1 - React Native Fundamentals & Internals The interview started with React Native fundamentals and gradually moved into internals. Topics discussed: * Difference between **ScrollView** and **FlatList** * When should you use ScrollView? * For a small number of items, would you still prefer FlatList? * Memory leaks in React Native * Common sources of memory leaks * Event listeners * Timers (`setTimeout`, `setInterval`) * Async operations after component unmount * Closures holding large objects * How to identify memory leaks * React Native DevTools * Android Studio Memory Profiler * How would you render a long list **without using virtualization?** * Discussed possible approaches and trade-offs. * Optimizing the JavaScript bundle * Bundle analysis using bundle visualizer tools * Removing unused dependencies * Enabling Hermes and generating a release bundle Other React Native topics included: * React Native architecture basics * Different threads in React Native and their responsibilities * React Native application lifecycle * State management approaches * How React rendering and updates work * Zustand vs Redux and their trade-offs --- ## Coding / UI Round The coding task was more of a UI architecture and performance problem. ### Problem Statement Create a **Live Task Dashboard** capable of efficiently rendering **1,000 tasks**. Each task has the following structure: ```ts { id: number; timestamp: number; completed: boolean; // false initially title: string; } ``` ### Requirements 1. Create a mock API that generates **1,000 tasks** using `Math.random()`. 2. Allow users to manually mark a task as completed. 3. Provide filters: * All * Completed * Pending 4. Run a background timer that periodically marks random tasks as completed. 5. The UI should remain smooth while rendering and updating 1,000 items. ### What the interviewer was looking for Although the problem seems straightforward, the emphasis was on **performance** rather than simply making it work. Some optimization areas discussed were: * Efficient use of `FlatList` * Stable keys * Avoiding unnecessary re-renders * Memoizing list items (`React.memo`) * Proper use of `useCallback` and `useMemo` * Using `extraData` only when necessary * Efficient state updates * Handling background timer updates without re-rendering the entire list --- ## Overall The interview was heavily focused on **real-world React Native development**. Instead of asking framework-specific trivia, the interviewer explored practical aspects like performance optimization, memory management, rendering behavior, and scalable UI design. If you're preparing for a senior React Native role, I'd recommend being comfortable with: * FlatList optimizations * React rendering lifecycle * React Native threading model * Memory leak detection * Bundle optimization * State management (Redux/Zustand) * Performance profiling * Building high-performance list UIs Overall, it was a good interview that reflected challenges commonly encountered in production React Native applications.
Round 2 : LLD/Machine Coding
- Resume discussion about the project, then interview goes to the react native basics about the terms I used in explaining my project. 2nd part of the interview was about designing the RN Events SDK.
Please take a moment to share your interview experience. Every experience helps thousands of aspirants prepare better, and your contribution plays a vital role in helping our community grow. ❤️