GithubHelp home page GithubHelp logo

cookpadtest's Introduction

Android Hiring Exercise

The Android Hiring Exercise is a small application that fetches and displays a list of curated recipe collections from our dedicated Mobile Hiring API.

Background

The project has already been started, but it's far from finished. You and your team have now inherited the project and it'll be your responsibility to maintain it and to add new functionality going forward.

To start with, your product owner would like you to work towards adding a new feature described in the Feature Specification section below.

Project Requirements

  • Android Studio Arctic Fox | 2020.3.1
  • Gradle version 7.0.2
  • MinSdk 21
  • TargetSdk 31

Feature Specification

The recipe collection card has a favorite button, but it's not yet functional. We'd like for the user to be able to favorite specific collections and view them in a dedicated interface. The core scenarios are defined below, but you are free to build the user experience as you see fit.

Scenarios

Collections List

Given the recipe collection card
When the user taps the favorite button
Then collection should be added to the favorite list
And the favorite button icon should indicate that the collection is a favorite
Given a recipe collection card for a favorite collection
When the user taps the favorite button
Then collection should be removed from the favorite list
And the favorite button icon should indicate that this collection is not a favorite

Favorites List

Given the user views their favorites
Then a list of favorite collections should be presented
Given the recipe collection card
When the user taps the favorite button in the favorite list
Then the recipe collection should be removed from the favorite list

Instructions

We would like you:

  • Spend approximately 4 hours on this task
    • Its not likely that you can finish the entire task in this time and that's fine. Please make do with what you have and remember that you are doing this exercise to demonstrate your thought process, your approach and awareness around trade-offs.
  • Make logical descriptive commits
  • Wrap up your commits into a Pull Request
  • Provide a write-up in the description touching on:
    • What you changed and why
    • What things gave you problems
    • Other thoughts, where you would like to take this given more time, etc

Once you have completed the task, please let the hiring manager know and our engineers will review your submission.

If you have any other questions, please don't hesitate to ask. Thank you for taking the time to complete this task!

cookpadtest's People

Contributors

dekola avatar cookpad-geraint avatar

Watchers

 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.