Jump to content



No technical questions when interviewing programmers?

  • You cannot reply to this topic
13 replies to this topic

#1 Telastyn   Members   -  Reputation: 1862

Like
0Likes
Like

Posted 21 February 2012 - 07:47 PM

I've worked in a few different places across the country, and the interview process here (Minneapolis metro) is very odd. Maybe 5-10% of companies will ask any technical, logic, or program design questions when interviewing programmers. I can't stand it. How can you determine if people can do the job without seeing if they can do the job? 'Fit' is important and all, but if programmers can't program... And having done a few dozen interviews, they can't. The majority of candidates wouldn't pass the standard Silicon Valley phone screen.

What are your experiences out there in forum-land around the world? What have you seen, and what do you think should be the form of a programmer interview?

Ad:

#2 Washu   Senior Moderators   -  Reputation: 2448

Like
1Likes
Like

Posted 21 February 2012 - 08:23 PM

Word of Warning: I've never interviewed for a software development position
Word of Warning: I frequently have to interview people for software development positions.

Now that I've got the disclaimers out of the way:

I'm not sure where you're interviewing, but they may be taking your resume at face value (something I don't do, generally speaking). Fit is important though, a person with all the technical qualifications in the world is useless if they can't work with the rest of the team in an effective manner. This is actually one of my big gripes (of many) with CS/SD programs in colleges: They don't force teamwork down people's throats. So what you get is a lot of graduates who have no idea how to even work with another person.

In general, if you get to me during the interview process I'll assume most of your resume is relatively true (i.e. if you claim to be a master of C++, I'll assume you've read Learn C++ in 21 Days), until you prove me wrong. That being said I DO ask technical questions, more to see how you approach solving the problem than out of any particular interest in your solution. I'll also try and get you to socialize during it, tell me stories about your life, get to know you. I know, touchy-feely bullshit, but its important. If I'm going to have to work with you or be your boss, I want to know that you will be able to fit in the group. In many ways FIT is more important than actual skill, skill can be taught. But a person who has the wrong attitude ('oh my god, I have to use VB? I'm just going to fail this class!' to paraphrase a recent topic), will never work out, no matter how skilled they are.
In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.
ScapeCode - Blog | SlimDX

#3 Hodgman   Moderators   -  Reputation: 3232

Like
1Likes
Like

Posted 21 February 2012 - 08:27 PM

I've always gotten plenty of technical questions, and have even had to sit a written exam a few times.

I remember an article, might've been Joel Spolsky, where he mentioned that by simply asking a basic C programming question (like, reverse a string), something like 90% of candidates failed immediately, even if they looked good on paper.

At my last interview, their version of this check was to test if you knew how to program and were familiar with modern programming techniques. The former was to ask how to set the MSB on an integer, and the latter was to ask what a closure is. Apparently answering "uhh, with an 8?" and "uhh, like a lambda, a local function?" were good enough answers Posted Image

#4 Tom Sloper   Moderators   -  Reputation: 1710

Like
1Likes
Like

Posted 21 February 2012 - 08:32 PM

I saw an interesting piece that said:

The only three true job interview questions are:
1. Can you do the job?
2. Will you love the job?
3. Can we tolerate working with you?

Technical questions are definitely part of question #1.
-- Tom Sloper
Sloperama Productions
Making games fun and getting them done.
www.sloperama.com

Please do not PM me. My email address is easy to find.

#5 turch   Members   -  Reputation: 147

Like
0Likes
Like

Posted 22 February 2012 - 08:28 AM

