Full Stack Node.js React (Coding)

 60 Minutes
 4 Questions


Full-Stack Coding Challenge Overview: This intensive coding challenge evaluates candidates' full-stack proficiency, focusing on practical skills in React, NodeJS, and Express. Participants will face coding tasks that test their ability to create dynamic frontends using React, addressing challenges in component design and state management. On the backend side, they'll demonstrate their expertise in developing scalable applications with NodeJS and Express, showcasing their understanding of server-side logic, route handling, and middleware integration. Rather than theoretical questions, this challenge emphasizes hands-on coding, requiring candidates to solve real-world problems that reflect actual development scenarios. The tasks assess not only technical knowledge but also problem-solving skills and the ability to produce clean, efficient code under time constraints.


Example Question:

Coding
In this question, you are requested to create an express service for the bank.
Given the customer's name and amount of money to deposit or withdraw (by the number sign +/-) you should indicate the success or failure by the following:



If the customer balance doesn't have enough money for the withdrawal you should return -1 to signal for error, otherwise 0.



The current balances are as follows:
  1. BruceWayne -
  2. The current balance is 58$.
  3. ClarkKent -
  4. The current balance is 21$.
  5. DianaPrince -
  6. The current balance is 112$.






Your API should support the following:



Url: UpdateBalance
Method: POST
Request Body (as JSON) :
{
"customerName": ....,
"amount" : ....
}
the amount can be positive for a deposit or negative for a withdrawal.
Response: 0 for success, -1 for error.



Url: GetBalance
Method: GET
Parameters: customerName
Response: the customer balance.



*All responses must be strings (not numbers or objects)



For example:
/GetBalance?customerName=BruceWayne
Response: 58
--------
Post to /UpdateBalance:
{
"customerName": "BruceWayne",
"amount" : 5
}
Response: 0
--------
/GetBalance?customerName=BruceWayne
Response: 63
Because the balance was updated in the example above
--------
Post to /UpdateBalance:
{
"customerName": "BruceWayne",
"amount" : -500
}
Response: -1
Because the balance doesn't have enough money to withdraw 500$.