【留学生求职网】体验:Facebook篇
Google、Microsoft和Yahoo都是去年的事情了,接下来说说今年的吧。其实我在豌豆荚非常爽,跟身边的设计师和工程师合作都很愉快,所以唯一能够诱惑我去面试的就只有Facebook了。最初接受Facebook面试邀请的原因并不是追求它的offer,而是我就想了解一下Facebook是怎么面试的,有什么是值得豌豆荚招聘借鉴的。
过去在百度做面试官,只是面试而已,公司招不招得到人我没什么感觉。我觉得公司招不到人就招不到人咯,我们没必要扩张得那么快啊,先专注于做好手头上的项目再说嘛。豌豆荚其实不是着急要招前端工程师,我们还是坚持只招一流人才,只不过长期发不出offer还是让人感觉招聘有问题——我们浪费了大量的资源在面试上,发不出offer意味着回报率低,因此我们总要想办法研究如何提高回报率。
回到正题上来,我选择参加Facebook的面试,就是想看看他们是如何选拔人才的,他们所使用的题目是如何设计考点的,是不是设计得比我们的要好。因此,在收到FacebookHR的邮件后,我回信说愿意聊一下,然后跟他约了一个时间进行电话沟通。因为Facebook总部在美国西岸,所以之后的电话沟通和电话面试都约在了早上8:00。尽管这导致他们要晚一个小时下班(按朝九晚五算的话),不过HR也很通情达理地接受了。(我猜大多数工程师都不会采用朝九晚五的正常作息时间吧。)
HR在电话里先简单介绍了一下Facebook现在的情况,然后说明这是MenloPark总部的职位,让我确认如果顺利应聘的话我会愿意到美国去。接着HR问了我两个很基础的CSS问题:displayblock和inline有什么区别?position有哪些取值?我觉得HR能够问这样的问题对于工程师来说是很爽的事情,因为纯粹的小白就被过滤掉了,也不需要浪费工程师的时间来面试。(我在之前的文章中说到过,在中国大多数面试前端工程师职位的候
海归求职网(www.haiguiqiuzhi.com)-专注留学生海归求职培训辅导服务
选人无法回答这两个如此基础的问题,不知道在美国是否也如此。)随后HR问我还有没有什么不明白的,或者关于Facebook想要了解的,我说没有了。HR的最后一个问题是「你为什么选择Facebook?」我当时心里想的是,「是你主动联系我的,我没想过这个问题哦」。于是我跟他说,「我暂时没有答案。我现在在豌豆荚工作很开心,不过我也乐意多地了解Facebook。」
电话沟通后,HR给我发了两道puzzle,选做其中一道就可以了。两道题目都是前端相关的,其中一道需要设计一个简单的算法,另一道则需要支持移动设备触击交互。这种解puzzle的面试方法我不是第一次遇到了,4年前申请Google的WebDeveloper职位时也遇到过类似的exercise,只不过题目只有一道,没有选择的余地而已。相比起4年前Google的exercise而言,这两道puzzle的考点更加update。(4年前的exercise还需要考你如何做圆角和背景渐变,现在都是用CSS3搞掂的了。)
我花了一周的时间完成了一个puzzle,搞掂了算法设计和界面实现,连unittest也都写了,然后提交给HR。HR在review的结果出来后,把我介绍给另一位HR,说她会帮我安排接下来的面试。第一轮面试感觉有点像Google的,主要由3道题目构成。题目的考点设计得很好,基础知识能被覆盖到,常用技法也需要用到,但又绝对不需要某一方面很高深的知识。(设计得不好的题目往往是依赖于面试官很熟悉的一个难点,如果你不知道这个难点,或者你的理解跟面试官不一样,你就完蛋了。)
第一轮面试的最终通话时间为90分钟,我猜这意味着我做得不够好,因为如果以Google的标准来衡量的话,45分钟解3道题才算及格。经过后面几轮面试我才发现,原来Facebook面试一般是要求60分钟解2道题。第一轮的面试官之所以给我加了1道题,估计是因为第2道题我做得不好,所以他相当于换了一道题给我做。面试结束,面试官又问了之前HR问过的问题,「你为什么选择Facebook?」我还是那样子回答。
海归求职网(www.haiguiqiuzhi.com)-专注留学生海归求职培训辅导服务
面试一个星期后,HR邮件跟我说,我通过了上一轮面试,接着要安排下一轮面试。第二轮面试感觉跟第一轮差不多,包括长度和难度。只不过这次就是60分钟2道题,估计是因为我2道题都解出来了吧。面试结束时面试官又问那个问题了,我决定反过来问他是否喜欢Facebook的工作。他说Facebook的工作很好,周围的人都很聪明,能够从他们身上学到东西,同时公司提供一天三餐,福利好到觉得自己被宠坏了。我其实不是很在乎福利的部分(豌豆荚又不是没有一日三餐),我更在乎的是人是否聪明,合作的过程中他们是否总能教会你一些你过去不知道的事情(这是我现在在豌豆荚拥有但离开就可能失去的部分)。随后我跟他说,我在乎的是能否跟聪明人一起工作,听他这样说感觉Facebook不错。
又过了一个星期,HR邮件跟我说,需要安排我到美国面试。我一开始对这件事也不特别在意,觉得那你就慢慢安排吧,有人报销机票让我到湾区旅行就是好事情。在随后的电话沟通里面HR跟我说,因为今年的H–1B签证配额已经花出去一半了,如果按照这个速度估算的话可能到5月底签证配额就会花完,所以希望我尽快到美国面试。(如果签证配额花完了,有没有offer都没意义了。明年4月才能申请明年的配额,申请成功也要等明年10月签证才生效,就算公司很想要你,也只能先安排你在海外办公室工作一年。)于是我就连忙办签证5月下旬飞往美国参加面试,因此也就有了我之前那篇《三藩市湾区一周游》。
4轮面试安排在一天内完成,Facebook委托旅行社安排好往返机票和两晚住宿,随后我就出发了。因为害怕迟到,又因为美国郊区的公交又是一小时一班的,所以面试当天我早早就起床了,结果发现酒店门口是长期有出租车的,打车到Facebook后等了一个多小时才到原本约定的面试时间。HR在见到我后先把我带到micro-kitchen让我拿吃的喝的,并且问我那么早来是不是没有吃早餐。我说确实没有,然后她就让我拿一些食品做早餐。(其实我应该在酒店叫早餐的,因为Facebook允许每天报销最多$75的餐饮开支。)随后
海归求职网(www.haiguiqiuzhi.com)-专注留学生海归求职培训辅导服务
她把我带到用作面试的会议室,给时间我解决早餐,并且跟我简单说明了当天的安排:早上2轮面试,结束后她会来带我去Facebook餐厅吃饭,然后下午还有2轮面试。
总体上来说,4轮面试的形式还是一样的,每轮都是60分钟解2道题目。所有题目都是前端相关的,HTML+CSS+JS都会考到,不过不涉及HTTP。最后一轮的面试官有点特别,他先问了一个很古怪的CSS问题,然后又跟我讨论了一个跟前端不相关的编程问题。之所以说他那个CSS问题古怪,是因为在现实中大家都不会那样写CSS,但他写出来了问你会显示成怎样,不是非常熟悉CSS标准细节的人又很难完全答对(我也有答错了的地方)。至于第二道题,他说他是突发性想出来的,他自己也不知道最优解是什么,就是想跟我讨论一下能够如何优化,我就跟他讨论了几种可能的优化方式。所有他又说如果把常数k改为可以变成任意大的n怎么办?我就说n的问题能够分解为n/2的问题,因此能够通过二分法来优化。
通常情况下,如果由于面试而进入一家公司的话,HR所做的只是把你从A地带到B地,保证你顺利完成面试。如果是朋友带你参观公司则会很不一样,他会带你去看有特色的东西,并且告诉你这个好玩那个有意思。Facebook的HR给人的感觉更像是后者,她向我介绍Facebook墙上的涂鸦,带我去天桥上看HackerSquare全貌,并且告诉我每次hackathon开始时大家就会聚集到HackerSquare上来。除了HR以外,也有一些面试官会提及他们喜欢的Facebook特色。这让我觉得Facebook里面还是有不少员工挺喜欢这家公司的。
面试结束后,HR跟我聊了一下,告诉我如果有offer的话接下来会需要什么。根据之前Google面试的经验,我猜Facebook会不会也要我提交一大堆的材料,HR说只要提交申请签证所需的学位证就可以了。之后HR让前台帮我叫出租车,在等待的过程中前台还很好人地问我是否需要拿喝的,需要的话可以在大堂冰柜里面拿。
海归求职网(www.haiguiqiuzhi.com)-专注留学生海归求职培训辅导服务
随后的周末是美国的亡兵纪念日,周六到周一连续放假三天,我则利用这个长周末去参加湾区的各种好友聚会。周一中午HR打电话来说要发offer了,待细节确定后下午再打电话给我告诉我具体的数字有多少。我当时就在想,难道Facebook的面试官和HR周末都工作?这个效率很高呀。只要面试官稍微拖一下,周五的面试就必须等到下周才能有结果。而且确定offer细节估计也要经过几个人审批吧,节假日发offer就意味着大家都要在节假日处理工作了。
总体上来说,Facebook面试过程中对候选人的关怀做得很好,效率也不错。让我「大开眼界」的是面试题,原来真正好的面试题并不在于它有多难,而在于它有多简单,简单到熟悉这个领域的人一下子就明白到你在说什么以及想问什么。能够进入Facebook的人应该都觉得面试不难,至少跟中国的面试对比起来如此,那是因为Facebook把觉得面试有点难的人都过滤掉了,而中国那些很难的面试反而没什么区分度。
文档来源:专业留学生海归求职培训辅导机构海归求职网AceCareer
因篇幅问题不能全部显示,请点此查看更多更全内容