Next.js Medium technical 1 views 1 min read

What is React Server Components (RSC) in App Router?

Peer-reviewed by HireXTech Technical Panel Updated for 2025/2026 hiring Editorial standards
Practise this track
Interviewer Expectations for this Question
01
Core Competency

Assesses fundamental understanding of Next.js conventions, runtime behavior, and memory/performance considerations.

02
Evaluation Criteria

Hiring managers look for precision, avoidance of ambiguous jargon, and ability to explain trade-offs under real production conditions.

Comprehensive Model Answer Verified Solution

React Server Components (RSC) are a new React feature that allows components to be rendered on the server. In the App Router, components are Server Components by default.

Server Components (default):

// app/page.js - This is a Server Component
async function ServerComponent() {
  const data = await fetch("https://api.example.com/data");
  const result = await data.json();

  return (
    <div>
      <h1>Server Rendered Data</h1>
      <p>{result.message}</p>
    </div>
  );
}

Client Components (opt-in with "use client"):

// app/components/ClientComponent.js
"use client";

import { useState } from "react";

export default function ClientComponent() {
  const [count, setCount] = useState(0);

  return (
    <button onClick={() => setCount(count + 1)}>Count: {count}</button>
  );
}

Benefits of Server Components:

  • Direct access to server-side resources (databases, file system)
  • No JavaScript bundle sent to client
  • Improved performance and SEO
  • Automatic code splitting

When to use Client Components:

  • Interactive features (event handlers, state)
  • Browser-only APIs (localStorage, geolocation)
  • React hooks (useState, useEffect)

Candidate Response Strategy & Interview Tips

  1. Start with a concise one-sentence summary: Deliver a direct, confident answer first before expanding into nuances.
  2. Demonstrate real-world trade-offs: Discuss where this approach excels and when you would avoid it in production systems.
  3. Discuss complexity & edge cases: Proactively explain time/space complexity or boundary conditions (null values, scale limits).
  4. Prepare for interviewer follow-ups: Technical hiring panels frequently probe deeper into concurrency, backward compatibility, or alternative libraries.
Spotted an error or have an alternative solution?