We have been recruiting a lot lately. I try to stick to the basics, and sometimes get surprised by the responses I receive. A lot of seemingly successful candidates -- who can take any J2EE question you throw at them -- fumble when the convenience of their favourite data structures are taken away from them. For example, a simple Map implementation seems to give them a tough time.
I am surprised by one of the answers I receive quite a lot when asked about data structures. That, "I don't remember -- it was a long time ago" (that they were 'taught' about it). In other words: they plead "not guilty!". Now, even though we are not recruiting for a programmer position, so to speak -- such an answer does spark a bit of outrage within me. And then I ponder: what are we doing in our colleges? Are we getting too driven by the shiny-white things like BigData, BigAnalysis and IoT and what not -- that we don't really worry much about the basics of computer science. First of all: is the essence of computer science even put forth to the students? That it's a science...that one has to develop a scientific mindset! I believe, that's something above all the big college tag/big technology/big offer/big robot that one develops.
Even after college, do they ever go back and revisit the basics they had been 'taught'? Or at least think about them?
One of the candidate we came across recently could not proceed on a small programming problem because we took away the luxury of being able to use HashMap from him. When I asked why couldn't he create a Map of his own, the response was: "I am not sure what language are Java Maps written in."