as-ideas / team-rochen-junior-engineer-coding-challenge

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Coding Challenge - Junior Full Stack Software Engineer

Introduction

This is the coding challenge for the position of a Junior Full Stack Software Engineer at Ideas Engineering.

The goal of this coding challenge is to add a new feature to an existing codebase. The given application imitates a simple news portal with a React frontend and a Node.js backend that lists articles and allows the user to read them.

The challenge is designed to take 3 hours. We recommend to deliver rather less in high quality than more in less quality.

If you want to replace a technology / library or restructure the project, feel free to do so. If you do so, please document your decision.

When you are finished with the tasks or have decided that you've spent enough time on it, send us an email and tell us where to find your work. Your code should be stored in a public git repository with a generic name. Please do not include the descriptions of the tasks in your repository. Others should have fun solving the problems and not copy paste your solution.

If you encounter any problems, do not hesitate to contact us via replying to our coding-challenge email.

We hope you enjoy working on this. Good luck and have fun. 🚀

How to start the application

The application includes a backend and a frontend part. Please follow the instructions in the respective README files:

Your Tasks:

Task 1

Your first task should be to start the application. But before you can do that, you have to know that we have hidden three bugs in the frontend code.

Try to find and fix them. Some of them will prevent you from starting the application.

Task 2

As a news portal it makes sense to generate user interactions. So your next will be to implement the following new feature:

As a user, I want to be able to comment on an article and to be able to see all comments of an article.

It's completely up to you how you want to implement this feature. Feel free to be creative. We are looking forward to your solution.

Ensure your solution contains the representation of the comments in the frontend and the persistence of the comments in the backend.

Note: The creation of the comments table is already done (see /backend/src/setup/initialize-database.js).

Task 3

Let's think about another feature now: The deletion of comments.

Think about which steps are necessary to implement this feature and write this down (No coding required).

About


Languages

Language:JavaScript 80.7%Language:SCSS 16.8%Language:HTML 2.4%