Interview practice

Full Stack Developer (MERN)

0–2 years · Junior — Node.js · Express · MongoDB · React · REST APIs · Authentication

0–2 years 2–5 years 5–8 years 8+ years
technical REST APIs 1 of 6
You’ve built a REST API endpoint that is expected to return a list of users. The response time has increased significantly over time. What steps would you take to troubleshoot this?
What a strong answer covers

Starts by profiling the endpoint with a tool like Postman or Insomnia; checks database query performance; looks for missing indexes on the user collection; considers response payload size; suggests pagination or filtering to limit results.

The follow-up you would get

If the query itself is slow, what are some methods to improve database performance?

Could you have answered that?
scenario Event Loop 2 of 6
Your Node.js application is encountering performance issues, and you suspect it might be due to blocking code in the event loop. What do you do in the first ten minutes?
What a strong answer covers

Identifies long-running synchronous functions; checks for synchronous I/O operations; uses profiling tools to monitor event loop delays; considers refactoring to asynchronous code; confirms if there are any pending promises or callbacks.

The follow-up you would get

You identified a blocking operation. How would you refactor this to improve performance?

Could you have answered that?
scenario MongoDB Schema Design 3 of 6
You need to add a new feature to your application that requires a significant change to the existing MongoDB schema. How do you handle this change while minimizing disruption?
What a strong answer covers

Assesses impact of changes on existing data; creates migration scripts to update data; uses versioning for new schemas; communicates with the team about downtime; tests changes in a staging environment before deployment.

The follow-up you would get

If users are still using the old version of the app, how do you manage the transition without breaking functionality?

Could you have answered that?
scenario Authentication 4 of 6
You find that some users are experiencing issues when trying to log in, while others can log in without problems. How do you approach troubleshooting this issue?
What a strong answer covers

Checks server logs for authentication errors; verifies the validity of user credentials; examines session management and token expiration; tests the login process with different accounts; checks for any specific user input issues or client-side bugs.

The follow-up you would get

You discover that some users have their accounts locked. What measures would you implement to prevent this issue in the future?

Could you have answered that?
ownership A failure to consider performance 5 of 6
Tell me about a time when you implemented a feature that negatively affected application performance, and how you addressed it.
What a strong answer covers

Describes the feature and its initial intended benefits; specifies performance metrics that deteriorated; outlines the steps taken to identify the performance issues; details changes made to improve performance; avoids blaming others for the oversight.

The follow-up you would get

What would you do differently in future implementations?

Could you have answered that?
technical Debugging 6 of 6
While testing your Node.js application, you encounter an error that states 'Cannot read property of undefined'. What systematic approach do you take to resolve this?
What a strong answer covers

Reproduces the error to understand the context; checks the stack trace for the exact line; verifies variable initialisation and scope; inspects function parameters and their values; uses console.log or debugger statements to trace data flow.

The follow-up you would get

If the error seems intermittent, what additional debugging techniques could apply?

Could you have answered that?
That is this set.

Load six more — you will get questions you have not seen first.

Give me six more →

Say your answer out loud before revealing. Reading the answer first feels like learning and is not.