3 ms·
Cool, okay that sounds pretty reasonable. Although I've successfully interviewed candidates without even asking them about trees, and they turned out just fine.
by napoleond 13y ago
Cool, okay that sounds pretty reasonable. Although I've successfully interviewed candidates without even asking them about trees, and they turned out just fine. I think there is a general tendency (and I don't intend to make assumptions about your specific case) towards overestimating the level of computer science knowledge required to crank out operational code for 99% of programming jobs. I think it's important for teams to have that knowledge within them, but not necessarily replicated through every individual member. (I know, I know, "A players" and all that... but the best teams I've known or been a part of, in programming or otherwise, had a couple of A players and a lot of B's who had the potential to be A's.)
EDIT: I'm more distressed by the number of applicants I've come across who've never written an SQL query, or have no idea what a database schema should look like (never mind noSQL stuff). I generally prefer working with programmers who understand and appreciate big picture design principles over the ones who sweat the details (because in my experience the former are usually able to pick up details pretty quickly, while the latter are not always able to appreciate the big picture design decisions being made) but in bigger teams there is presumably room/requirement for both types.
- waps 13y agoHow do you know SQL and not know what a tree is ? How about we ask a simple SQL design question that you can't answer without knowing about the datastructures : what operations does an index accelerate, and which are unaffected and why ... How do you answer that without using the word hashmap/hashtable ?
- napoleond 13y agoIt is entirely possible to use a database without understanding its internals. Look, I'm not encouraging incompetence--not by a long shot--I'm just challenging the assertion that everyone who "writes code" (the words 'potatolicious used, which started this sub-thread) needs to have the same knowledge base. I've worked with a lot of academics who write code for math and stats without any real computer science knowledge (including no more than a rudimentary understanding of the most basic data structures). I have a business mentor who makes millions of dollars with a piece of legacy web software he wrote himself--I'm certain he could tell you that certain fields are indexed in the DB because the SQL performs better that way, but I doubt he would use the word hashmap/hashtable at all and that doesn't undermine his credibility in my eyes one bit. I have friends who write embedded code all day but couldn't write an SQL query to save their life; that is obviously fine for what they do, and it doesn't make them any worse of a programmer. My example in the parent comment was obviously relating to web programmers, where the necessity of being able to write a usable SQL query is of far greater importance than the ability to explain how the database is actually executing that query. All I'm saying is that if we are able to deflate our own self-importance just a little bit (and accept the idea that the role of an employer might also be to act as a mentor), suddenly the pool of qualified applicants becomes bigger.