Interview challenge for React Native Application
- The goal is to understand how you handle things outside your comfort zone
- Ability to demonstrate technical skills with react native
- Ability to demonstrate Development skills on React Native skills and how you setup a project. This project uses React Native App, but as a React Native Mobile Lead/Architect/Engineer, we might have to deal with changing technologies like NodeJS, Java, Javascript, Typescript, Swift, Kotlin, Ruby, etc. I do not expect candidate to have knowledge on all languages, but using your expertise in one technology and ability to quickly learn and adapt to other tech stack.
- Feel free to ask questions, negotiate scope . Happy to have a call as well for any clarifications.
- Timing: Feel free to negotiate the scope and timebox the excercise to a maximum of 3 days.
Required: Design and implement a small app that includes a class representing an automatic bowling scorer object. The automatic bowling scoring object will provide several methods:
- a constructor
- a frameNumber method that returns the number of the frame containing the ball about to be rolled
- a scoreSoFar method that returns the score in the game so far
- a gameIsOver method that returns true when the tenth frame has been scored and false otherwise, and which causes the next roll to start a new game
- a roll method that, given the number of pins knocked down by a roll of the ball, returns an array whose length is the number of frames completely scored and whose contents are the cumulative scores for those frames
Required: Include with the app appropriate unit tests to exercise at a minimum the automatic bowling scorer and any other classes as you feel is necessary.
Recommended: Prepare a state diagram that represents the states required in the automatic bowling scorer to accurately
- Google/StackOverflow/Internet is your best Friend! As long as you have understanding of solution and are able to demostrate, it does not matter how you come up with the solution. You can take help from anyone.
All the best!