I've worked in the software industry for about a decade now, but I have a penchant for being extremely terse. So in interviews when asked questions with a specific answer I do fine, but when there really isn't any concise answer I tend to lose the plot a little bit.

Just as an example I get asked "whats the difference between C# and c++" all the time. I could talk about the differences all day or I could just say "Well X is y and A is b" and it would take like 10 seconds but wouldn't be complete and doesnt demonstrate my knowledge at all.

Should I start with what an electron is and how transistors work then continue into how we leverage those to create a "binary" protocol which can be used to blah blah blah computers yada yada operating system blah blah blah typing et cetera et cetera

I guess what I'm asking is how much is enough? I don't really care about their time as I tend to be very annoyed by this type of question, but I'd rather not waste mine.

  • Don't overvalue concision. If the question doesn't have a short answer, it is probably not intended to produce one. Keep if focused, but part of what they want to know is how you think. – keshlam Nov 3 '16 at 12:29
  • Honestly anyone who asks: "whats the difference between C# and c++" isnt worth the time it requires to explain it. – Raoul Mensink Nov 3 '16 at 13:04
  • 1
    c++ increments c by one. C++ is a language. :-) – jimm101 Nov 3 '16 at 13:11
  • I feel like a question of that nature is quite indicative of the interviewer's knowledge, so, in that sense, I doubt your answer needs to be very detailed. – pay Nov 3 '16 at 13:23
  • 2
    @RaoulMensink that's a needlessly harsh judgement. While it's not the greatest question, the answers would probably reveal a lot about candidates' understanding of the two languages, as well as their thinking about language desigin in the abstract. – user45590 Nov 3 '16 at 14:01

Don't worry too much about being concise or giving a well-organized answer.

Obviously the perfect answer would be a neat, structured assessment of the main differences between the two languages. But coming up with this answer on the fly is extremely hard.

As an interviewer, I don't have a problem with answers that wander--as long as you actually know what you're talking about. If you don't know, don't try to fake it. But if you have lots of knowledge, but have trouble structuring it, a wandering answer doesn't necessarily hurt you.

Hardly anyone can think on their feet fast enough to come up with a great answer to that question, nor is it a question you can really prepare for. The bottom line is that few candidates will give great, focused answers to questions like this. The important thing is that you demonstrate what you know, not that you get your thoughts perfectly organized. You are being tested on software development knowledge, not your ability to come up with a catchy sound bite.

A few pointers, though, to help you answer broad questions better:

  • Don't rush. It's ok to take a few seconds to think. Resist the urge to just start talking.
  • Ask for clarification. If a question is really broad, it may not be clear what they really want. A follow-up question can help you understand the question (while also giving you a bit of time to think). I might ask, "The difference in what sense: language design philosophy? What they are suitable for? How one has to approach development?..."
  • Acknowledge the limitations of your answer. I might start off "There are many differences, and it would be hard to summarize them all in a few minutes. But one difference I find particularly significant is...also, another thing is...". It's better to make it clear up front that you don't claim this is a systematic answer to the question.

With questions like that I draw with broad strokes, and then clarify if they ask me to. I try and break everything down to fundamentals. It gives a good solid base to explain from if they ask. A lot of the time they won't ask unless it's a technical interview, they're just trying to filter and get a general impression of you.

Terse and concise has many merits, I'd much rather hear a clear 10 second explanation than one that wanders all over the place, so like everything else, show your strengths, downplay your weaknesses.

  • +1 (or answer++). I like to start top down for questions like this with an opening such as "At a high level, the difference between C# and C++ ...". That allows the interviewer to ask for more detail if she wants it or move on if you provided sufficient detail. – Laconic Droid Nov 3 '16 at 13:21
  • 3
    "I'd much rather hear a clear 10 second explanation than one that wanders all over the place"...If the OP can come up with a strong 10 second explanation that shows knowledge, great. But that is hard to do. As an interviewer, I would rather hear someone wander all over the place but make some good points, rather than give a short, inadequate answer. – user45590 Nov 3 '16 at 14:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.