Skip to content

Commit 7af4d9e

Browse files
authored
Update mobile coding challenge
1 parent 4cc7b28 commit 7af4d9e

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

mobile-challenge.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,22 +2,22 @@
22

33
## Welcome!
44

5-
To give you an idea of how some of the work as mobile engineering team member will look and help us get an impression of how you might approach these tasks, we've put together a take-home assignment. We’re doing this asynchronously because we know that, despite our best efforts to create a laid-back atmosphere, live coding interviews can be stressful and results may not be representative of your work. We believe going through the assignment at your own pace is a more natural way to achieve this goal. We know that completing the assignment will require some time investment and we really appreciate you taking this time. We believe this is a win-win situation and we wouldn't ask you if we didn't already think you're a great fit for the role.
5+
To give you an idea of how some of the work as mobile engineering team member will look and help us get an impression of how you might approach these tasks, we have put together a take-home assignment. We are doing this asynchronously because we know that, despite our best efforts to create a laid-back atmosphere, live coding interviews can be stressful and results may not be representative of your work. We believe going through the assignment at your own pace is a more natural way to achieve this goal. We know that completing the assignment will require some time investment and we really appreciate you taking this time. We believe this is a win-win situation and we would not ask you if we did not already think you are a great fit for the role.
66

77
The objective of this take-home assignment is to create a simplified version of the Mimo app that can retrieve a simplified version of our coding lessons from a server and display them.
88

99
Fingers crossed!
1010

1111
## Implementation
1212

13-
- You can write the challenge any way you want. (At Mimo, we use Reactive Extensions and MVVM to build our apps. If you know those technologies, it makes sense for you to use them for this assignment.)
14-
- We'll only evaluate your submission based on your code - there's no need to worry about the visual design.
13+
- You can write the challenge any way you want. (At Mimo, we use Kotlin Coroutines/Flow and MVVM or MVI to build our apps. If you know those technologies, it makes sense for you to use them for this assignment.)
14+
- We will only evaluate your submission based on your code - there is no need to worry about the visual design.
1515
- Part of this assignment is to work with the APIs we provide.
1616
- Use Git to track your changes and upload your Git repo on Github, and once you are done please share your private Repository with us via [email protected]
1717

1818
## Goal
1919

20-
Your goal is to write a small app with three simplified Mimo lessons (in the apps, we call these lessons "exercises"). You can get the information for the lessons from the API we provide. The lessons have a specific format (documented below) that defines how they need to be rendered. If a lesson contains an interaction, display the interaction. At app startup, display the first lesson. Also display a "Next" button that, when pressed, checks that the lesson has been solved and continues to the next lesson.
20+
Your goal is to write a small app with three simplified Mimo lessons. You can get the information for the lessons from the API we provide. The lessons have a specific format (documented below) that defines how they need to be rendered. At app startup, display the first lesson. Also display a "Next" button that, when pressed, checks that the lesson has been solved and continues to the next lesson.
2121

2222
When a lesson is solved, store this event in a mobile database of your choice on the device (see "Lesson completion event").
2323

@@ -56,9 +56,9 @@ Every lesson contains content, formatted as JSON, that represents an array of co
5656
}
5757
```
5858

59-
Each object in the content array represents a text snippet, each of which can have a different color. If the `input` object exists, it represents the range where the user needs to type in the expected input. In this example, the user has to input "World" in order to proceed to the next lesson. If there's an input interaction in the lesson and the user hasn't typed in the input field yet, disable the button. As soon as the user has typed anything, enable the button to allow the user to check for the correct answer and go on to the next lesson or display a message if it is incorrect. If there's no input interaction, keep the button enabled.
59+
Each object in the content array represents a text snippet, each of which can have a different color. If the `input` object exists, it represents the range where the user needs to type in the expected input. In this example, the user has to input "World" in order to proceed to the next lesson. If there is an input interaction in the lesson and the user has not typed in the input field yet, disable the button. As soon as the user has typed anything, enable the button to allow the user to check for the correct answer and go on to the next lesson or display a message if it is incorrect. If there is no input interaction, keep the button enabled.
6060

61-
Here's an example of how such a lesson might look:
61+
Here is an example of how such a lesson might look:
6262

6363
<img width="217" alt="challengedisplay" src="https://user-images.githubusercontent.com/964691/39253366-fe542ad0-48a7-11e8-98c4-8e1c2c6a470d.PNG">
6464

@@ -73,5 +73,5 @@ It contains the following properties:
7373

7474
## Server API
7575

76-
To get the lessons from the server API is simple: just send a GET request to https://mimochallenge.azurewebsites.net/api/lessons and you'll receive a JSON object that contains all the lesson information.
76+
To get the lessons from the server API is simple: just send a GET request to https://mimochallenge.azurewebsites.net/api/lessons and you will receive a JSON object that contains all the lesson information.
7777

0 commit comments

Comments
 (0)