What are the "Real World" programming interview questions that everyone keeps talking about?
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
I've never had to administer technical screens and interviews until recently. And I was saddened at the trivia questions one of my colleagues came up with -- concerning facts that have no application to what we actually do. A trained monkey can do what we need done - heck I had never even touched it when I started on the current project. :-O We've been interviewing primarily for SSIS developers, so I've been asking questions related more toward determining a candidate's breadth of experience rather than depth of knowledge. The best question is asking the candidate to describe a project they are particularly proud of.
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
I've only given a handful of tech interviews. What I did was pick some easy technical questions that anyone should know, since nobody really likes being put on the spot. I was more interested in how the person thought it out, and way more interested in their personality. I've been on a lot more than I've given though. Very few of them are real world and more academic-type questions, such as "can you find an anagram of blah blah blah", which you just Google that nowadays. Very few tech interviews care about personality.
Jeremy Falcon
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
I've been on both sides of the table. There is no set pattern for an interview that works well with everyone. I usually ask these: What was a project that got you excited and why? How do you react to people criticizing your code/documents? What do you do when you get stuck with a problem you can't solve? What are your strengths and weaknesses as a developer? Do you favor Webforms or MVC? [Edit: the latter includes "and why?" :-)] Much better than technical questions since people will inevitably start discussing technology and how they used it.
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
1. Write a bubble sort in your favorite language, you have 10 minutes. 2. In configuration management terms what is a "trunk" directory and how does it differ from a "tag" directory. 3. Who is Tom Demarco.
Rage against the narrative.
"To Build a Fire" - A dystopian novel about project management, and I am the dog. -
1. Write a bubble sort in your favorite language, you have 10 minutes. 2. In configuration management terms what is a "trunk" directory and how does it differ from a "tag" directory. 3. Who is Tom Demarco.
Rage against the narrative.
"To Build a Fire" - A dystopian novel about project management, and I am the dog.4. Spell "Bjarne Stroustrup" backward. 5. Implement a Turing Machine in XSLT. Have it compute the value of
6!
. -
1. Write a bubble sort in your favorite language, you have 10 minutes. 2. In configuration management terms what is a "trunk" directory and how does it differ from a "tag" directory. 3. Who is Tom Demarco.
Rage against the narrative.
"To Build a Fire" - A dystopian novel about project management, and I am the dog.6. Which can you do faster: a. describe why you are probably not the right person for this position b. describe why you are better off in the long-run not to have been offered a job.
«I want to stay as close to the edge as I can without going over. Out on the edge you see all kinds of things you can't see from the center» Kurt Vonnegut.
-
1. Write a bubble sort in your favorite language, you have 10 minutes. 2. In configuration management terms what is a "trunk" directory and how does it differ from a "tag" directory. 3. Who is Tom Demarco.
Rage against the narrative.
"To Build a Fire" - A dystopian novel about project management, and I am the dog. -
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
Question(s) from me: - What was the most interesting (to you personally) problem you worked on, in your professional career? How did you go about addressing it? What more could be done to improve the solution you implemented?
-
1. Write a bubble sort in your favorite language, you have 10 minutes. 2. In configuration management terms what is a "trunk" directory and how does it differ from a "tag" directory. 3. Who is Tom Demarco.
Rage against the narrative.
"To Build a Fire" - A dystopian novel about project management, and I am the dog.Ernst Iliov Stavro Blofeld wrote:
Write a bubble sort in your favorite language, you have 10 minutes.
You have no idea how often I've seen programmers get the bubble sort wrong. Even the examples on some expert websites are wrong.
The difficult we do right away... ...the impossible takes slightly longer.
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
1. First focus on Coding Ability of a candidate. Ask questions such as write a function to convert an array into a linked list. 2. Next focus on Logic. Write a function to find the number of occurrences of a sub-string inside a given string. 3. Next focus on Design. Write code to demonstrate the Command Pattern.
-
I've been on both sides of the table. There is no set pattern for an interview that works well with everyone. I usually ask these: What was a project that got you excited and why? How do you react to people criticizing your code/documents? What do you do when you get stuck with a problem you can't solve? What are your strengths and weaknesses as a developer? Do you favor Webforms or MVC? [Edit: the latter includes "and why?" :-)] Much better than technical questions since people will inevitably start discussing technology and how they used it.
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
divyamistry wrote:
I've had 7-10 years of experience
In my opinion it's not about experience at all... I've known people who had been doing the same for ten years and were outmatched in knowledge by juniors. My previous company hired someone with around thirty years of experience with various technologies at various companies, but he wasn't able to write a simple WinForms application! Needless to say we let him go after a month. For my current job I was asked to find the next number in a sequence, to reason about what would happen to a drop of mercury and a candle in an elevator if the elevator fell down a shaft (how the hell should I know, the only thing I know about mercury is that it was used in thermometers) and to write some code that anyone could look up on Google. It's all to "test how you think about problems." And then you get hired and you find out that most people don't think at all. Or that they know what happens with a drop of mercury, but they have no clue what happens inside a database or ORM. I recently read a post by a guy who paid promising job candidates (about $200) to conjure up a small application over a weekend and decided to hire them based on that. That shows some real world experience and it's a hell of a lot cheaper than hiring someone and finding out they aren't what you're looking for. Unfortunately I haven't been hired like that yet :sigh: Maybe more important is your personality. How well do you go with the team? What is your willingness to learn? Etc.
Visit my blog at Sander's bits - Writing the code you need. Or read my articles at my CodeProject profile.
Simplicity is prerequisite for reliability. — Edsger W. Dijkstra
Regards, Sander
-
I'm going through interview cycles for a Software Engineering type job right now. I've been reading a few forums and blogs about general interview advice/rants from others. One of the things a lot of people keep complaining about is something along the lines of, "I've had 7-10 years of experience, and they wanted to test me on so-and-so algorithm which I could've googled in two minutes. Why test memorization? Why not ask questions about / in-depth discussions on how to solve difficult real world problems?" My question for those of you who have been part of plenty of interviews, what sort of questions qualify as "real-world non-trivial problems"? I guess the question is also directed at the Sr. Software Engineers who have complained in the past that the interview didn't test their "experience"; what type of questions would have highlighted your "non-trivial real-world experience" instead of asking about specific data structures or algorithms or implementation details?
Often those complaints then turn out to be about Kadane's or some other trivial algorithm. "Woe is me, they asked me how to implement a queue using two stacks, I just couldn't remember" - coder license revoked. Memorization my ass, just reinvent it on the spot. If they've forgotten heap sort so thoroughly so they don't know enough to reinvent it, then their working knowledge of algorithms is just shit - can they be trusted to pick the appropriate algorithm? Perhaps they have spent 7-10 years living under a rock software patterns book? If they complained that the interviewer wanted them to write a VRP solver on the spot, fine, I get it, that goes a bit far. On the other hand, that's a simplified version of a real world problem that someone may well have experience with. Not that ridiculous questions are never asked on interviews, far from it. But don't take the whiners too seriously. They are, for obvious reasons, over-represented on the internet. The interviews I've had so far were all perfectly reasonable (even if the job wasn't - and isn't that a more serious problem?).
-
Ernst Iliov Stavro Blofeld wrote:
Write a bubble sort in your favorite language, you have 10 minutes.
You have no idea how often I've seen programmers get the bubble sort wrong. Even the examples on some expert websites are wrong.
The difficult we do right away... ...the impossible takes slightly longer.
I have never, ever, needed to do a bubble sort in my professional career as a software engineer (15+ years). If someone asked me that question, I would leave the interview, after flipping them the bird.
-
I have never, ever, needed to do a bubble sort in my professional career as a software engineer (15+ years). If someone asked me that question, I would leave the interview, after flipping them the bird.
-
No, I think it is a stupid question.
-
I have never, ever, needed to do a bubble sort in my professional career as a software engineer (15+ years). If someone asked me that question, I would leave the interview, after flipping them the bird.
+1
M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.
-
No, I think it is a stupid question.
+1
M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.