DEV Community

Discussion on: On Technical Interviews

Collapse
mohamed3on profile image
Mohamed Oun Author

I get that they're important, definitely. But they are nice to haves, not essential for most software jobs. You can make a decision on which data structure to use based on their high-level definition/documentation, no need to get to fine details.
So the main test on if you can do a job well is based on mainly trivial nice to haves, and not in any way representative of your real-world performance.

Collapse
dubyabrian profile image
W. Brian Gourlie

You have to remember that it's not exactly trivial from the interviewer's perspective either. How do you determine over the course of a few hours that a person is worth the investment of a software engineer's salary? This is especially hard when you're hiring people right out of school.

The fact of the matter is, people coming right out of school have no real-world experience, generally speaking. While having candidates implement data structures on a whiteboard or recall the exact runtime complexity of a non-trivial algorithm is not going to gauge real world experience, having them solve novel coding problems is a way to gauge their thought process and problem solving skills. This involves knowing when and where to use appropriate data structures, and at least being able to speak to their performance characteristics at a high level.