PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCareers
|Home/Other / Miscellaneous/Squarepoint Capital

Implement and Improve React Components

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a developer's proficiency in React component design and state management, including hooks-based architecture, controlled vs uncontrolled APIs, accessibility (ARIA, keyboard and screen-reader behavior), persistence to localStorage, and unit testing.

  • hard
  • Squarepoint Capital
  • Other / Miscellaneous
  • Software Engineer

Implement and Improve React Components

Company: Squarepoint Capital

Role: Software Engineer

Category: Other / Miscellaneous

Difficulty: hard

Interview Round: Technical Screen

Implement two React tasks and discuss improvements: 1) Build a reusable rating component in React. - Display a configurable number of icons (default 5) with optional half-step selection. - Support mouse, touch, and keyboard interactions (Arrow keys, Enter/Space) and proper focus management. - Ensure accessibility with appropriate ARIA roles/labels and screen-reader announcements. - Expose controlled and uncontrolled modes (value, defaultValue, onChange) and support readOnly/disabled. - Allow custom icon rendering and RTL support. Include basic unit tests. 2) Build a Todo application in React. - Add, edit, delete, and toggle completion of tasks. - Filter by All/Active/Completed and provide "clear completed". - Persist state to localStorage and handle empty/error states. - Structure components and manage state with React hooks; explain trade-offs if using a state library. Include basic tests. Follow-ups: How would you improve the Todo component? Discuss performance (memoization, list virtualization, debounced updates), accessibility (labels, keyboard shortcuts, live announcements), UX features (inline editing, due dates, drag-and-drop), scalability (API sync with optimistic updates), and code quality (TypeScript/PropTypes, error boundaries, testing strategy).

Quick Answer: This question evaluates a developer's proficiency in React component design and state management, including hooks-based architecture, controlled vs uncontrolled APIs, accessibility (ARIA, keyboard and screen-reader behavior), persistence to localStorage, and unit testing.

Squarepoint Capital logo
Squarepoint Capital
Jul 16, 2025, 12:00 AM
Software Engineer
Technical Screen
Other / Miscellaneous
1
0

React Technical Screen: Build a Rating Component and a Todo App

Assumptions and Setup

  • Use React 18+ with functional components and hooks.
  • Use JavaScript or TypeScript (you may choose).
  • Testing with Jest + React Testing Library (or Vitest + RTL).
  • No CSS framework required; inline styles or simple CSS are fine.

Task 1 — Reusable Rating Component

Implement a reusable rating component with the following features:

  1. Display
  • Configurable number of icons (default 5).
  • Optional half-step selection (configurable step; default 1, allow 0.5).
  1. Interactions
  • Mouse, touch, and keyboard (Arrow keys, Home/End, Enter/Space).
  • Proper focus management.
  1. Accessibility
  • Appropriate ARIA roles/labels.
  • Screen-reader announcements of changes.
  1. API
  • Controlled and uncontrolled modes: value, defaultValue, onChange.
  • readOnly and disabled support.
  • Custom icon rendering.
  • RTL support.
  1. Tests
  • Include basic unit tests.

Task 2 — Todo Application

Implement a Todo application with:

  1. Core Features
  • Add, edit, delete, and toggle completion of tasks.
  • Filter by All / Active / Completed.
  • "Clear completed" action.
  1. Persistence and States
  • Persist state to localStorage.
  • Handle empty and error states.
  1. Architecture
  • Structure components and manage state with React hooks.
  • If you use a state library, explain trade-offs.
  1. Tests
  • Include basic tests.

Follow-Ups

Discuss how you would further improve the Todo app in terms of:

  • Performance: memoization, list virtualization, debounced updates.
  • Accessibility: labels, keyboard shortcuts, live announcements.
  • UX: inline editing, due dates, drag-and-drop.
  • Scalability: API sync with optimistic updates.
  • Code quality: TypeScript/PropTypes, error boundaries, testing strategy.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More Other / Miscellaneous•More Squarepoint Capital•More Software Engineer•Squarepoint Capital Software Engineer•Squarepoint Capital Other / Miscellaneous•Software Engineer Other / Miscellaneous
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • Careers
  • 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.