Giter Club home page Giter Club logo

solutions-hiring-assignment's Introduction

Solutions Team Hiring Assignment

This is the hiring assignment for the Solutions Team at Algolia. It’s intended to mimic work you might do here, while giving us an understanding of your skills in:

  • Coding
  • User Experience
  • Communication

If you want to know how we will judge the assignment, you can view our scoring rubric.

Communication Project Instructions

  • View the example customer questions
  • Answer them using the Algolia documentation and provide us your answers as a .txt file when you email us the rest of your assignment. Please also include them in the same repository as the rest of the assignment.

Tech and UX Project Instructions

Our sales team has recently been contacted by a large restaurant reservation website, for whom they have identified it to be strategic to build a demo. As a Solutions Engineer, you’re asked to build a small prototype that—using the dataset and UI have provided us—highlights the benefits of a great search experience.

Important: Do not fork this repository to create your assignment. Doing so will wake a bot that prints out your code, immediately sends it to the shredder, and archives your application in our applicant tracking system. And anyway we’d rather give everyone an equal shot to show us what they can do.

  • Download the project files
  • Push the provided dataset to an Algolia index
  • Produce the HTML markup and CSS needed to reproduce the UI provided by the client. To do so, you can write vanilla CSS or with a processor of your choice.
  • Using the Algolia JS Helper and without using instantsearch.js, implement an as-you-type search experience that enables users to easily find restaurants: both by passing a search query and/or filtering on the “type of cuisine”
  • Leverage the user’s location to show restaurants closer to them higher in the results—with a fallback if they dont’t allow for geolocation permissions in the browser

Screenshot

Screenshot of a target UI

Important Notes

  • Graphical resources, including the Sketch mock-up, are provided in the ./resources folder
  • The mock-up is meant to serve as guidance -- if you have a UI/UX that you believe improves upon the mock-up feel free to implement it, and be ready to explain your choice to do so
  • The dataset given by the client is available in the ./resources/dataset folder. They have been able to extract 5000 restaurants from their database: restaurants_list.json. Unfortunately, because of some system complexity on their side, they haven’t been able to provide everything in one file only. They have sent us another file named restaurants_info.csv that contains additional information for all the extracted restaurants.
    • You’ll need to manipulate both data files in order to have access to the “type of cuisine.”
    • Please include your data manipulation and import script in your Git repository
  • Feel free to use any front-end tooling with which you’re most comfortable
  • The blue highlight in the sidebar is an active/hover state
  • For payment options, we should only have: AMEX/American Express, Visa, Discover, and MasterCard
    • For our purpose, Diners Club and Carte Blanche are Discover cards
  • When you sign up for an Algolia account, please put Interview Candidate in the company field
    • This helps our sales team know someone's already speaking with you

Deliverable

Once you're happy with what you've done

  • Publish it using GitHub's gh-pages so we can interact with it
  • Send us a link to your finished project via email
  • Assignments that do not follow at least the instructions above are not likely to be reviewed highly—so wow us!

Happy coding!

Note: The provided dataset has been created using the https://github.com/sosedoff/opentable project.

solutions-hiring-assignment's People

Contributors

dustincoates avatar ehayman avatar seafoox 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.