OA Coinbase frontend

Title:
Coinbase - Frontend Engineer - Online Assessment

Description:
Level: L2 (Frontend Engineer)
Education: Not specified
Years of Experience (YOE): Not specified

Questions Asked:

Frontend / React Component Implementation

Part 1: Display and Sort Existing Books

  • Asked to create a React component that displays a list of existing books.
  • Each book contained the following fields:
    • Title
    • Author
    • Publication Year
  • Implement functionality to sort the list of books.
  • Sorting logic involved organizing books by one or more of the following:
    • Title (alphabetically)
    • Author (alphabetically)
    • Publication Year (chronologically)
  • Expected to manage component state correctly and ensure the UI updated dynamically when sorting criteria changed.

Part 2: Add New Book Functionality

  • Required creating a way for users to add new books to the list.
  • Implemented input fields or a form to capture:
    • Title
    • Author
    • Publication Year
  • After submission, the new book needed to be added to the existing list and rendered immediately.
  • Focus areas included:
    • React state management
    • Event handling and form submission
    • Updating lists immutably
    • Basic input validation
    • Clean component structure and usability