如果你正在思考为什么软件工程的面试和日常编程不一样,那你可能有兴趣读一下[Quora上的这条回答](http://www.quora.com/TopCoder/Why-are-programmers-in-the-software-engineering-job-interviews-tested-on-skills-similar-to-a-Topcoder-contest-irrespective-of-the-fact-that-the-skills-required-in-the-industry-are-entirely-different)。最根本的原因在于:面试是为了测试你在计算机技术方面的基础,所以会非常偏重算法和数据结构,因此你可能需要练习一些面试问题,从而让自己具备解决面试问题的心态。
从短期来看,你所能做的最好的准备工作就是买一块白板,并通读一遍《程序员面试金典》([***Cracking The Code Interview***](http://www.amazon.com/Cracking-Coding-Interview-6th-Programming/dp/0984782850/)),里面都是很好的建议,而且里面的许多面试问题和答案会帮助你确定问题所在,并匹配好回答模式。请参阅本指南最后列出的常用面试问题。
当然了,长远来看,我们都会死掉,所以我会把事情搞简单,说一些你绝对应该复习一下的关键概念。