Skip to content

Instantly share code, notes, and snippets.

@epool
Last active April 9, 2018 18:29
Show Gist options
  • Save epool/c01896157a035154e52ef2eceacef6d1 to your computer and use it in GitHub Desktop.
Save epool/c01896157a035154e52ef2eceacef6d1 to your computer and use it in GitHub Desktop.

PairAndroid

Pair programming for Android candidates

Environment Setup

For this you will need:

  1. Android Studio 3.+
  2. Android SDK for 7.0+ (API 24)
  3. A handset virtual machine with Nougat (API 24) installed. We recommend one based on the Nexus 6P.
  4. A tablet virtual machine with Nougat (API 24) installed. We recommend one base on the Pixel C.

Instructions

All tasks in the pair depend on the previous one, so you will have to finish the first one before going to the next one.

We are providing you with a shell project that may include some functionality, it's up to you to use it. Remember that you are under clock so make your choices wisely.

To complete the pair you can use anything available in the Android SDK (except for deprecated stuff) and support libraries. You can use public available libraries too.

The application must not crash and be responsive to input from the user anytime.

For this pair we look for strong candidates with knowledge on the Android platform, even if the exercises are not strong on computer science stuff, we will be looking at that kind of abilities.

Nearsoftnians are here to help, if you have any questions shoot them with one. They may not know the precise answer but they will be happy to assist you. Team work is a strong value to have in our company.

The application must not crash and be responsive to input from the user anytime.

Lets get it started... good luck!

MVP

Create a new project. This project must have an activity that show books from an Google Books api. We recommend to use this one:

Endpoint documentation can be found here.

  1. Books must be displayed on a list.
  2. Each book must include Book Thumbnail, Book Title and Published Date.
  3. The application must be compatible with API 15 and higher.
  4. The application must not crash and be responsive to user's input at anytime.
  5. There must be no deprecated calls in code.

EXTRA POINTS: If you make the list endless. (Play with query parameters for this)

EXTRA POINTS: If you make the list like a grid.

We need to go further

Create a new activity that will show detail information about the selected Book.

  1. You must show the cover of the book(normal size, not thumbnail), published date, the authors name and book description.
  2. You have to create a custom layout for tablets, look at the blueprints bellow.

EXTRA POINTS: If you make Books swipeable, this means you can swipe between Books in the list.

Handset layout

-------------------------
|                       |
|                       |
|      BOOK COVER       |
|                       |
|        Published Date |
|-----------------------|
| Authors               |
|                       |
| Description           |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
-------------------------

Tablet layout

-------------------------------------------------
|                       |                       |
|                       | Authors               |
|                       |                       |
|                       | Description           |
|                       |                       |
|      BOOK COVER       |                       |
|                       |                       |
|                       |                       |
|                       |                       |
|                       |                       |
|                       |                       |
|                       |                       |
|        Published Date |                       |
-------------------------------------------------
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment