Katkat

practice a little every day, paws crossed ♡

Frontend Engineer Interview Questions

Practice 9403 coding, system design and machine learning questions from 546 companies, sorted by role, topic and interview round. Every question has step-by-step hints, a code runner that supports 8 languages and an AI mentor; members also get the full solution walkthrough.

9403
Questions
546
Companies
11
Topics
8
Languages

Showing 1–30 of 34 results

  • AirwallexMediumFrontend Engineer
    Design a Reusable React Autocomplete Input: API, Portals, Debounce and Caching

    Design a reusable autocomplete search input for a React application on top of an existing search API. The discussion covers the API contract with pagination and limits, the component and portal architecture, throttling versus debouncing, client-side result caching strategies, and the public props and exports.

    System DesignTechnical Screen
  • AirwallexMediumFrontend Engineer
    Name-Keyed Async Task Scheduler with Sequential Lanes, Cancel and Clear by Name

    Implement a JavaScript task scheduler for async functions where tasks sharing a name run strictly in order while tasks with different names run concurrently. Follow-ups add cancelling the running task for a name and clearing every running and queued task by name, testing promise handling, race conditions and API design.

    Software Engineering FundamentalsTechnical Screen
  • AmazonMediumFrontend Engineer
    Implement an Accessible Autocomplete Search Component

    Design and implement an accessible, race-condition-resilient autocomplete search component in React or modern JavaScript, focusing on debounced queries, ARIA combobox semantics, and keyboard navigation.

    Software Engineering FundamentalsTechnical ScreenReactAccessibilityFrontend
  • AmazonMediumFrontend Engineer
    Maximize the number of binary strings chosen under zero and one budgets

    Given a list of binary strings and separate limits on the total number of zeros and ones, find the largest number of strings that can be chosen together without exceeding either limit. Tests optimization under two simultaneous resource limits, moving from brute force to an efficient method, and complexity analysis.

    Coding & AlgorithmsTechnical Screen
  • AmazonMediumFrontend Engineer
    Navigate a Tight Deadline and an Ambiguous Engineering Project

    This question assesses a candidate's ability to maintain engineering standards and project momentum when facing high-pressure timelines and limited requirements.

    Behavioral & LeadershipTechnical ScreenBehavioralProject ManagementPrioritization
  • AppleMediumFrontend Engineer
    Build an Accessible Recursive Expand-and-Collapse Tree in React

    This problem tests recursive component design in React, state management for nested data structures, and the implementation of WAI-ARIA standards for accessible UI components.

    Software Engineering FundamentalsTechnical ScreenReactFrontendAccessibility
  • AppleMediumFrontend Engineer
    Diagnose Cold-Load and Massive-Table Performance in a Web App

    This problem tests your understanding of critical path rendering optimization for cold loads and memory management strategies for handling massive datasets in a browser environment.

    Software Engineering FundamentalsTechnical ScreenPerformanceDOMReact
  • AppleMediumFrontend Engineer
    Explain JavaScript Scope, Closures, Timers, and the Event Loop

    Tests deep understanding of the JavaScript runtime, specifically lexical scope, closures, the distinction between task and microtask queues in the event loop, and browser script loading mechanics.

    Software Engineering FundamentalsTechnical ScreenJavaScriptEvent LoopClosures
  • AtlassianHardFrontend Engineer
    Build a 2x3 React Feed Grid from Static Data, Then from an API, and Explain Your Hooks

    A front-end coding exercise: show feed items with an id, text and creation time in a two-row, three-column React grid, first from static data and then from a provided API. It tests CSS grid layout, data fetching with loading and error states, effect cleanup, and how clearly the candidate explains the React hooks they use.

    Software Engineering FundamentalsTechnical Screen
  • AtlassianMediumFrontend Engineer
    Build a Social Feed List in HTML/CSS, Then Render It from a Mock API

    A two-stage front-end coding exercise: build a Twitter-style social feed list with HTML and CSS, then render it from a mock API. It tests semantic markup, a resilient card layout, asynchronous loading with loading and error states, and safe rendering of user-generated text.

    Software Engineering FundamentalsTechnical Screen
  • AtlassianHardFrontend Engineer
    Design a Fast Product Search Page: Search Input over an Unbounded Catalog Grid

    A front-end system design question about a product search page with a search input above a grid of results drawn from a catalog of unbounded size. It probes the component tree, where search state should live, and how the candidate keeps typing responsive and results fast when the result set can never be loaded all at once.

    System DesignTechnical Screen
  • AtlassianMediumFrontend Engineer
    Front-End Design of an Emoji Picker with a Search Field

    A candidate-driven front-end system design discussion about an emoji picker with a search field. It tests how a candidate scopes the component, models and loads the emoji catalog, ranks search results, keeps a grid of thousands of emoji fast, and supports keyboard and screen-reader users.

    System DesignTechnical Screen
  • CensysMediumFrontend Engineer
    Add Case-Insensitive Search to a Support Ticket Queue UI and Debug Its Behavior

    A frontend exercise on an existing support ticket queue with Unresolved and Archived tabs, a ticket list and an activity panel: make the search box filter tickets by title or assignee regardless of letter case, then debug parts of the app that misbehave. It tests reading unfamiliar code, state design and systematic debugging.

    Software Engineering FundamentalsTechnical Screen
  • CitadelEasyFrontend Engineer
    Build a Real-Time Event Feed Dashboard

    Implement a robust React hook to manage a high-frequency, real-time event feed dashboard with pause/resume controls, out-of-order de-duplication, memory bounding, and rolling time-window statistics.

    Software Engineering FundamentalsTechnical Screenreacttypescriptsliding-window
  • HarveyMediumFrontend Engineer
    Build a Virtualized React Spreadsheet with Cell Formulas

    Design and implement a virtualized React spreadsheet component supporting editable cells, formula evaluation with string concatenation, cycle detection, and targeted re-rendering.

    Software Engineering FundamentalsTechnical ScreenReactVirtualizationGraph Algorithms
  • Jane StreetMediumFrontend Engineer
    Build a Web Calculator That Matches a Reference App

    This question evaluates frontend engineering competencies—interactive UI implementation, state management, event-driven logic, and visual layout fidelity—within the domain of software engineering fundamentals and web frontend development.

    Software Engineering FundamentalsTechnical Screen
  • Jane StreetMediumFrontend Engineer
    Field Layout: getOffset and insert

    This question evaluates a candidate's ability to model and maintain ordered field layouts by computing and updating byte offsets, testing competencies in dynamic sequence data structures, cumulative offset tracking, and efficient update/query operations.

    Coding & AlgorithmsTechnical Screen
  • MomentMediumFrontend Engineer
    Build a Race-Free Memory Card Game in React

    Work through the state and timing logic for a React memory-card game that remains correct under rapid clicks and restarts. The exercise examines stale closures, input locking, timeout cleanup, stable card identity, accessible interaction, and tests for race-prone transitions.

    Software Engineering FundamentalsTechnical Screen
  • OktaMediumFrontend Engineer
    Deduplicate an Array in Linear Time

    This question tests the ability to implement a deduplication algorithm that preserves the original relative order of elements while maintaining O(n) time and space complexity.

    Coding & AlgorithmsTechnical ScreenArraysHash TableTime Complexity
  • OktaMediumFrontend Engineer
    Design High-Throughput Messaging Infrastructure

    This problem tests your ability to design a scalable, reliable messaging system by balancing throughput, latency, and data persistence in a high-concurrency environment.

    System DesignTechnical ScreenScalabilityMessagingConcurrency
  • OktaMediumFrontend Engineer
    Review Code for Memory Risks

    This question tests your ability to identify memory-intensive patterns and performance bottlenecks in JavaScript array manipulation, specifically regarding garbage collection and object reference stability.

    Software Engineering FundamentalsTechnical ScreenJavaScriptComplexity AnalysisMemory Management
  • OpenAIMediumFrontend Engineer
    Build a Streaming Chat Input

    This question evaluates frontend engineering skills including streaming data handling, incremental token-by-token rendering, asynchronous state management, and preserving UI responsiveness during long-running API streams.

    Coding & AlgorithmsTechnical Screen
  • RobinhoodMediumFrontend Engineer
    Build a Chainable Rectangle Manipulation API

    This problem tests your ability to design a fluent interface (method chaining) that manages an internal queue of asynchronous operations to ensure tasks execute sequentially.

    Software Engineering FundamentalsTechnical ScreenJavaScriptFluent-APIAsync
  • RobloxHardFrontend Engineer
    Build a Configurable Two-Player Tic-Tac-Toe Board in React

    Tests your ability to architect a scalable, accessible React component with dynamic state, efficient win-detection logic for large grid sizes, and robust handling of prop updates.

    Software Engineering FundamentalsTechnical ScreenReactFrontendState Management
  • SnowflakeMediumFrontend Engineer
    Build an Arrow-Controlled Kanban Board in React

    Design and implement a performant React Kanban board in TypeScript with normalized state and accessible arrow controls for shifting tasks across ordered columns at scale.

    Software Engineering FundamentalsTechnical Screenreacttypescriptfrontend
  • SnowflakeMediumFrontend Engineer
    Explain React classes, lifecycle, and hooks

    This question assesses the evolution of React component patterns, specifically focusing on the transition from class-based lifecycles to functional hooks, and the management of stateful side effects.

    Software Engineering FundamentalsTechnical ScreenReactFrontendJavaScript
  • SnowflakeMediumFrontend Engineer
    Implement an event emitter

    This problem tests your understanding of the observer pattern, internal state management using maps, and the ability to handle edge cases in listener lifecycle management.

    Coding & AlgorithmsTechnical ScreenJavaScriptDesign PatternsEvent-Driven
  • TomaEasyFrontend Engineer
    Approximate Pi from Random Points

    This question evaluates a candidate's understanding of Monte Carlo estimation, basic Euclidean geometry, probability, and numerical reasoning when using random sampling to approximate mathematical constants.

    Coding & AlgorithmsTechnical Screen
  • TomaEasyFrontend Engineer
    Identify the CSS color function

    This question evaluates a candidate's understanding of CSS color functions, specifically knowledge of channel-based color specification and the use of an optional opacity component.

    Software Engineering FundamentalsTechnical Screen
  • TomaEasyFrontend Engineer
    Which CSS function supports opacity?

    This question tests your knowledge of modern CSS color syntax and the various ways to define transparency within style rules.

    Software Engineering FundamentalsTechnical ScreenCSSFrontendStyling