On May 7, 1:27 pm, Dmitry A. Soshnikov wrote:
[...]
Or is it about "The Most Challenging Interview Question"?
That is the subject, but it is not entirely clear whether the
intention is the discussion of the most challenging question that one
may ask a potential employee/colleague while interviewing them, or the
question one may find most challenging when being interviewed. My
initial interpretation favoured the latter, but closer inspection
suggests that the subject may be more ambiguous than I had first
assumed.
Ah, yeah, I just understood it in the alternative view which you
mentioned. But yes, your interpretation fits also for the topic's title.
So you are interpreting this as the most challenging question to ask a
potential employee/colleague while interviewing them.
Yes, I did. But the only thing I wanted to mention is that there is no
sense to transform the topic about interview questions to the
again-and-again discussion of the jQuery.
It is unrealistic to expect deep technical knowledge from most
candidates for javascript related web development jobs. When I was
interviewed by my current employers the job I applied for was
advertised as requiring a "javascript expert" (realistically, as that
is exactly what was needed), and I was given a 'technical test' that
was so rudimentary (cantered around really basic cross-browser DOM
interaction questions) that I thought that anyone who did not get 100%
on that test had no business applying for a javascript/browser
scripting job in the first place, let alone presenting themselves as a
"javascript expert". It turned out that one of the (main) reasons that
I was offered the job was that I was the only candidate interviewed
who had achieved better than 50% on that, so called, technical test
(where the contrast between those scores and my 100% suggested that
finding more candidates to interview would not be a worthwhile
exercise). That is; the vast majority of people applying for jobs
starting "javascript expert" as a requirement are not even capable of
getting the basics right.
I see. And actually the problem of a (some) knowledge is that it
relatively-acceptable with some relative levels. When you've just
started to learn JS (more-less) deeply -- did you recognize _completely_
the level of your knowledge at the moment? For this should be some
"model", a "standard" -- to compare your relative knowledge with this
(also a relative, but the absolute in particular case) "standard".
The good "model" in this case of course can be a specification. But we
also shouldn't forget that technical specifications are exactly
technical specifications (ideally, just a set of concrete algorithms how
and why to do something) for implementers.
From this viewpoint an abstraction level of the spec is lower and user
of the JS itself aren't obliged to know it.
So that "javascript expert" position is just a relatively acceptable for
your employers. And being on some relative level of the knowledge, they
cannot (or maybe don't want to) to dig deeper.
Fairly, if some "dig out" some deeper knowledge (examined the
specification), this position -- a "javascript expert" is being appeared
as a novice/middle level.
So, don't be worry about that. In every technology there are always
novice/middle/expert levels programmers. And with every of this level
_depending on required and at the same time acceptable level of the
knowledge_ can be a position with the same title -- "javascript expert".
Of course, quantity of the real experts (which I recognize as deep
theoretical knowledge + the big practical experience) not so many; a few
-- in every technology.
I wonder how this comes about. Is it really widespread misperception
of their own abilities on the parts of the applicants; an unfounded
overconfidence?
Depends (psychologically) on concrete human type. Also depends on what
I've described above -- acceptable (for himself) level of the knowledge.
Some just try, other -- not.
Or could it be a general attitude of 'trying it on',
and these individuals do appreciate that they don't really qualify but
are willing to try to bluff their way through the interview.
Yep, can be also. The methods of achiving the result can vary. Myabe
some just learned on such "tries".
Personally, I try always _not to try_ (not to guess), but to beat for
sure -- i.e if don't know -- do not talk in statement forms _or_ -- talk
in questionable form, asking and collecting the knowledge. Of course, if
some knowledge region isn't examined well and can be some inventions --
exactly _intuitive tries based on previous experience_ can be the main
progress engine and here that "tries to guess" are welcome.
Then it
could be that this is a manifestation of a general contempt for the
employers; that when they say "javascript expert" they don't really
know what they need but had to write something.
Given what I wrote above, while gauging the range of technical
understanding possessed by a candidate for this second class of job
will be useful, I think it would also be valuable to attempt to find
out how they react to being presented with boundaries of their
knowledge.
This approach can be used of course -- to find out which level of job
can be charged for this employee.
Will they recognise their mistakes when shown, will they
attempt to bluff, are they interested in the 'correct' answer; in
learning from it.
Yes, it depends on the levels: professional, educational, and
psychological type.
That is, is this an individual who can/will use the
"mostly practical" position to learn enough to move towards the
"theoretical analytic" position?
Yes, indeed.
I assume that "direct for-loop" means an incrementing index, as a for
loop with a decrementing index doesn't see the issue.
Yes, that exactly I meant.
Dmitry.