Interview questions (prompt-only)
This file contains interview questions only (no answers). Answers live in content/interviews/answers.mdx.
General / mindset
- What’s the difference between unit, integration, and E2E tests? When would you use each?
- How do you decide what runs on the server vs the client in a Next.js app?
TypeScript
- Explain
unknownvsany. When should you useunknown? - What is type narrowing? Give an example.
Next.js (App Router)
- What’s the difference between Server Components and Client Components?
- How do
loading.tsxanderror.tsxwork in App Router?
tRPC
- What problem does tRPC solve compared to REST?
- Where should authentication/authorization checks live in a tRPC app?
Tailwind
- How do you keep Tailwind-based UIs maintainable as the app grows?
Vitest
- What makes a test brittle? How do you avoid it?
Playwright
- What makes E2E tests flaky? How do you reduce flakiness in CI?
Debouncing (React / Zod / data fetching)
- What is debouncing? What problems does it solve in UI development?
- Zod forms: when would you validate
onChangevsonBlurvsonSubmit? Where does debouncing fit? - tRPC: how do you debounce an “availability check” query and ensure stale responses can’t win?
useEffect+fetch: how do you debounce a search request and cancel/ignore stale requests?
Last updated on