3 ms·
I'm an almost-graduated computer engineering student. I had a relatively pleasant interview last week with a whiteboard component which I thought was fair. The
by jakeinspace 8y ago
I'm an almost-graduated computer engineering student. I had a relatively pleasant interview last week with a whiteboard component which I thought was fair. The interviewer asked for a Fibonacci function, an easy problem that still allowed me to show that I understood some more advanced concepts. I gave a basic recursive solution, was asked to critique it, explained how it was inefficient in time and space, and would blow up the stack (without tail call optimization). Then I thought I'd mention dynamic programming as a possible solution to the time complexity, but one that would still cost a ton of stack space. Finally, I gave the iterative solution, and explained how it was more efficient, and how you could use it to pre-compute a lookup table.
The interviewer propmpted me along the way, it felt like a friendly conversation. The fact that it was an easy problem prevented me from stressing out, but I still felt like I was able to demonstrate some academic ideas.
I was always pretty decent at standardized tests as a kid, and this argument over whiteboarding reminds me a bit of that. I don't think it's useful for gauging general software engineering skills, but it might have some value for evaluating communication. It also feels like the sort of thing that software engineers with a strong academic background tend to enjoy more than those with more practical/industry experience, but that's just anecdotal.