<story><title>Get that job at Facebook (2012)</title><url>http://www.facebook.com/notes/facebook-engineering/get-that-job-at-facebook/10150964382448920%22</url></story><parent_chain><item><author>ritchiea</author><text>I hope this doesn&apos;t sound facetious, but what I hear over and over again is that places like Facebook have difficult technical interviews that are algorithm focused to create more false negatives than false positives because they work on hard problems.&lt;p&gt;What are some concrete examples of hard problems tech companies face that require novel solutions and why are algorithms problems the best way to find the people qualified to solve them?&lt;p&gt;I know these seem like a naive questions, but these two things seem to be taken for granted in every interview discussion (or even if someone argues against them it&apos;s mostly a &quot;this is how I find good people&quot; argument). I think it&apos;s pretty clear this isn&apos;t the only way to find good people, I&apos;d just love to hear more about the thinking behind this interview style and what it really means to these companies when they say &quot;we deal with hard problems.&quot; The only concrete example I&apos;ve ever been given is someone at another big Valley company speaking about difficulty of master-master writes between data centers at a large scale. Which certainly qualifies but I&apos;d love to hear what other &quot;hard problems&quot; are out there.</text></item></parent_chain><comment><author>btilly</author><text>&lt;i&gt;What are some concrete examples of hard problems tech companies face that require novel solutions and why are algorithms problems the best way to find the people qualified to solve them?&lt;/i&gt;&lt;p&gt;This is best answered by awesome example.  See &lt;a href=&quot;http://research.google.com/people/jeff/&quot; rel=&quot;nofollow&quot;&gt;http://research.google.com/people/jeff/&lt;/a&gt; for a list of some the problems that one Google programmer met, and solved.  Many of said problems were novel at the time, though many have now learned the answers that Jeff came up with.&lt;p&gt;These kinds of problems and answers are simply not understandable to people who don&apos;t understand algorithms.  And you can tell people without a deep understanding of algorithms how to solve those problems, and they will consistently get it wrong.</text></comment>
<story><title>Get that job at Facebook (2012)</title><url>http://www.facebook.com/notes/facebook-engineering/get-that-job-at-facebook/10150964382448920%22</url></story><parent_chain><item><author>ritchiea</author><text>I hope this doesn&apos;t sound facetious, but what I hear over and over again is that places like Facebook have difficult technical interviews that are algorithm focused to create more false negatives than false positives because they work on hard problems.&lt;p&gt;What are some concrete examples of hard problems tech companies face that require novel solutions and why are algorithms problems the best way to find the people qualified to solve them?&lt;p&gt;I know these seem like a naive questions, but these two things seem to be taken for granted in every interview discussion (or even if someone argues against them it&apos;s mostly a &quot;this is how I find good people&quot; argument). I think it&apos;s pretty clear this isn&apos;t the only way to find good people, I&apos;d just love to hear more about the thinking behind this interview style and what it really means to these companies when they say &quot;we deal with hard problems.&quot; The only concrete example I&apos;ve ever been given is someone at another big Valley company speaking about difficulty of master-master writes between data centers at a large scale. Which certainly qualifies but I&apos;d love to hear what other &quot;hard problems&quot; are out there.</text></item></parent_chain><comment><author>svachalek</author><text>In my experience, I&apos;ve seen 3 kinds of jobs that demand engineers who can solve &quot;hard&quot; problems:&lt;p&gt;1. Obviously hard, and needs no explanation e.g. self-driving cars.
2. Basic problems done at ridiculous scale. Quickly matching keywords to web pages is not a hard problem; quickly matching keywords to every web page on the internet is a hard problem. 
3. The problem is that (forgivably or not, depending on circumstances) we have no idea what we&apos;re trying to do.</text></comment>