Sadly enough, I've been ask the UDP/TCP question many times, so I have a good answer, though I have never studied either in depth. So, in theory that would be a great question. But, it is asked too often to really be of any use.
actually a great interview question is what happens when you click a link in the browser. All the steps down to how deep you understand it: through the kernel calls, DNS packets, ARP, Ethernet frames, IP routing, TCP acknowledgements, HTTP headers, MIME types, and so on.
How is that good? It's all memorization
nope, this is all about understanding the logic and how the system components interact with each other.
Besides, you can dig deeper in any direction, depending on the candidate profile. For a network engineer, understanding on the packet level is important. For a web programmer, the interaction between server and client is important (HTTP headers, MIME types etc, webserver scalability etc.). For a sysadmin, understanding of processes and interaction of applications and OS is important. All those can be derived just from a simple question -- what happens when you click on a link
Re:Technical Interviews at a Startup
by tomblomfield on Sunday January 08, 2012 @06:02AM
(#3439312)
I agree - you can memorise answers on a fairly generic level, but digging deeper in a relevant area, or talking about edge cases, exposes whether a person really understands what's going on.
besides, how can one memorize if the questions are unknown?
I absolutely agree that the main aim of an interview is to determine if a candidate is able to think in a structured and analytical way. I'm much more interested in talking about situations when you might choose UDP over TCP, rather than being able to recite the details of a particular HTTP specification