For all of you that read candidates' sample code: Please provide some examples of what people are looking for when they ask this.
Most of the code I've written in my professional life (C#, Java, PHP) has been pretty domain specific, and I rarely run across something I have to solve using things I learned while earning my computer science degree such as implementing sort algorithms, tree traversal, and the more engineering-oriented aspects of programming.
While I have dealt with complex issues in some (mostly web) applications like database caching or transaction management for example, it's typically not something I implement to fix, rather it's something I resolve by gaining a tighter grasp on whatever API I'm using (nhibernate).
I use design patterns everyday and can talk about them, but again they're not things that I've specifically implemented. The 'complex' problems I most often have to deal with involve designing the domain in an object oriented way. I feel like it would be inappropriate to hand in 5-6 classes and associated interfaces. Typically the programming challenges that I'm faced with that seem like they are very complex at first eventually get refactored to decently OOP'd solutions, and then, they don't look very complex at all.
Is it proper to throw a class hierarchy in my code samples, or should I just rehash some of the more 'clever' things that I did in data structures classes in college, proving that I know how linked lists and such work?
Apologies for the wall o' text.