|
|
|
|
|
by hcatlin
3464 days ago
|
|
I'm sure this happens, yes. But, that's not what's going on here, IMHO. Asking a person to traverse and modify a linked-list (a very common problem) or to implement a B-tree are not 'tech outside their job' Most of these interviews are more like math problems than anything a practical developer would encounter. Shit, if these interviews were "What do you think of node?" or "What is Go's concurrency model?" I think experienced people would do fine. |
|
No. No one in their daily jobs implements a linked list or B-Tree. There are predefined libraries in the languages or a user created library that people use. Do you really think every person in the company has his/her own version of a linked list in the same code base? This is a fallacy perpetuated time and again. (I'm not against these type of questions, but they don't represent someone's true ability)
Building a product, app, project requires application of this knowledge: eg., I need to design a distributed data store, should I use hash map? What about collisions? Should the collisions be resolved by chaining (linked List) or another map? What kind of data am I storing? Can that be exploited to make this more efficient, synchronization of data across nodes (?), etc..
Many of these interviews completely overlook someone's design ability and harp on some straightforward (and some obscure) topics which IMO has little to no co-relation to someone's ability as a software engineer.