Coder Social home page Coder Social logo

anthonyx / coding-challenge Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kziechmann/coding-challenge

0.0 1.0 1.0 634 KB

Thanks for your interest in joining the Wonderschool team!

Home Page: https://www.wonderschool.com

HTML 14.96% JavaScript 71.05% CSS 13.99%

coding-challenge's Introduction

Wonderschool Coding Challenge

Introduction

Thanks for your interest in joining the Wonderschool engineering team! Before we proceed with more formal interviews, we ask that all candidates submit a coding challenge. The coding challenge is a foundational piece of our process and it's referenced later in our process during the technical interviews.

For an experienced web developer, the coding challenge should not take longer than 2-3 hours to complete.

If at any point you have questions concerning the coding challenge and/or interview process, please do not hesitate to email [email protected].

Coding Challenge

The coding challenge revolves around building a task list. Tasks belong to groups and can have dependencies on one another (i.e. if task X depends on task Y, task X cannot be completed until task Y is completed). The challenge includes 2 components:

  • Build React-based UI
  • Design database schema

Build React-based UI

The UI consists of 2 screens:

  • Overview: Displays a list of all the groups along with their completion status. Clicking on a group should render the detail screen.

  • Detail: Displays a list of all the tasks in the selected group and allows the user to toggle the completion status of unlocked tasks.

The screens should look like this:

screen design

The data you should use to populate your implementation is available at public/data.json and can be loaded from http://localhost:3000/data.json. SVG assets for the icons used in the design also live in public/ and can be loaded similarly.

Some things to keep in mind:

  • Locked tasks cannot have their completion status toggled
  • Tasks remain locked until all of their dependencies have been completed
  • Your implementation should resemble the above design
  • Please don't introduce any new dependencies, you should have everything you need to complete the challenge
  • We value well structured code that follows best practices

Design Database Schema

Design a schema in SQL to store the task list data. You can add the SQL code needed to create the schema to schema.sql. The schema should define all tables, columns, and constraints needed to store the task list data.

Getting Started

To get started, clone this repo to your local machine. Next you'll want to install the dependencies and fire up the app:

npm install
npm start

At this point, the app should be running in development mode and any local modifications you make will be automatically detected and result in the app to reload.

You should only need to add/modify code in the src/ directory.

Submission

To submit your coding challenge, commit all your changes to the master branch and run the following command:

git bundle create coding-challenge.bundle HEAD master

Email the the generated coding-challenge.bundle file to [email protected]. We do our best to review and respond to submissions within 1-2 business days.

Thanks for taking the time to do this coding challenge and here's hoping we talk soon!

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.