3 ms·
Completely 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 d
by adyus 13y ago
Completely 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
- danpalmer 13y agoI disagree with you on this. The point of the interview as I read it was to test an understanding of closures, scoping, and really basic programming logic. I've been asked similar questions in interviews, and when I haven't known the little bit of factual information required (in this case the existence of setTimeout and clearTimeout), I've asked to Google it, and my interviewers have always been more than happy to let me. I've passed interviews doing this. I've even had friends who do interviews tell me that 'googling an answer' is often the correct answer. I personally think the choice of setTimeout/clearTimeout was a really good one because almost all JS devs will know it, but it's also really easy to find online if you know what you're looking for. This test is really about coming up with a good way to solve a problem.
- mercer 13y agoAssuming the interviewer is also a web developer, I think a good 'minimum' would be problems that the interviewer himself often came across. The kind of stuff that you put in some base_functions.js file for all your project, or that you use a library like underscore or lo-dash for. setTimeout is something I had to learn about very early in my web development career. The essentials of jQuery too. Callbacks too, unless all you need is someone who does mainly html+css with a bit of jQuery. The interviewer asked exactly the kind of question that I'd consider a 'minimum'. Of course, as others have pointed out, it also depends on what you're looking for. If you're okay with someone who can learn a lot on the job, and if you don't mind that this person has some basic things to pick up on, you'll probably be focusing more on how the interviewee approaches the problem, and how they interact with you as the interviewer.