Giter VIP home page Giter VIP logo

justeat.apirecruitmenttest's Introduction

JUST EAT Developer Recruitment Test by Cheviana

Original task and explanaitions

Thank you for taking the time to do our technical test. It consists of two parts:

  • A coding test
  • A few technical questions

Coding Test

JUST EAT has a public API available at http://api-interview.just-eat.com/ that you can use to get restaurant information, including which restaurants deliver to what areas.

As an example, http://api-interview.just-eat.com/restaurants?q=se19 returns a list of restaurants that deliver to an outcode, including some basic restaurant information (for outcode = se19).

The API requires you specify a set of valid request headers before it'll respond.

	Accept-Tenant: uk
	Accept-Language: en-GB
	Accept-Charset: utf-8
	Authorization: Basic VGVjaFRlc3RBUEk6dXNlcjI=
	Host: api-interview.just-eat.com

The task is to create a command line application using C# and Visual Studio 2012 that accepts a postcode as a parameter. The application should then display the following information about each restaurant that delivers to that postcode.

  • Name
  • Rating
  • Types of food for the restaurant

The restaurants should be ordered from highest rating to lowest rating.

  • We use NUnit and Moq in a lot of our software, references have been added using NuGet Packages. Everything is in place for you to just write the code (no "File > New Project" required).
  • We've enabled [NuGet] package restore, so don't worry about sending us compiled binaries.

Task requirements

  • All stories to be completed with an appropriate level of testing.
  • Feel free to use whatever testing, mocking or stubbing frameworks you prefer, along with any other packages you like.
  • Your code should be of production quality.
  • Clone our git repository locally and work on your solution
  • In order to avoid bounced emails we would like you to submit your results by uploading the relevant zip file to a shared Google Drive folder. Please send an email to [email protected] with your valid Google email address so we can give you the correct upload permissions.

User stories

Story 1 - Accepting command line input

As a user running the command line application
I can supply a valid outcode on the command line
So that I can query the JUST EAT API for results

Acceptance criteria

  • Command line parameter accepted

Story 2 - Querying the API

As an API consumer
I want to query the restaurant API
So that I can output core restaurant details

Acceptance criteria

  • Must provide valid headers
  • For known outcode se19, some results are returned

Story 3 - Outputting results

As a user running the command line application
When I search for a valid outcode
I want restaurant details printed into console window

Acceptance criteria

  • Name, rating and types of food for the restaurant printed into console window

Story 4 - Sorting results

As a user running the command line application
When I output core restaurant details
I want to see restaurants ordered correctly

Acceptance criteria

  • Restaurants ordered and outputted on screen
  • Restaurants ordered highest to lowest

Technical questions

Please answer the following questions in a markdown file called Answers to technical questions.md.

  • Did you have time to complete the coding test? What would you add to your solution if you had more time?
  • What was the most useful feature in your opinion that was added to C# 4? Please include a snippet of code that shows how you've used it.
  • What's your favourite programming language? Why?
  • How would you track down a performance bottleneck in a .NET application? Have you ever had to do this?
  • How would you improve the Just Eat public API found here?: http://www.just-eat.co.uk/webservice/webservices.asmx
  • Please describe yourself using either XML or JSON.

Thanks for your time, we look forward to hearing from you!

justeat.apirecruitmenttest's People

Watchers

 avatar  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.