What frustrates me about this is not even these questions, specifically, but which companies seem to use them.<p>If Google wants to ask crazy algorithm questions, that&#x27;s at least sort-of reasonable. There&#x27;s at least a hypothetical chance your work will involve that knowledge.<p>But I&#x27;ve interviewed at companies who&#x27;s entire tech stack is a simple CRUD web app, or a simple RESTful mobile app,  who&#x27;s so-called &quot;big data&quot; is less than a few gigabytes in total, and they <i>still</i> want to throw algorithms and brain teasers at me. These same companies then post some inane blog post about the &quot;developer shortage&quot; and how &quot;we can&#x27;t find talented people&quot;.<p>If these companies could actually find the candidate they&#x27;re testing for -- this hypothetical hyper-intelligent developer who had a IBM-Watson-like memory of every CS algorithm and it&#x27;s application in every language, that person would get completely bored working there and quit in 3 months or so. <i>These companies could never retain the type of person their own hiring process exclusively selects for</i><p>---<p>Hiring doesn&#x27;t need to get fixed, companies need to get honest about what they are and what they actually want. To restate this in 1-10 scale : Many companies delude themselves into believing they are a 9 or 10, and are trying exclusively to hire 10&#x27;s (and hypothetical 11&#x27;s that don&#x27;t exist).<p>When in reality, most companies are in the 4 to 6 range, they only need people in the 4 to 6 range, but are rejecting 7 and 8s type candidates, because they aren&#x27;t a 10.<p>This process itself isn&#x27;t broken, so much as the businesses holding the power in the process are delusional about...everything (what they are, what they need, who could provide that, etc).