|
OriginalGriff wrote: 1, 2, 3, and 4 are pretty much "language trivia"
Really? I particularly liked those questions. What I liked about them was that, for the most part, there isn't really any right or wrong answers, per se, but I would be surprised if somebody had been doing development work for a year or two and hadn't encountered them in some form. I don't care about the exact syntax; I'm just interested to hear if they can discuss the concepts thoughtfully.
modified 24-Jan-17 10:51am.
|
|
|
|
|
There are two kinds of people in the world: those who can extrapolate from incomplete data.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|
|
Ask them, wether they prefer strongly typed or stringly typed code.
Edit: That typo was good
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a f***ing golf cart.
"I don't know, extraterrestrial?"
"You mean like from space?"
"No, from Canada."
If software development were a circus, we would all be the clowns.
modified 24-Jan-17 10:36am.
|
|
|
|
|
I prefer stryngly tiped code myself.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
I prefer smugly triped.
This space for rent
|
|
|
|
|
How about boldly striped?
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a f***ing golf cart.
"I don't know, extraterrestrial?"
"You mean like from space?"
"No, from Canada."
If software development were a circus, we would all be the clowns.
|
|
|
|
|
Afraid it's boldly gone where no code has gone before.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Since NextGen it's 'to baldly go where...'
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a f***ing golf cart.
"I don't know, extraterrestrial?"
"You mean like from space?"
"No, from Canada."
If software development were a circus, we would all be the clowns.
|
|
|
|
|
I prefer stringently-typed variables, myself.
Software Zen: delete this;
|
|
|
|
|
That's commendable, as long as you don't stringently stringly type.
The language is JavaScript. that of Mordor, which I will not utter here
This is Javascript. If you put big wheels and a racing stripe on a golf cart, it's still a f***ing golf cart.
"I don't know, extraterrestrial?"
"You mean like from space?"
"No, from Canada."
If software development were a circus, we would all be the clowns.
|
|
|
|
|
To weed out the truly weak, you could ask them how long they've been developing in "C hashtag"
|
|
|
|
|
In about the year 2000, after coding C++ for a few years, I saw C#. I pronounced it "see pound". I still don't know why it is "see sharp".
Alternatively, I think "see plus plus plus plus" makes more sense - it's almost a pound symbol.
++
++
|
|
|
|
|
Of course, it's just a fancy D-flat.
|
|
|
|
|
Pualee wrote: I still don't know why it is "see sharp".
Because in musical notation "#" indicates a "sharp" note: it's called an "accidental" that raises the pitch of a note by a semitone. Sharp (music) - Wikipedia[^]
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Oh, I know music, just thinking about the progression of the language:
A, B, C, C++
Of course there is D but nobody cared.
C++ implied there was something more than C (the ++ operator for instance). By why switch to music for C#? We know the C part came to attract C and C++ developers, but why on earth "sharp"?
When using the # character in coding, it was always pound, not sharp (now folks fancy it a hash tag).
|
|
|
|
|
|
Not a bad set of questions at all - nothing too narrow in there.
If not getting them to write code, it might be a good idea to ask how they would approach writing something for a stated problem. In our last round of interviews (admittedly for a junior), I set what I considered to be a super-easy coding task. I thought at the time that it would filter out a couple of idiots but hardly any candidates even got close to it.
The task was simply to take an input of a sum of money and break it into the smallest number of notes and coins possible.
The first attempt was hilarious (pretty much if (amount == 52.31) print "some answer that added up to about £48") and they didn't get much better from there.
At one point I was so worried that I'd gone OTT that I asked my ageing mother. She worked out the algorithm in half a second.
The thing was, some of these guys could talk the talk (or at least quote Wikipedia) but couldn't code their way out of a wet paper-bag so I really would go with a test of that sort.
Slogans aren't solutions.
|
|
|
|
|
Is your mother available for an interview?
Seriously, though. I think that's kind of the problem with interviews: bright people can get so nervous that they aren't able to think as quickly or clearly as they might under normal working conditions. Good/bad interview performances don't always correlate to actual skill or aptitude. That makes it tough for an interviewer.
But I appreciate the suggestion.
modified 24-Jan-17 10:44am.
|
|
|
|
|
These are pretty good questions for a mid-level developer.
What I have found to be the best way to gauge a developer's skills is to ask them to tell you about different projects they have worked on. If they don't give much detail ask if they worked on it alone, if they wrote all the code or just maintained it, if they designed the classes etc. You should be able to tell if they are qualified by allowing them to do most of the talking.
There are two kinds of people in the world: those who can extrapolate from incomplete data.
There are only 10 types of people in the world, those who understand binary and those who don't.
|
|
|
|
|
|
I can completely answer 8 out of 9 having used C# poorly in a single project 5 years ago. An that's because I don't remember Design Patterns, not by name - I always used a bunch of them even before being introduced to the concept of design patterns... When I read that infamous book I mostly thought "well, duh!" every odd page.
CALL APOGEE, SAY AARDWOLF
GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
If you think 'goto' is evil, try writing an Assembly program without JMP. -- TNCaver
"Go ahead, make my day"
|
|
|
|
|
You'll get someone good at exams,
doesn't necessarily translate to ability to create solutions from scratch.
The Asian's education departments are fighting this very weakness in their current system right now, they got plenty of kids who ace exams but are useless in the field without constant mentoring. (Those 14 year old geniuses doing PhD's - touted to be the next Einstein and will solve world peace, hunger and global warming - never heard from again.)
Ask them not "how do you ...," rather questions where they will need to suggest use of such items as you listed. If answers are vague ask for details. i.e. simple case: don't ask a builder "how to use a tape measure," ask them how they would determine the width of a doorway.
Sure there are other ways to do things, if it sounds odd ask them why they chose that way, challenge them on the got-ya's, ask why they believe their solution is the best way and what's the alternatives. (Warning: Don't play teacher and correct them - that's just a recipe to become their mentor if hired - OK to throw in the odd clue but not too much. Act like a doctor, throw in a few hmmm's and take notes - that last one will get them sweating and acts as a good stress test.
Sin tack ear lol
Pressing the any key may be continuate
|
|
|
|
|
Your questions are OK, but Software Development is about problem solving. Anyone can memorize the textbook answers to those questions, and even speak intelligently about them, but if they can't take a common business requirement and break it down into a development plan are they really someone you would want to hire?
Consider coming up with a generic business problem/requirement and ask them to describe (possibly on a whiteboard) how they would approach the problem. There are a lot of approaches to any given requirement, some better than other, but you'll learn a lot about them during this process.
If it's not broken, fix it until it is.
Everything makes sense in someone's mind.
Ya can't fix stupid.
|
|
|
|
|
Kevin Marois wrote: Consider coming up with a generic business problem/requirement and ask them to describe (possibly on a whiteboard) how they would approach the problem.
Yep, that's how I'd do it. The language and/or framework isn't important, you can always learn it when you need to.
It's more the "this is what we want to do, how would you go about making that?" kind of question that gives a real insight into how the person thinks and often opens up some good discussion points.
Ah, I see you have the machine that goes ping. This is my favorite. You see we lease it back from the company we sold it to and that way it comes under the monthly current budget and not the capital account.
modified 31-Aug-21 21:01pm.
|
|
|
|