Mock Technical Interview - Javascript Developer Junior Level

preview_player
Показать описание
A mock technical interview featuring Gavin and myself where we go through some introductions, high level conceptual technical questions, as well as four coding questions together. This style of interview is similar to something you'd see at the Junior to Intermediate level when applying for software developer or web developer positions.

In this interview we are coding with Javascript as that is what Gavin has been studying and working with, however the structure and style should be similar for all types of technical interviews at this level.

Thank you Gavin for braving the recording with me and allowing others to learn from us!

Chapters:
00:00 Introductions
04:45 What is Javascript?
05:30 What is React?
07:31 What is a REST API?
09:54 What is a Database?
11:30 Login Process Explanation
20:45 String Palindrome (Easy)
33:05 Create Array Map (Easy)
42:16 Flatten an Array (Medium)
1:00:38 Create getElementById (Hard)
1:32:36 Recap and Feedback
1:38:55 Revisiting Palindrome
1:44:28 Wrap-up

Рекомендации по теме
Комментарии
Автор

As someone who is preparing to embark on my own technical interviews for the first time, this is an incredibly helpful resource.
Watching this mock interview is easing my anxieties and helping me overcome my strong feeling of imposter syndrome. Thank you for sharing this!

littlemss
Автор

This is probably my favorite mock. Very professional acting, knowledgeable of what he knows and doesn't but is able to express it without seeming like a bro.

TheStrategist
Автор

Thanks to @zia on the Discord for looking in to the mystery of the String and this Object:

Regarding this being an object but not a string literal, basically, when a function is executed, this is converted into an object if its not already.

So string literal is converted into an an object which for string hello looks like

{0: h, 1: e, 2: l, 3: l, 4: o, length: 5 }


ECMAScript calls is string exotic object (just learned btw).

TLDR: value of this keyword is always converted to an object.

TechWithNader
Автор

I don't see how a self-taught beginner programmer has knowledge of things such as restAPI, strict comparisons, backend processes, recursion, depth first search implementations as well as a pretty decent high level overview of the language, after only a year.

Very impressive!

antoinenijhuis
Автор

It looks like a real interview. The guy are nervous but answers are good. The interviewer keeps calm and a very kind. I had the same experience)

yuliasereda
Автор

Code question 1: The '===' operator checks for both equality and datatype. In this case, we are comparing and object string against a string, hence the equality will always return false. The fix: use '==' operator which will just check for equality.

lewistaylor
Автор

For the first question: Primitive values like strings are automatically converted to objects (wrappers) when you access their properties or methods. In this case, when you call a method on a string literal, JavaScript temporarily converts the string to a String object, which is why you see [String: 'racecar']. At the end, you're comparing a string literal to a string object using ===. To make it work, you can just compare values (==), or do something like, 'this.toLowerCase()', which will act on the string literal of the string object and return true. Confusing...I know.

mr_arroz
Автор

I stopped the video in each question for find the response by myself, and the tecnifiqué part i resolved the problems by myself too and then I continued with the video.

Was very interesting!

djjordis
Автор

I never actually had a proper JavaScript interview, but your video demonstrates an accurate level of interview would be liked. It definitely nudged me into thinking more of a typical questions to why am I doing things in JavaScript, especially in the earlier stage of the interview questions about React, API, etc. The follow up coding interviews were very interesting. For example, if someone where to ask me about the MAP function, I should be doing ok, but coding it.... is another question.

sereyvathanakkhorn
Автор

These are extremely useful. Thanks a lot, Nader!
I'd like to suggest a video that would advice on how to get recruiters' attention, to land the interview. Seems like a real struggle.

randerins
Автор

I like these. Really having a good time watching and good imagining my future interview in this area

小郭子游戏-vr
Автор

Great video, really helpful. Just curious why you want to create methods on the prototype instead of just using plain functions. This seems dangerous as it could collide with other libs that add methods to the prototype. Seems the trend is away from OOP to functional programming. Also in JS, 'this' always refers to an object, though strict-mode may modify that behavior but not sure.

andrewwall
Автор

56:09 Gavin actually had the right idea which is to pass in the result array as an argument to flatten. On the other hand, the implementation you suggested needlessly creates temporary arrays.

hbgl
Автор

Good video and great job. Super impressive for only having coded for a couple years

sequoiakanies
Автор

Interview and have fun together should never be mixed in the same statement 😂

nahunsilva
Автор

The problem with this was that it's mentioned that it's a object in the docs right? That's why it was an object and we all know that everything in js is a object so when we use the String constructor and pass an object it returns the string. Let me know if you find any fault here

rampandey
Автор

`this` is the string object, not the primitive since when you're doing "something".isPalindrome() it's not using the primitive (it would not have the method) -- it will use the String object, go to the prototype and consume the function if it exists. `this` in that context is the String object with all of it's methods from the prototype.

So you can call `this.toString()` to get the primitive

fegeek
Автор

will they actually ask me the basics like what is javascript react node mongo express?

Rugerous
Автор

thanks to share this helpfull video. I think in the first code question we can just use String function (not String constructor) to convert to string and make strict check on value.

wallacesansanoski
Автор

In the first problem we should either loosely compare "this" with reversedString (using ==) or compare this.valueOf() with reversedString

hmm