In my most recent interview, I had one ~30 minute interview / tour of the building with no programming questions, the next day they made me an offer (fortunately for them I'm not a bad programmer Posted Image ). A friend was recently interviewing at two places at once, both involved 5+ programming tests over the course of two weeks. Go figure.

#6 frob   Moderators   -  Reputation: 2055

Like
0Likes
Like

Posted 22 February 2012 - 09:00 AM

View PostTom Sloper, on 21 February 2012 - 08:32 PM, said:

I saw an interesting piece that said:

The only three true job interview questions are:
1. Can you do the job?
2. Will you love the job?
3. Can we tolerate working with you?

Technical questions are definitely part of question #1.
I've always said those things as two rules:

1. Will you do the job well?
2. Will you fit in? (If you don't love the work you won't fit in. If we can't stand you then you won't fit in.)

Only asking questions about the second part is certainly suspicious.
Recently made a moderator, but still a regular programmer.

#7 Telastyn   Members   -  Reputation: 1862

Like
0Likes
Like

Posted 22 February 2012 - 09:38 AM

Good to hear. When I first came out to the area I didn't have professional programming experience, so ended up doing a lot of interviews. Then I was interviewing for senior level positions with only a few years of professional experience. I once I got the jobs I excelled in them, but I've also done dozens of interviews. The lack of technical questions is pervasive here. And oddly, the few places that do ask them go overboard the other way. I've had written tests, I've had (and seen given by peers) tests where they sit you at a computer for some minor coding test, I've had them give me a public web service and ask for a UI that works with it in 3 days...

I was thinking about it last night and realised that there's two main reasons I hate it. If I do take the job, I know that there's going to be at least a few people who are woefully incompetent working there that got through the screening process. But mostly I have no idea how the interview went, or how to get better at it.

With technical questions, they're mostly right or wrong. Even design questions can be debated and a consensus gained about what a good approach would be.

But the touchy feely questions have no feedback mechanism. I have no idea what they're trying to fit me to, so I have no idea how that goes. Should I just be myself? I am prickly at the best of times so put on the professional face, try to be friendly, avoid my argumentative urges and my natural tendency to hate everything. Am I doing a good job? Is that even what these people are looking for? I have no idea.

There's just the 'We don't think you'd be a good fit.' terse replies. I've asked what sort of person they're looking for and it's the standard 'skilled, able to be a self starter...' schlock that everyone wants. I've asked what sort of manager the manager is; and that occasionally provides some insight, but often results in the 'tough but fair' garbage answer.

Drives me nuts.

#8 Tom Sloper   Moderators   -  Reputation: 1710

Like
0Likes
Like

Posted 22 February 2012 - 10:01 AM

View PostTelastyn, on 22 February 2012 - 09:38 AM, said:

1. Then I was interviewing for senior level positions with only a few years of professional experience.
2. The lack of technical questions is pervasive here. And oddly, the few places that do ask them go overboard the other way.
3. With technical questions, they're mostly right or wrong.
4. Drives me nuts.

1. With an experienced candidate, a programming test probably isn't necessary. One could just call up his former supervisor and coworkers, see how good a programmer he was by their lights.

2. What governing body should rule that all companies behave exactly the same way?

3. A lot of times, the hirers are looking to see your problem-solving approach. Well, if not exactly "a lot of times," then "when it's done well."

4. The world does not owe you consistency or logic.
-- Tom Sloper
Sloperama Productions
Making games fun and getting them done.
www.sloperama.com

Please do not PM me. My email address is easy to find.

#9 sox   Members   -  Reputation: 232

Like
0Likes
Like

Posted 22 February 2012 - 10:24 AM

View PostTelastyn, on 22 February 2012 - 09:38 AM, said:

I was thinking about it last night and realised that there's two main reasons I hate it. If I do take the job, I know that there's going to be at least a few people who are woefully incompetent working there that got through the screening process.

Chances are, you will at some point be working 12+ hours per day with your co-workers. You will spend more time with them than with your wife and kids. It is vitally important for team morale and your personal sanity to weed out the jerks as early as possible.

#10 Telastyn   Members   -  Reputation: 1862

Like
0Likes
Like

Posted 22 February 2012 - 10:46 AM

View Postsox, on 22 February 2012 - 10:24 AM, said:

View PostTelastyn, on 22 February 2012 - 09:38 AM, said:

I was thinking about it last night and realised that there's two main reasons I hate it. If I do take the job, I know that there's going to be at least a few people who are woefully incompetent working there that got through the screening process.

Chances are, you will at some point be working 12+ hours per day with your co-workers. You will spend more time with them than with your wife and kids. It is vitally important for team morale and your personal sanity to weed out the jerks as early as possible.

I agree, but how jerky does someone have to be that they can't fake it for a few hours at most?

I have to think that references, looking for job-hopping, and checking with past coworkers is a far better indicator of that than an interview setting...

#11 Washu   Senior Moderators   -  Reputation: 2448

Like
0Likes
Like

Posted 22 February 2012 - 02:43 PM

View PostTelastyn, on 22 February 2012 - 10:46 AM, said:

I agree, but how jerky does someone have to be that they can't fake it for a few hours at most?
Its a lot harder than you think. Imagine yourself in the interview... so you have a few things already working against you, such as being nervous. Its a lot harder to maintain a facade under those conditions than it will be once you're hired.

Quote

I have to think that references, looking for job-hopping, and checking with past coworkers is a far better indicator of that than an interview setting...
Not really, in the US at least, there are libel and other laws that can get you in extreme trouble (as a reference) for what you say. Thus most of the time when checking a reference the conversation simply goes "Hi, did X work there?" "Oh, ok then."
In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.
ScapeCode - Blog | SlimDX

#12 Marvel Magnum   Members   -  Reputation: 143

Like
0Likes
Like

Posted 22 February 2012 - 03:31 PM

Reading the above posts, found some really nice stuff specially from Washu and Tom. And I completely agree with them. But if the topic of this post is the general thing going on for recruitment then I must say I'm surprised. Posted Image

Here in my country (India), I have never gave a single interview where I wasn't did not have any verbal/written technical test during the interview. The last one which I gave only last week had me make a double lift simulation on a 10-storey building in 3 days flat !! And I had to do that along with balancing my normal work schedule and other things. It went well and I'm looking at a better job starting next month but the point is that technical rounds should be an essential part of an interview unless you are interviewing known guys in the industry where of course your work has spoken for you already.


View PostWashu, on 21 February 2012 - 08:23 PM, said:

(i.e. if you claim to be a master of C++,
Really Washu, people say that ?!? Posted Image

#13 Washu   Senior Moderators   -  Reputation: 2448

Like
1Likes
Like

Posted 22 February 2012 - 07:29 PM

View PostMarvel Magnum, on 22 February 2012 - 03:31 PM, said:

Reading the above posts, found some really nice stuff specially from Washu and Tom. And I completely agree with them. But if the topic of this post is the general thing going on for recruitment then I must say I'm surprised. Posted Image

Here in my country (India), I have never gave a single interview where I wasn't did not have any verbal/written technical test during the interview. The last one which I gave only last week had me make a double lift simulation on a 10-storey building in 3 days flat !! And I had to do that along with balancing my normal work schedule and other things. It went well and I'm looking at a better job starting next month but the point is that technical rounds should be an essential part of an interview unless you are interviewing known guys in the industry where of course your work has spoken for you already.
The problem is that I'm generally one of the last people you'll interview with if you're being considered for a job. By the time I'm interviewing you you've usually been weeded out of all the other applicants whose skills were not appropriate for the job (i.e. all the others who failed the various technical challenges). Now, I do ask the occasional technical question, but again, its more about HOW you approach solving the problem than it is about the actual problem and your technical accuracy. I mean, I've asked, a number of times, for someone to write me a simple introspective sort. Its a great question, in fact, since very few people actually know what an introspective sort IS, although its used very commonly in your code (std::sort is typically implemented using it). How do you approach solving or implementing something that you have never heard of? That's important to me, more important than your actual ability to IMPLEMENT it. I can teach you to implement it, but problem solving skills are something you only really get through experience... i.e. trail and error. Failing at something is often the best way to learn (except skydiving).

Quote

View PostWashu, on 21 February 2012 - 08:23 PM, said:

(i.e. if you claim to be a master of C++,
Really Washu, people say that ?!? Posted Image
Its actually a lot more common than you might think. I encounter plenty of C++ programmers who claim mastery on their resume but that can't even describe the diamond problem and how you can solve it, or SFINAE. These are all topics that are part of the whole "mastery" of C++, so if you claim it, I'll probably ask you something you'll fail at. I don't claim to be a master of C++ either, mind you, I do consider myself to be an "expert" on it though.


View PostTelastyn, on 22 February 2012 - 09:38 AM, said:

I was thinking about it last night and realised that there's two main reasons I hate it. If I do take the job, I know that there's going to be at least a few people who are woefully incompetent working there that got through the screening process. But mostly I have no idea how the interview went, or how to get better at it.
While it MIGHT be true, don't make that assumption. There's always someone whose skill is such that they can consider you "incompetent" at the job you've been assigned. The mistake is thinking that you're better than them. If you go into an interview with the "I'm so much better than everyone else you have, because they're all incompetent" attitude, you probably won't get the job.

Quote

But the touchy feely questions have no feedback mechanism. I have no idea what they're trying to fit me to, so I have no idea how that goes. Should I just be myself? I am prickly at the best of times so put on the professional face, try to be friendly, avoid my argumentative urges and my natural tendency to hate everything. Am I doing a good job? Is that even what these people are looking for? I have no idea.
Fit is about personality, attitude, even how you talk, smell and dress. Its not a flat "yes/no", its generally a question of "did the interviewer get along with you well enough to tolerate you." If I leave the interview and say "good grief, I can't stand that person." then I probably won't recommend you for the position. If you're a prickly person, perhaps you should look at WHY you're a prickly person. Often the problem with prickly people is that they don't like being proven wrong. They'll go to absurd lengths to stand up for their solution, even long after its been shown to be inferior to another. If I'm the interviewer and we're discussing design and you are adamant about one position...that's an inflexibility that you generally can't afford in the real world.

Quote

There's just the 'We don't think you'd be a good fit.' terse replies. I've asked what sort of person they're looking for and it's the standard 'skilled, able to be a self starter...' schlock that everyone wants. I've asked what sort of manager the manager is; and that occasionally provides some insight, but often results in the 'tough but fair' garbage answer.
Because its not a "yes/no" question, fit is about just that "fit", and some places are like elastic, and others are more like granite. Plus, just saying "well, we're looking for you to be like X, Y, and Z" doesn't do any good. You could just act it then until we passed you, and then turn out to be a prickly dickweed.
In time the project grows, the ignorance of its devs it shows, with many a convoluted function, it plunges into deep compunction, the price of failure is high, Washu's mirth is nigh.
ScapeCode - Blog | SlimDX

#14 Marvel Magnum   Members   -  Reputation: 143

Like
0Likes
Like

Posted 23 February 2012 - 12:40 AM

Wow! Introspective sort, diamond problem and SFINAE. Never even heard of them before. But googled them out and now I am 3 more steps closer to to "expert" level. Thanks Washu. Posted Image

View PostWashu, on 22 February 2012 - 07:29 PM, said:

How do you approach solving or implementing something that you have never heard of? That's important to me, more important than your actual ability to IMPLEMENT it.
Absolutely!!

View PostWashu, on 22 February 2012 - 07:29 PM, said:

Failing at something is often the best way to learn (except skydiving).
LOL Posted Image






We are working on generating results for this topic
PARTNERS