Full Stack Developer Interview Questions
35 verified Full Stack Developer interview questions from Accenture, PayU, Airbnb, Meta, Shopify and more. Covers all experience levels.
Interview Signals for Full Stack Developer Roles
Top Questions by Upvotes
Your React app initial load time is 8 seconds. Users complain it is too slow. Walk me through your optimization strategy.
A React dashboard with 20 charts re-renders every time any filter changes, causing a 3-second lag. How do you optimize it?
A list of 50,000 items renders in a React component. Users scroll and experience jank. How do you fix it without pagination?
What is the difference between useMemo and useCallback? Give concrete examples of when each actually helps vs. when it hurts.
Predict the output of this code: console.log(1); setTimeout(() => console.log(2), 0); Promise.resolve().then(() => console.log(3)); console.log(4); Explain the event loop mechanism that determines this order.
What is React 19 use() hook and how does it change async data fetching compared to useEffect?
Implement Promise.allSettled from scratch without using the native method. Then explain the difference between Promise.all, Promise.allSettled, Promise.any, and Promise.race — give a concrete payment flow example for when you would use each.
Explain the reconciliation algorithm in React. How does React decide which DOM nodes to update when state changes? What is the role of the key prop and what happens when you use an array index as a key versus a stable unique ID?
What will the following code output and why? const obj = { x: 10 }; const fn = () => console.log(this.x); obj.fn = fn; obj.fn(); Now rewrite fn as a regular function. How does the output change and what is the reason?
Implement a debounce function from scratch in JavaScript. Then explain where you would use debounce vs throttle in a payment checkout flow — for example on a search input, a "Pay Now" button, and a scroll event handler.
A payment API call must retry up to 3 times on network failure, with exponential backoff (1s, 2s, 4s delays) between attempts. Implement a retryWithBackoff(fn, maxRetries) utility using Promises. Handle the case where all retries fail.
You are building a multi-step payment flow: Cart → Address → Payment Method → OTP → Confirmation. Each step has its own data, validation, and API calls. How would you architect state management for this flow in React without Redux? Discuss trade-offs.
Practice these questions with AI feedback
Get instant grading on your answers, identify your weak areas, and generate a personalised 14-day study plan — all free.
Build my study plan →