DEV Community

Discussion on: As a Interviewer what question you ask a dev while taking interview for react.js?

Collapse
 
joelbonetr profile image
JoelBonetR 🥇

I'd prefer specific questions asked from the experience point of view than make people code for about 1hour (which is usually more).
Not just React questions but also JS ones, as React is just a lib, so you can notice if someone just learnt "react" or they understand how JS works (top to bottom).
A good JS dev that understands the principles over which React is built-in will be able to use React proficiently in few days/weeks.
A dev who only learnt React with online courses will probably struggle when facing challenges over those forementioned courses by lack of "vanilla" JS experience (or TS if it's what you use at the company/project).

So simple questions like:

  • What happens when you navigate to a URL in the browser?
  • What's the difference between loading sync, async and defer scripts?
  • Which benefits does HTTP/2 brings?
  • What is a closure?
  • Explain the lexical scope.
  • Differences between function and const (arrow function).
  • How do you make a function private or public?
  • Giving that example: (Imagine you create a public function that uses a private one also declared here) How do you test this feature and why?

And so on. You can order those questions as you like and present it as quick test to take an overview into the knowledge of the applicants.
Sometimes I found people that doesn't know the names of some concepts but they also have the concepts clear, in which situation be prepared with some hints. At the end you want to know if they're able to work proficiently and not just evaluating their theoretical knowledge and the keywords they memorized.

Hope it helps!

Collapse
 
lexiebkm profile image
Alexander B.K.

HTTP is a fundamental subject that I want to really comprehend. Actually the whole TCP/IP suite is my ultimate goal when it comes to Networking. But for now, my priority is the HTTP layer.
As for Javascript, yeah... I don't want to leave holes in some topics such as closure, strict mode, promises, async-await, etc, that I need to relearn them as well as other topics I haven't covered. Because I am interested in Node.js, I feel need for learning operating system conceptually, especially concepts like process and thread, to better understand how Node.js works as a single-thread JS run-time environment.

Collapse
 
joelbonetr profile image
JoelBonetR 🥇 • Edited

That's nice!
I would recommend you to add UDP into the list in contrast with TCP (a good way to learn UDP may be through websockets, see socket.io as example).

Also worker threads topic may be of your interest.

A note on your last sentence,
Node JS is coded in C, and it runs in multiple threads and cores (Node itself).
While the execution of JS is single-threaded at its base, we still can run some operations in parallel which is the main point on multi-threading. We do not create threads that share the same 'context', though.
When Node encounters blocking operations (reading from a DB for example), it delegates them to a separate pool of threads. This is managed by a C library known as libuv.

See the link about Worker Threads for more details 🙂

Thread Thread
 
lexiebkm profile image
Alexander B.K.

Thanks for the reply
I will take time to learn worker, not only in Node.js, but also in browser as covered in developer.mozilla.org/en-US/docs/W...
Actually for backend, I am also interested in Golang which provides goroutines and channels for handling concurrency. Also Java which I suspend my learning until I have time again.

Collapse
 
rajeshroyal profile image
Rajesh Royal

Very helpful. Thanks @joelbonetr