zoeyzou / ninja.js-1

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

React Interview

This project contains a simple React application to display a paginated table of users which can be filtered.

The required features are working and have already been implemented, but the implementation can be improved in many different ways.

Given the existing solution, refactor and tidy the code to what you believe would be a best implementation. The goal is to end up with a more flexible solution to be able to accommodate further required features. Focus on best practices when it comes to react/state management/clean code.

During the interview, you will be asked to take us through your changes and maybe do some live coding on the spot.

If there are things you do not get to implement because of complexity or time shortage, mention them in your PR so we know you thought about it.

When you make a PR, write down changes you did with a small explanation why.

Run the code

To get started:

  • clone
  • yarn install
  • yarn start

To run the tests:

  • yarn run test

How to submit

  1. Fork this repo.

  2. Make a PR to your forked repo with your changes (make sure you make PR on your forked repo and not on this one - by default github will choose this repo as destination for PR)

  3. If you chose to do public repo, send us link to the PR in YOUR own forked repo. If you choose to make private repo, add anitsirc, optiguy, zoeyzou and ignaciomartinelias as collaborators and send us link to it. (We prefer public repo's so it can be send internally to other frontenders for review)

  4. If you're doing a commit only, instead of opening a PR, please add a markdown file with your thought process so it's easier to review and to present what has changed. If you're opening a PR against your own repo, you can add it as the description of the PR.

Best of lucks!

Tips

DON'T

  • Do not rewrite code to TypeScript. Purpose of this exercise is not to see if you can rewrite code to TypeScript.
  • Do not over complicate the solution - real seniority comes from making complex problems simple.

DO

We like:

  • clean code
  • easy to read code
  • easy to change code
  • reusable code
  • tested code

Above concepts are open for interpretation. We want to see what they mean to you. Try to show it to us.

About


Languages

Language:JavaScript 61.2%Language:HTML 37.1%Language:CSS 1.6%