Skip to content

React Native code challenge. Used to test the development skills of candidates looking to join the engineering team.

Notifications You must be signed in to change notification settings

tim-lynn-clark/codechallenge-reactnative

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 

Repository files navigation

Code Challenge: React Native

Cross-platform Mobile Development Skills Assessment

Repo Location: https://github.com/tim-lynn-clark/codechallenge-reactnative

Summary

This React Native code challenge provides each candidate a consistent and fair opportunity to demonstrate the skills they have developed and practiced over their years of software engineering.

Additionally, the challenge allows each candidate the ability to go above and beyond to make sure the development manager and team can see their unique combination of skills and abilities and better understand why they should be the newest member of our amazing team.

The challenge is designed to test the development skills, processes & procedures, git workflow, methods, and problem solving used on a daily basis during software engineering. It is anticipated that the majority of candidates will NOT complete the entirety of this code challenge.

The extent of the requirements are simply there to provide candidates with options to move forward in the challenge if they become stuck on any one requirement. This also allows the same test to be used to assess developers with skill levels from entry to senior to architect.

Simply do your best to complete as many of the requirements as possible within the time allotted. Please document in your code when you get stuck, your thoughts as to why you became stuck, and what you tried to become unstuck before moving on to another requirement. This documentation can go a long way in helping the team understand why you did not complete a requirement, where we can help you develop as a professional, and your problem-solving methodology. Don't let this challenge stress you out, we simply want to see what you can do and just as important how you do it!

Project Description

For this challenge, you will build a mobile application that utilizes a third-party RESTful API as its data source. The data supplied by the API is related to a few types of cancer and provides details about those cancers to for use within the client application you are building.

The data provided for each cancer are:

  • Overview of the cancer
  • Treatments
  • Causes and Preventions
  • Screening Methods
  • Coping with Cancer

The basic application allows the user to select a cancer type and is then presented with the details listed above in a user-friendly and easy to digest manner. The focus is to make the application as easy to use as possible for users with low levels of technical skill; this means intuitive, accessible, and responsive. Just like pretty much every user out there, we don't like ugly user interfaces, so please, spend some time making sure the application is pleasing to the eye in addition to functional and easy to use.

Instructions

Mobile App Setup

We will keep this quite simple.

  • Fork this repository to your own GitHub account
  • Setup and initialize a new React Native application within the newly cloned repository

Note: You will be required to provide the repo URL to your fork of the code challenge. It is expected to be under your personal GitHub.com account. please make sure the repo is publicly accessible. Keep in mind, we want to see how you develop, this includes how you use Git in your development process.

Verify that the new React Native project:

  • Builds
  • Runs on either an Android or iOS device emulator, or both, it is up to you (must have a mac to build and run on iOS, NOT provided for this code challenge)

RESTful API Setup

Use the Mock RESTful API as your application's back-end. NO modifications are to be made to this back-end API during this code challenge, it is to be used AS IS. It is found on GitHub at https://github.com/tim-lynn-clark/codechallenge-mock-api

Verify:

Requirements

Where the fun really beings

  • Development environment setup instructions

API Integration

  • Handle common errors associated with asynchronous API calls (i.e. HTTP error responses, failed API calls, etc.)
  • Handle common formatting issues that arise when using a third-party API as a back-end (i.e. proper letter casing, empty strings, empty objects, missing data, extra spaces, etc.)

Features

  • Listing the cancers
  • Making each cancer clickable so the user can select one to view
  • Navigating to a details view, so the user can read the overview of the cancer they selected
  • Listing the various items from the selected cancer
    • Treatments
    • Causes and Preventions
    • Screening Methods
    • Coping with Cancer
  • Allowing the user to open and view linked external resources from within the mobile application

Testing

  • Key functionality is well tested using unit tests

About

React Native code challenge. Used to test the development skills of candidates looking to join the engineering team.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published