本节概述了硅谷公司的面试过程,仅仅是个情况介绍,大家可以跳过去往后看。
除了直接申请面试以外,一般说来,还有两种途径来获得面试的机会:**由现在的雇主推荐,或者通过LinkedIn。**虽然前者会快一些、更尊敬一些,但后者很可能是大部分应聘者所走的路径。事实上,每天都有无数的招聘人员趴在LinkedIn上,他们唯一的工作就是寻找和接触有可能换工作的员工,**所以一定要保证自己的信息是最新的,而且要多交人脉、多请别人来认可自己的技能,并且要把你所具备的技能、做过的个人项目或者对开源软件所做的贡献加到个人页面里去。**
最初的接触一般是通过电子邮件进行的,然后招聘人员会给你打电话,大概了解一下你的技术背景。如果你的技能和他们正在寻找的技能一致,他们就会安排一次**电话面试**,在电话面试时,你可能就会被要求在一份共享的在线文档里编程。那么你就会知道,这份文档很可能没有任何代码补全和句法高亮的功能。电话面试会持续半小时到45分钟,如果你表现不错,就会被邀请去参加现场面试。现在如果没有电话面试、或者在电话面试之外,你可能还得去参加一个小的编程项目。
**现场面试**由几次面试组成,总体会持续45分钟到一个小时。这些面试会和电话面试非常像,只是问题会更难——不过能亲眼见到面试官多少算是有所补偿。现场面试数周之后,所有反馈应该都被看过、招聘决定就会做出,招谁不招谁也就定了。如果你没拿到offer,也要明白面试是一个随机的过程,包含运气的成分,不妨把它看作是一次学习的经历。可能你还会想起布莱恩·阿克顿(BrianActon)面试Facebook和Twitter不成、后来成为WhatsApp联合创始人的故事。
理论上讲,用哪种编程语言并不重要,但你面试需要用某种特定语言来完成的工作时除外,比如iPhone开发者或者前端开发者。我强烈建议你用正在面试的公司所使用的一种编程语言来编程(以及练习面试问题)。