0% found this document useful (0 votes)
12 views2 pages

MERN Developer Test Description

The document outlines the requirements for building a car selling service application using Next.js for the frontend and Node/Express.js for the backend. It specifies the need for mobile responsiveness, a popular UI library, clean and modular code, proper error handling, and RESTful APIs. The application consists of a login screen and a vehicle submission form, with specific validation rules and a requirement to host the application online and share the code repository.

Uploaded by

Abdul Moiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views2 pages

MERN Developer Test Description

The document outlines the requirements for building a car selling service application using Next.js for the frontend and Node/Express.js for the backend. It specifies the need for mobile responsiveness, a popular UI library, clean and modular code, proper error handling, and RESTful APIs. The application consists of a login screen and a vehicle submission form, with specific validation rules and a requirement to host the application online and share the code repository.

Uploaded by

Abdul Moiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Build a simple application using Next JS 13 for the frontend, and Node and Express JS for the

backend. The app would be to submit a request for a car selling service.

Check the below description, and you can also after that check the following video that explains the
same things
https://drive.google.com/file/d/1Ex20VfH-wPyaKrv1iF0iogdEcdY_1_tc/view?usp=sharing

Aspects to consider:
1) Application has to be mobile responsive to some extent.
2) Application has to use some popular UI library (Material UI, Chakra, Ant Design …etc) and looks
acceptable
3) Having a well-structured and modular code base is essential for the evaluation of this task, so
make sure you write clean code to the maximum you can.
4) Make sure you have proper error handling to some extent and also proper request validations.
5) Frontend and Backend responsibilities should not be mixed, and RESTFul APIs have to be built to
simplify the frontend and backend communication.
6) The app has just 2 interfaces, and 2 small endpoints so it shouldn’t be complicated to finish if you
have the needed experience.
7) The app error handling, interface … etc are not expected to be 100% perfect, however, we need
to see some of the stuff needed to be able to judge the candidate’s knowledge and code quality.
8) After you complete the application, you’ll have to host it on some online hosting service (e.g.
Heroku, Vercel, Netlify, render … etc) so we can test it ourselves. Also you’ll have to share access to
code hosted on Github, Bitbucket … etc
9) When you are done, submit both the application URL (e.g. vercel), and the repo link (e.g. Github)
on the test link shared with you.

Test Details:
First Screen:
A log-in page has to be built with only a single option of login (email and password, no need for
Google, Facebook …etc), When the user tries to log in, the form should send a request to the
backend to verify the inputted information. (don’t hard code the credentials in the frontend part)

The user will be moved to the next screen on verification, while wrong credentials would show an
error message.

You should use MongoDB for backend, and you can add the following user manually into MongoDB
(no need to build registration flow),
User Name: [email protected]
Password: 123456abc
Successful Log in would take the user to the second screen.

Second Screen:
A simple form that the user would use to submit his vehicles information, the user will fill some fields
related to car (model and price) and some personal information (phone and city) and there would be
a field to choose the number of pictures to upload, and then the user will be able to upload a
maximum of that number of pictures chosen and not more than that while they are allowed to
upload less number and all the pictures thumbnail would be shown for the users before submitting.

The fields to include:


Car Model(String, min 3 letters), Price (Number), Phone Number (exactly 11 letters), Max number of
pictures (Number, between 1-10), and Picture upload field/s.

On submission of the form, the frontend would submit the data to the backend to create the entry in
the backend, and include a reference indicating that this entry was of this specific user.

Images when submitted to backend should have a live URL that can be saved in the DB for the entry
record. So every entry will have an array of images URL (each is an image the user uploaded when
submitted the entry)

Review criteria:
We are trying to measure and test the candidate in the following areas:

- The professionalism of the candidate, will they deliver it in the timeline, or after or even not
respond back anyway.
- How detailed is his/her code, and how it’s handling different cases of the app.
- How easy and user friendly is the app built by the candidate.
- How the simple app structure is built, and does it consider scaling in the future.
- Does the candidate apply best practices and clean code principles?
- Is the candidate able to understand requirements and convert that into an app him/herself
- Does the candidate utilize version control systems?
- We also encourage you to add any improvements or extra features (not necessarily big ones)
that you think might lead to better application overall. The goal is to see if the candidate can
work without supervision and improve flows, or needs a supervisor all the time.

You might also like