Redux is often reached for reflexively and used badly. These questions check whether a candidate understands its model — and when not to use it.
Hiring a Redux developer is easy. Telling a real one from a convincing résumé is the hard part — and it’s most of what we do. These are grouped by level, because the same question that stretches a junior is a warm-up for a senior.
Junior Redux interview questions
0–2 years
Core concepts.
What problem does Redux solve?
A predictable, centralised store for shared application state, making state changes explicit and traceable.
Reaches for Redux for state that should be local.
What are the three core principles?
A single source of truth, state is read-only and changed only by actions, and changes are made by pure reducers.
Cannot name the principles.
What is an action?
A plain object describing what happened, with a type and optional payload, dispatched to change state.
Puts logic or side effects in the action object.
What is a reducer?
A pure function taking the current state and an action and returning new state, without mutating or side effects.
Mutates state or does async work in a reducer.
What is the store?
The object holding application state, allowing dispatch of actions and subscription to changes.
Creates multiple stores unnecessarily.
Why must reducers be pure and state immutable?
So state changes are predictable, time-travel-debuggable and React can detect changes by reference.
Mutates state directly and the UI doesn’t update.
What is dispatch?
The method that sends an action to the store to trigger a state update.
Modifies the store directly instead of dispatching.
How does React connect to Redux?
Components read state with selectors (useSelector) and dispatch actions (useDispatch), re-rendering on relevant changes.
Reads the whole store into every component.
Mid-level Redux interview questions
2–5 years
Middleware and patterns.
How do you handle async logic in Redux?
Middleware like Redux Thunk or Saga; reducers stay pure while the middleware performs side effects and dispatches results.
Does fetches inside reducers.
What is middleware and how does it work?
A pipeline intercepting dispatched actions for logging, async and more before they reach reducers.
Cannot explain where async fits.
What are selectors and why memoise them?
Functions deriving data from state; memoisation (reselect) avoids recomputing and unnecessary re-renders.
Recomputes derived data on every render.
What is Redux Toolkit and why use it?
The official, opinionated toolset reducing boilerplate with createSlice, Immer-based updates and good defaults.
Writes verbose hand-rolled Redux in new code.
How does Immer let you “mutate” state safely?
It produces an immutable next state from mutating-looking code, so reducers stay pure without spread boilerplate.
Thinks Redux Toolkit actually mutates state.
How do you normalise state shape?
Store entities by id in a flat structure to avoid duplication and deep nesting, easing updates.
Deeply nests and duplicates data, causing update bugs.
What is the difference between local and global state?
Not everything belongs in Redux; UI/local state stays in components, and server state often belongs in a data-fetching library.
Puts every piece of state in the global store.
How do you avoid unnecessary re-renders with Redux?
Precise selectors, memoisation, and selecting minimal slices so components only re-render on relevant changes.
Selects the whole state and re-renders everything.
Senior Redux interview questions
5+ years
Architecture and tradeoffs.
When should you NOT use Redux?
For simple or local state, or purely server state — modern React (context, hooks) and query libraries often make Redux unnecessary.
Adds Redux to every project by default.
How do you manage server state vs client state?
Keep server data in a caching data layer (RTK Query/React Query) and reserve Redux for genuine shared client state.
Hand-manages server data in Redux with manual caching.
How do you structure Redux in a large app?
Feature-based slices, normalised state, colocated logic, and clear boundaries rather than one giant reducer.
A single massive reducer and scattered action types.
What are the tradeoffs of Redux vs Context?
Context is simple for low-frequency shared values but re-renders consumers broadly; Redux adds structure and tooling at some boilerplate cost.
Uses Context for high-frequency updates and causes render storms.
How does time-travel debugging work and why is it possible?
Because state transitions are pure and serialisable, tooling can replay actions and inspect each state.
Doesn’t connect purity to debuggability.
How do you test Redux logic?
Reducers are pure and trivially unit-tested; async logic is tested by asserting dispatched actions/effects.
Only tests through the UI.
How do you handle performance in a large Redux store?
Normalisation, memoised selectors, batched updates, and avoiding storing derived or transient data.
Stores everything, including derived data, and re-renders widely.
How has state management in React evolved around Redux?
Hooks, context, RTK, and query libraries have narrowed Redux’s role to complex shared client state; they can articulate the shift.
Treats Redux as mandatory for all React apps.
Build and score a full interview with our free interview scorecard tool, browse the full question hub, or see how we interview engineers.