Git Product home page Git Product logo

remotecodechallenge's Introduction

WDS Remote Code Challenge

This is an exercise, but there is not one right answer. Please do not distribute without permission. This is a deliberately simple project with a few small tasks to complete.

  • Should take approximately one to two hours
  • Do what seems right to you to complete the work
  • Complete as many stories as you can
  • Choose an appropriate technology to implement this in
  • Should provide a method of proving the effectiveness of the program
  • Please manually clone this repository and send us the link to your implementation when finished
  • An example "devices.json" file is provided

Story 1

As a DeviceTester

I want to load in a list of devices from a file

So that I can deliver them on request

Acceptance Criteria:

  • Load in a list of devices from a file in json format
  • Example file provided - "devices.json"
  • Return all devices loaded in on demand

Story 2

As a DeviceTester

I want to retrieve devices based on full name (BRAND and MODEL)

So that I can return devices more selectively

Acceptance Criteria:

  • Devices are loaded from a file (i.e. Story 1)
  • Return a device or devices that match a full name (BRAND and MODEL separated by a space)

Story 3

As a Device Tester

I want to ensure that my device file is valid

So that I do not see any invalid devices

Acceptance Criteria:

  • Validate device based on the following criteria
    • full name (BRAND and MODEL separated by a space) should be unique
    • brand must be filled in - max length 50 characters
    • model must be filled in - max length 50 characters
    • form factor must be one of the following "CANDYBAR", "SMARTPHONE", "PHABLET", "CLAMSHELL"
    • attributes are optional
    • if any attributes are given, they must have a name and a value
    • attribute name max length 20 characters
    • attribute value max length 100 characters
  • Only load valid devices from the JSON file
  • Log invalid devices

Story 4

As a DeviceTester

I want to retrieve devices based on their brand or model name

So that I can return devices more selectively

Acceptance Criteria:

  • Return a device or devices that match a brand name
  • Return a device or devices that match a model name

Question: What would you do to improve things if you had more time?

If you have any questions then you can email [email protected] for help.


(c) WDS, A Xerox Company 2016. Please do not distribute without permission.

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.