脸书11/6号 Uday Onsite, 昨天收到 hr 的口头 offer
先说下timeline:
9/5号内推 - 9/12号收到 Hello from fb - 9/13号确定日期 - 9/19号收到confirm电面日期的邮件 - 10/6号电面 - 10/25号收到Onsite - 11/6号Onsite - 11/9号要了ref - 11/14 hr电话通知 offer
然后是大家最关心的题目:Uday还是正常的三轮背靠背,其中两轮纯算法,一轮 bq + 算法,每轮45分钟
第一轮:国人小哥,人很好,然后题目是利口要灵儿,利口妖儿司, 利口耳药药,三题均秒之,这一轮我感觉肯定是 strong hire 了
第二轮:国人大姐,bq:Introduce yourself, most interesting project, what's your team do, what's your responsibility, what technique do you use, how you experience any challenge, what can you do better, tell me about a situation when you hold different ideas with your teammates, how do you deal with that,what can you do better, what skills do you want to learn in the future(真亏我还能记住这些...)
算法题是利口巴巴
第三轮:印度小姐姐,我感觉她在试图拖我时间,题目是 k nearest points + sparse vector dot product
然后补充一些干货和吐槽:
1)今年的情况想必大家都知道,对 fb 来说,基本最难的一关在于过简历关。至于怎么才能过我也不太清楚,我有个同学投了 fb 然后杳无音讯,发邮件给我们学校 hr也无果,结果愤而转投Google,
现在正在 team match
2)吐槽一下我们学校的 hr,她在邮件里说的是“feel free to ask me any questions”, 然后她的实际行动让我觉得她应该在后面再加一句 “but I won't answer any of them”...
3)我当时不太自信,和 hr 电面约了十月初,幸运的是最后收到了回应。大家最好不要这么干,我有个同学也约得十月初,然后再也没有消息了...
4)电面贴见http://www.1point3acres.com/bbs/thread-296330-1-1.html
5)不得不说 fb tag 下的题质量确实高,比亚麻的题好多了
6) 人生苦短,我用 Python...用了 Python 之后,一天20题不是梦...
7)因为今年的形势问题,所以大家以后要早点投哈,今年亚麻的例子已经很清楚的说明这一点,g 家也是早点面的话一般没那么难。Remember, you are never prepared, so start earlier.
7)Onsite的酒店和航班都可以 argue 的, 航班被我从 UA argue 成 delta 了,时间还短。但是我只顾着航班没注意酒店在 sunnyvale,贼远还贼破,和我一天 onsite 的几个哥们有住 Palo alto和 Hilton Garden的,后悔啊
8)让我说一下为什么第一轮面完之后我觉得这轮稳了:开始面试的时候是大家待在一个地方(叫”The Zone")然后面试官先后来领人的,我是倒数第三个被领走的。在去往面试房间的路上,小哥和我说我们迟了5分钟,所以接下来的问题会稍微简单一些。然后第一题其实是只要求返回一个 list 就可以了,然后 bfs 秒之。然后第二道,假装思考了一下,然后有秒之。做完这两道还有15分钟,小哥说我这还有一道题,可能你来不及写了,就说说思路吧。他说完题目之后,我分析了下思路,然后和他说我想试试能不能写出来。最后应该是写出来了,应该也是 bug free。
9)第二轮我被那些 bq 给问的神志不清,然后最后写拿到 easy 题的时候没写出最优解,而且她也问了一个很迷的问题,how do you test you code,解释了半天才知道她是要我写comprehensive 的testcase...
10)第三轮我感觉印度小姐姐在拖我时间。在做第一道题的时候,我介绍了两种思路,然后她就抓住用 heap 的那种方法开始疯狂的 why。先问为什么 O(nlongk),然后问为什么插入 heap 是 logk,heap 是怎么实现的(答逻辑上是一个二叉树,可以用数组实现),这么实现的为什么是 logk,是平均还是 worst 是 logk,(答可以用self-balanced 的 tree),又问 how to keep a self balanced tree(答红黑树,答到这里我已经觉得有点不对了)。然后 insert说完,又问 remove 为什么也是 logk?好不容易她不问了,我开始写代码了,然后 python 对于 max heap 的实现是 heappush(list,(-distance,points),结果她开始问-distance 干什么用的,为什么这样 logk实现,我只好有给她重新解释了一遍为什么 insert 和 remove 是 logk。然后这道如此简单的题做了30分钟,后面只有15分钟。然后第二题的时候小姐姐还是不紧不慢的写题目和 test case,按照剧本应该是“用 list 表示--vector 很 sparse 怎么办 -- 用 hashmap -- 其中一个比另一个长很多怎么办 -- binary search” 这样几步的,结果说完 hashmap 就没时间了555...
11)可以看出,有些轮不是最优解并不是大问题,只要保证 bug free 就都还好(当天面试的另一个哥们也是 bug free 但不是最优解)。还有就是和面试官沟通交流相当重要,既要解释清楚你的思路,又要不耽误太多时间,写完之后自己主动跑test case,甚至可以每一个代码块边写边跑写完之后想想有什么edge case怎么处理,最后确定没 bug 之后主动向面试官说明你算法的时间复杂度(如果他之前没有问过的话)
12) 刚面完我其实感觉很糟糕,觉得妥妥跪了,甚至到 hr 要 ref 的时候我都觉得不稳...然而结果如大家所见,这充分说明了 fb 的 hc 是按照学校来的,所以才会出现地里有些人面的很好也要了 ref 最后还是挂了的情况,就像很早之前就有人在说 fb 快招满了,hc 所剩无几但还是有人源源不断的电面和 onsite一样. 这也是为什么我建议大家早投的原因,早投的话你们学校的 hc 还比较充足,bar 不会那么高,等到你们学校很多人都拿了 offer,那 bar 就爆炸了(在这里为 CMU 等神校的同学默哀)
13)最后说一下楼主的背景,本科物理,master美东某藤校CE专业 (还不是 cs),零基础转专业,项目一年半,期间自学 C++,Java, Python。由于第一学期刷题不够去年秋招没找到实习,今年年初也没收到 oa上亚麻的大船,最后暑假只有美国某不知名小公司实习。 然后今年秋招的时候唯一拿的出手的就是 GPA 4.0 + 一刷400(Java) + 二刷250(Python), 最后Onsite 前fb tag 过了两遍,特意过了一遍利口前100(本来是打算200的,时间来不及了)面经过了一遍。我心里很清楚我能拿到 fb offer 应该算是运气占了一半吧,所以大家都要对自己有信心, 毕竟连我这么水的人都有可能拿 fb 的 offer...
然后下面是楼主刷题的Python代码,包括 fb tag 加 amazon tag 加前100道加某些在面经里出现但是不是 fb tag下的部分题目(比如高频的 bst to double linked list), 并且有之前某个很火的fb面经总结帖的pdf, 那里面几乎所有的题目我还分析了时间和空间复杂度。顺便求点大米
最后祝诸君武运昌隆~
补充内容 (2017-11-17 02:23):
关于小公司实习其实是我同学他那个组走了一个人,急需一个人顶上,又正好和我的技术栈比较接近,就跑去实习了,所以其实不具备什么参考价值哈 |