Let's have a chat - Jolt

0 downloads 94 Views 159KB Size Report
You can implement the solution in any language you want, but NodeJS is preferable. When you are done, please gather all
Let's have a chat For today's challenge, we are going to build a chat system. Kinda like WhatsApp, we are going to implement a chat between users on our platform.

Screens We have 2 main screens: Conversation screen

Chat screen

Writing code Given these two screens, you need to create the backend system to support the two screens that are displayed above. Notice: you are not required to build the client side, only the backend. 1. Start by listing out your requirements, you can try and predict future possible requirements this system might have, but don't implement them. 2. Think about the code design, structure and signatures. 3. Implement the code the best way you can. 4. Implement the important stuff first, don't get stuck on optimisations. 5. This task should take no more than 3 hours. If you have more ideas you want to implement, you can add it as a comment. 6. You are going to have to defend your solution, so make sure you can reason every decision you make in the design and code.

Assumptions

1. Assume that each user, has a unique id. 2. You can assume that the system that you are building already have a authentication mechanism, so there is no need to implement login and password.

Extra points Looking to gain some extra points? Try to figure this stuff out: 1. Make sure this system can scale. 2. Write tests to make sure everything is working as expected. 3. Write the best code you can, keep it clean and sensible.

Submission You can implement the solution in any language you want, but NodeJS is preferable. When you are done, please gather all the files into a ZIP file, and submit it here, and then message me at [email protected]. If you have any questions about the requirements, please feel free to send me a message to [email protected].

GOOD LUCK!