Thank you for taking the time to do our technical test. It consists of two parts:
- A coding test
- A few technical questions
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.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.
- 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.
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
- Command line parameter accepted
As an API consumer
I want to query the restaurant API
So that I can output core restaurant details
- Must provide valid headers
- For known outcode se19, some results are returned
As a user running the command line application
When I search for a valid outcode
I want restaurant details printed into console window
- Name, rating and types of food for the restaurant printed into console window
As a user running the command line application
When I output core restaurant details
I want to see restaurants ordered correctly
- Restaurants ordered and outputted on screen
- Restaurants ordered highest to lowest
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!