Dear Candidate,
We've prepared a simple test task for you where you can show all your knowledge and skills in the NodeJS area. Feel free to improvise and don't be afraid of challenges π. We all believe that you are full of π knowledge and πͺ motivation.
Respectfully, ORIL team.
-
Please note that this will require some basic TypeScript and NestJS knowledge.
-
You will need to have NodeJS and MongoDB installed to complete this task.
-
Telegram account to create the bot using BotFather
Your goal for the task is to show us as much as you know about NodeJS and Back-End development. The app should be not overcomplicated and you have to remember it's not π rocket science, so do not overcomplicate everything.
Our (ORIL) goal for the task is to see how deeply you understand the technology and figure out how you find solutions in different situations.
The task will be to create a telegram bot that will show the user the jokes of Chuck Norris.
- Create telegram the bot using BotFather and save API token for the future.
- Create a source folder to contain your code.
- In the source directory, please create an NestJS app that accomplishes the following:
- Connect to the Telegram Bot API (to do this, you can use libraries that you can find on the Internet)
- In the telegram bot you will need to create three buttons (random, categories and history) using one time keyboard:
- random - Using Api with Chuck Norris jokes to show the user a random joke.
- categories - Show the user all categories of Chuck Norris jokes as inline buttons, at the click of a button, show a random joke from the selected category.
- history - When the user clicks this button show the last 10 jokes he has seen before. To do this, you need to save all the jokes that were shown to the user through the random button or through a certain category in the MongoDB database.
DEADLINE: 3 days
After everything is done, please commit and send a link to your GitHub repository to HR.
If you notice any mistake or have an idea of improving the test task, please feel free to contact [email protected] for an immediate response π.