I am a java and J2EE developer. I received an email from a job consultant about an opening for an eCommerce company that sells books online. The consultant asked whether I work on Algorithms and Data Structures.
Software, whether Computer Science or just plain old hacking, is nothing but algorithms and data structures.
I hate it when they ask this type of question, because it means that they don't really know anything, but they think they know what the correct answer is. They don't like my answers, despite years of experience.
Of course, lots of people don't like my answers anyway.
Sometimes the only way things ever got fixed is because people became uncomfortable.
To say you worked in "algorithms and data structures" is silly. Its the theory behind the algorithms and data structures, that is taught. To know which class should be used based on access needs may score you a point, but it just something most developers can memorize.
So... this question should lead to a theoretical discussion about different types of sorting algorithms, different types of searching algorithms, different implementation details for link lists, trees, bags, queues, stacks, etc.
IMHO, if the interviewer is expecting the "memorized" answer, he / she will stop you anyway. On the other hand, if you are lucky, this could lead into a very detailed and sometimes religious debate on the topic.
Henry [ August 01, 2008: Message edited by: Henry Wong ]