InterviewsVector
FrontendMedium

React Compiler 1.0 makes manual memoization mostly obsolete

The stable React Compiler auto-memoizes components and hooks at build time — retiring most useMemo, useCallback and React.memo — and works back to React 17.

What happened

On 7 October 2025 the React team shipped React Compiler 1.0, a build-time tool that applies automatic memoization so developers no longer hand-write useMemo, useCallback or React.memo. It is compatible with React 17 and up, ships lint rules via eslint-plugin-react-hooks, and the team reports up to ~12% faster loads and some interactions more than 2.5× faster with neutral memory.

Why it matters

Manual memoization is where a lot of React performance bugs and review boilerplate live. Moving it to the compiler removes a class of mistakes and lets teams stop litigating useMemo in code review — provided their components follow the Rules of React.

Staff engineer take

The catch is correctness-by-convention: the compiler assumes your code follows the Rules of React, so the real prerequisite is enabling the lint rules and fixing violations first. Adopt it incrementally, verify behavior, then delete the manual memoization.

Interview connection

What does React's automatic memoization actually optimize, and why does it depend on components following the Rules of React?

Probes understanding of rendering, purity and memoization.