Git Product home page Git Product logo

final_exam_august2020_client_challenge's Introduction

The Rewrite Challenge

This is a simulation of a real-life task that you might (or might not) experience as a professional developer.

You have applied for a job at a education firm. They want to assess your skills before they present you with an offer. For that reason, they want you to participate in a stress test, where you will be writing code under supervision..

You have been presented with a task to rewrite a piece of software. It is a Course Catalog with filtering functionality. Today, the code is written in pure JavaScript. Your future employer wishes to have the exact same functionality and the exact same look and feel of the UI, but to have this catalog presented to them as a ReactJS application.

Also, they have recently started to make use of CypressIO, and would like you to add acceptance tests to your submission.

Furthermore, they would like you to report back if the new implementation is bigger or smaller than the original JavaScript version, and if there are any difference in load times.

This is a variant of a legacy challenge. You need to carefully examine the code, what each function do, and how it's being used. It is only when you truly understand the current implementation, that you'll be able to come up with a solution in React that will be your ticket in to the organization where you desire to work.

There is a folder called react-app where you have a basic scaffold of an React Application with CypressIO configured, where you should implement your solution.

For extra credit, you might want to consider implementing a feature that displays ALL the courses again. Once the user has started to use the filtering functionality, there is currently no other way for him/her to see all the courses again (accept for reloading the page of course).

Good Luck!

final_exam_august2020_client_challenge's People

Contributors

emtalen avatar grconnor avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.