DEV Community

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

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.