{"id":2494,"date":"2016-07-29T11:58:42","date_gmt":"2016-07-29T11:58:42","guid":{"rendered":"http:\/\/nayrb.org\/~blog\/?p=2494"},"modified":"2016-07-29T03:28:08","modified_gmt":"2016-07-29T03:28:08","slug":"interview-questions-technical","status":"publish","type":"post","link":"http:\/\/nayrb.org\/~blog\/2016\/07\/29\/interview-questions-technical\/","title":{"rendered":"Interview Questions: Technical"},"content":{"rendered":"<p><a href=\"http:\/\/nayrb.org\/~blog\/2016\/07\/27\/types-of-interview-questions\/\" target=\"_blank\">I&#8217;ve been writing about interview questions recently<\/a>, most recently about &#8216;behavioural&#8217; and &#8216;Situational&#8217; questions.  If you recall:<\/p>\n<p>\u2018Behavioural\u2019 questions ask \u2018Describe a time when you encountered a problem like this\u2019.<\/p>\n<p>\u2018Situational\u2019 questions ask \u2018Given this situation, how would you solve it?\u2019<\/p>\n<p>\u2018Technical\u2019 questions ask \u2018Solve this defined problem for me.\u2019<\/p>\n<p>Today, I want to talk about &#8216;Technical&#8217; questions.  This includes two types:<\/p>\n<p>&#8216;Problem Solving&#8217; questions, where the interviewer asks a technical question, and expects you to go through some process to solve it, similar in some way to what one would do in a job in the field.<\/p>\n<p>&#8216;Knowledge&#8217; questions, where the interviewer asks specific questions about your field of study or work.  For a programming job, they might be about memory management or data structures, for HR, they might be about what is legal or accepted practice in the jurisdiction in question, etc&#8230;<\/p>\n<p>(Note that these generally don&#8217;t include questions about a resume, which I would group under the &#8216;Behavioural&#8217; umbrella, as the interviewee is expected to tell a story about them.)<\/p>\n<p>So what is an interviewer looking for in these questions?<\/p>\n<p>For both of these questions, the interviewer is looking for command of the subject matter and problem solving ability.  There&#8217;s a whole smear of possible questions between these two extremes.  (&#8216;What is an array&#8217; to &#8216;Design LinkedIn&#8217;.)<\/p>\n<p>For basic knowledge questions, it would probably suffice to re-read a textbook, or read (and understand!) a glossary of the topics one would be interviewed in.<\/p>\n<p>For &#8216;Problem Solving&#8217; questions, answers are generally more involved.<\/p>\n<p>Generally, the interviewee is given a problem statement:<\/p>\n<p>&#8220;Write a program which counts from 1 to 100, and outputs &#8216;Fizz&#8217; when the number is a multiple of 3 and &#8216;Buzz&#8217; when the number is a multiple of 5.&#8221;<\/p>\n<p>This problem statement may or may not be well defined, so it falls on the interviewee to ask questions until it is adequately defined:<\/p>\n<p>&#8220;Does it also print the number when it is a multiple of 3 or 5?&#8221;  &#8220;Is proper syntax required?&#8221;  &#8220;What language?&#8221;<\/p>\n<p>(This also makes sure that the interviewer and the interviewee are on the same page.)<\/p>\n<p>I like to draw a large diagram, and\/or write down my assumptions in the upper-left corner when doing problems like this.  Makes things explicit, people can see what you&#8217;re thinking.<\/p>\n<p>One of my best bosses described his best programmer as &#8216;having a reason for every single line of code&#8217;.  Talking through one&#8217;s code as it&#8217;s being written can help with this.<\/p>\n<p>So:<\/p>\n<p>Write down assumptions<br \/>\nDraw a big diagram<br \/>\nState the overall algorithm<br \/>\nWrite down the solution, while talking about it<br \/>\nThink about corner cases, run an example through in your head.<\/p>\n<p>Next time, we&#8217;ll talk some other types of questions, the kinds that are known to be not as predictive, but that interviewers still ask anyways, for various reasons.  Stay tuned!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I&#8217;ve been writing about interview questions recently, most recently about &#8216;behavioural&#8217; and &#8216;Situational&#8217; questions. If you recall: \u2018Behavioural\u2019 questions ask \u2018Describe a time when you encountered a problem like this\u2019. \u2018Situational\u2019 questions ask \u2018Given this situation, how would you solve it?\u2019 \u2018Technical\u2019 questions ask \u2018Solve this defined problem for me.\u2019 Today, I want to talk &hellip; <a href=\"http:\/\/nayrb.org\/~blog\/2016\/07\/29\/interview-questions-technical\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Interview Questions: Technical<\/span> <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[37,30],"tags":[],"_links":{"self":[{"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/posts\/2494"}],"collection":[{"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/comments?post=2494"}],"version-history":[{"count":5,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/posts\/2494\/revisions"}],"predecessor-version":[{"id":2508,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/posts\/2494\/revisions\/2508"}],"wp:attachment":[{"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/media?parent=2494"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/categories?post=2494"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/nayrb.org\/~blog\/wp-json\/wp\/v2\/tags?post=2494"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}