4 ms·
This is more of a question for the startup that Nathan was applying to: Given it took Nathan a reasonably small amount of time to research and learn the correc
by adyus 13y ago
This is more of a question for the startup that Nathan was applying to:
Given it took Nathan a reasonably small amount of time to research and learn the correct answer, what disqualifies him from being (or quickly becoming) a skilled developer for your startup?
In other words, what's the minimum skill and knowledge level you'd accept, given that the applicant know how to learn the rest? Is that level arbitrary?
- eshvk 13y agoMaybe it is not about him being disqualified, maybe it is about the fact that the other people they interviewed were able to jump through their hoops and do all the tricks and were equally as qualified?
- jiggy2011 13y agoThe transcript implies he was disqualified because of this question. Of course he may have bombed other questions and this was just the last chance saloon.
- halisaurus 13y agoWhy not both? For one, setTimeout is pretty run of the mill. If you haven't come across a situation where you need to wait a period of time before initiating some event, you simply haven't coded much. If someone else had just nailed the question in the interview before him than—hoop or not—they've proven a skill he hasn't. Even if we ignore this, the "What Really Happened" area sounds like he only admitted he doesn't know, and worse, that he doesn't know how to proceed. Another comment above asks if one small set back is really a deal breaker, but in my opinion, not attempting to overcome a problem you haven't seen before shows more about a candidate's abilities than simple knowledge. Prove you can find a solution when all you have is a basic idea of the problem. Take a hint and run with it. (The interviewer gave the method name as a hint!) Google the answer. This post hints that the position was closer to entry level, so I would suspect that curiosity and autonomous problem solving are fundamental requirements for the role. When you're green a lot is going to be brand new, so you have to be able to learn on the spot and run with it.
- jdmichal 13y agoI would say they've proven a knowledge, not a skill. setTimeout is not a skill, it is a knowledge. Analytical thinking is a skill -- one that he failed to prove when, given the knowledge, he still could not find an answer.
- eshvk 13y agoThe problem is that a lot of people in Industry think they are hiring for analytical skill but they are really hiring for knowledge. Seriously, let us take questions in anything from graph theory to dynamic programming. All that proves is that you have studied these problems well enough to be able to spot them during the interview and then solve them. And you know what? You don't necessarily need abstract knowledge less analytical skills to be successful in most programming jobs so I guess they are okay with what they are doing.
- mercer 13y agoI'd say perhaps especially in front-end, knowledge is much more important than analytic skill. Most of the challenges I face in html and css seem to be more about hacks to get something to work as desired than about properly reasoning about the problem. In fact, this is the primary reason I'm trying to move away from 'vanilla' front-end to more heavy js or backend stuff.
- jdmichal 13y ago> The problem is that a lot of people in Industry think they are hiring for analytical skill but they are really hiring for knowledge. Completely agree. They'll toss the resume of someone who is an expert in graph theory, because they really need someone who knows machine learning, completely unaccepting of the fact that someone willing and able to become an expert in graph theory can probably do the same on machine learning. This all plays into the current trend of businesses not being willing to train employees.
- danpalmer 13y agoUnderstanding closures properly, understanding JavaScript scoping, and being able to solve problems however are all skills, and I think were the point of this interview.
- ricardobeat 13y ago"I am a skilled painter" "Ok, draw me a square" [proceeds to fail at squiggling something resembling a triangle] For every job there is a hard, arbitrary skill floor.
- adyus 13y agoCompletely agree. But we still haven't figured out what that hard skill floor is for web developers. Heck, we can't even decide what a web developer actually does, as opposed to a web designer, or "growth hacker", or UI/UX "expert", or back-end programmer. How can we set a minimum when we can't clearly define the task beforehand?
- epayne 13y agoI think the interview question detailed in the post makes a fine web development Fizz Buzz Test. It may not define the hard skill floor but not being able to answer this question correctly clearly identifies a candidate that has not written or read much Javascript at all. Basic JS experience and skill is a requirement for web development work today.
- jes5199 13y agoI don't know if I agree - I've done plenty of setTimeouts in my life, but I can't remember if I've ever needed to cancel one before it fired, though. It seems slightly esoteric. (Then again, I don't sell myself as a front-end developer)
- mercer 13y agoAgreed. I use setTimeout a lot, but generally don't need to cancel it. But the failure of the interviewee was not the part where he doesn't know how to cancel it, I think, but rather that he didn't know about setTimeout at all.
- jnbiche 13y agoI'm sorry, I'm going to step in here and call you on this. This is nowhere near the skill level of a Fizz Buzz test. I mean, it may be a legitimate question to ascertain the presence of an intermediate-to-advanced web developer, but fizz buzz is something any reasonably competent beginner-to-intermediate programmer can figure out, even if they haven't run into it before. This is not even testing an obscure application of closures. I mean, the trick here is not knowing about closures, but about knowing the details of the setTimeout function -- specifically, that there is a corresponding clearTimeout function (which, as a non-specifically frontend developer, I had long forgotten if I ever knew it). That's not testing programming competency, that's testing knowledge of the JS standard library, and secondarily knowledge of closures. I mean, it's a legitimate thing to test for, but let's not pretend it's somehow analogous to fizz buzz. Edit: And none of you even mentioned the error in his code, which another commenter pointed out: wrong function. It should have been clearTimeout
- misterjangles 13y agoThe OP admits that he didn't even try to answer the question. The interviewer basically gave him the answer, but he didn't ask for help or ask if he could look up setTimeout. The OP's takeaway seems to be that he should have known setTimeout well enough to walk through a solution. With that approach I think anyone will have a similar experience, only it would be some other random question. The lesson learned should be to actually make the attempt and try anything at your disposal. Ask questions. Ask for hints. Don't just say "um, I don't know."