Interview questions are largely irrelevant to the main job. When was the last time you needed to code from scratch a mergesort in your job? A binary tree? A LinkedList?
Sure, there's some value in asking those questions - can they problem solve, can they communicate their solution effectively, etc... I just think there are way better ways to find out whether a candidate is suitable for a job than to ask them to code up an algorithm they haven't had to do since CS 101.
The kinds of technical questions I find more effective are:
* How does a cache work?
* When would you use a HashMap/Dictionary/Hash/Object over an array/slice/collection?
* How would design an HTTP API to do X
* How would you design a database table to do Y