To be honest I hate most whiteboard questions. At my current job I have thought about what type of questions I would want to ask (even though that is not my responsibility), and the two that seem to be overlooked everywhere is code maintainability and testing.
So something like: given you are building a web api with 50 routes across 10 storage objects (tables or what not) how would you go about organizing the code, services, etc.
Also given this function or class show me how you would test it to verify it works correctly.
That's my two cents at least.
Yeah, I'm pretty ambivalent about whiteboard interviews myself, since I don't think they accurately express the kinds of skills that most developers need. Data structures & algorithms do come up from time to time on the job, but not as frequently as software engineering skills.
At the same time, at least when I was in university, everyone was preparing for this style of whiteboard interview, so at the very least it'll be what the people I'm interviewing are expecting. The company policy isn't really mine to change :P
That is fair. After looking at 11 year old spaghetti php your perspective of what is important as a developer changes from algorithms to maintaining and writing easy to understand and modify code. Though we did get a petabyte data file in recently and parsing and processing that was one spot where complexity actually has an impact.
I think this would pretty rough for most computer science undergrads to answer. It requires quite a bit of experience to correctly answer. The second question I like though, probably more important than implementing a binary search tree.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.