PracHub
QuestionsPremiumCoachesLearningGuidesInterview Prep
|Home/System Design/Meta

Implement paginated, sortable dynamic table component

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's competence in front-end component architecture, React hooks-based state modeling, dynamic column configuration, client-side sorting and pagination, performance considerations, extensibility, and accessibility.

  • medium
  • Meta
  • System Design
  • Software Engineer

Implement paginated, sortable dynamic table component

Company: Meta

Role: Software Engineer

Category: System Design

Difficulty: medium

Interview Round: Technical Screen

##### Question Design and implement a React table component with pagination and sorting. Requirements: clear component decomposition, reasonable state design, support dynamic columns. Follow-up: discuss extensibility and how to support a mobile-responsive layout.

Quick Answer: This question evaluates a candidate's competence in front-end component architecture, React hooks-based state modeling, dynamic column configuration, client-side sorting and pagination, performance considerations, extensibility, and accessibility.

Related Interview Questions

  • Design Top-K, Crawler, and Chess Systems - Meta (hard)
  • Design Search And Web Crawling Systems - Meta (medium)
  • Design an Instagram-Style Social Feed - Meta (medium)
  • Design an Online Game Leaderboard - Meta (hard)
  • Design an On-Demand Delivery Platform - Meta (medium)
Meta logo
Meta
Aug 4, 2025, 10:55 AM
Software Engineer
Technical Screen
System Design
1
0

React Table Component: Pagination, Sorting, Dynamic Columns

Context

You are building a reusable React table component for a web application. The component must handle typical data-grid needs while remaining simple, performant, and extensible.

Requirements

  1. Design a clear component decomposition (how you split the UI and logic into components/hooks).
  2. Propose a reasonable state model (what state lives where: local vs. controlled via props).
  3. Support dynamic columns (columns are provided via configuration, not hard-coded).
  4. Implement client-side sorting and pagination.
  5. Provide a minimal usage example showing how a consumer passes data and column definitions.

Follow-up

  • Discuss extensibility: filtering, server-side mode, row selection, virtualization, theming, etc.
  • Explain how to make the table mobile-responsive.

Constraints

  • Use React (hooks are preferred). You may use TypeScript or JavaScript.
  • Avoid external table libraries; small utility packages are fine but not required.
  • Accessibility should be considered (keyboard and screen-reader friendly).

Solution

Show

Submit Your Answer to Earn 20XP

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More Meta•More Software Engineer•Meta Software Engineer•Meta System Design•Software Engineer System Design
PracHub

Master your tech interviews with 8,000+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.