Best programming interview I've had. The first step was a home problem that took an hour or two to complete. The on-site interview centered on a pair programming session adding new features to the home problem, on a computer, with an IDE. I felt this was a much more realistic way to see a candidate code as compared to the typical board-coding problem or logic puzzle.