我來貼點干货, FLAG的面試題,小留研究得挺透。大家看看碼工考不考數學?

来源: 2015-02-26 09:24:11 [旧帖] [给我悄悄话] 本文已被阅读:

我來貼點FLAG的面試題,小留研究得挺透。大家看看碼工考不考數學?


最后来一点干货吧,给本专业的人看
Google题目:
1. MST of a all connected graph. Need to use Fibo heap to reduce complexity.
2. Game of Life, one transition (sub O(n^2) solution).
3. String compressor that turns 123abkkkkc to 123ab5xkc. Decompressor is already written and must remain unchanged. (messy code)
4. Youtube mash design, how to do a video version of Mark’s FaceMash.

题全都没见过,reject


Facebook题目:
电话
1. Big Integer multiplication. (Optimization required, how to do 8 digits*8 digits, etc).
2. Binary tree level order traversal. (leetcode original)
3. 也是原题,不记得了

Onsite
1. Given 1->a, 2->b … 26->z. 126 -> az or lf or abf (bfs/dfs not accepted, need to use DP or some tricky method)
2. Binary tree serialization/de-serialization (这道题pinterest也问了)
3. Permutation with duplicate
4. Range maximum query, pre-processing in O(n) and query in O(1)
题答少了一道,rej


LinkedIn题目
电话
1. pow(x,n), check boundaries, O(log(n))
2. rotated binary search (leetcode)
3. hashcode() of a String in Java
4. Kth closest point to point P on a plane with N points (heap, comparator).
5. ArrayList impl without importing ArrayList, use dynamic array

Onsite
1. IsSameTree (leetcode)
2. Word Ladder II (leetcode)
3. Text Justification (leetcode)
4. how to get top 10 Exceptions for the past 24 hours in 400 machines and update every 5 minutes. General idea: Kafka + Storm. Uses sliding window, hashTable, heap. (这道题pinterest也问了)
5. Tell me in depth about the project you’re most proud of (45 mins).
6. How would you improve LinkedIn Influencer to enter international market. 这道题正中下怀,我口若悬河谈天说地,从GFW到Akamai到蓝汛ChinaCache,从比尔盖茨到李开复,从11年的茉莉花事件LinkedIn主站被墙到如何有效censorship,从网页设计一致性到本土化,和面试官一拍即合,看他当时满面红光我就知道自己有戏啦,果然隔了一天就收到Offer。


其他重要题目和技巧:
2Sum 3Sum, rotate LinkedList, minimum path sum, combinations
注重练习tree的recursion搜索, dp, greedy, two/three pointers, stack. 谷歌的题是很难刷到的,要靠运气,其他很多公司(尤其是亚马逊为首)都可以靠刷题大幅提高胜算。



比较F家onsite那天认识的大神横扫FLAG,我的实力明显还是不够,不过能去FLGT中的一个,已经是福星高照非常幸福了。
BTW,今年几家的硕士package都差不多,大约是115k base + 160-170k (RSU股票分4年 + signing + reloc),如果没有competing offer比较难negotiate。我的O家offer是114k base + 4000股期权分四年 + 15k signing + 10k reloc,在等LinkedIn发official offer之前,成功的想办法把deadline延长了两次,变成Standing offer,如果不这么干,他们是愿意涨一点base的。

  按照我个人的理解,学生被大公司分两类,第一类是“名校GPA3.8以上”的,第二类是else。作为else的代表,我不得不说,GPA3.8以上真的很难,第一类们确实确实有特权先被考虑,但本文正是献给广大else们的。

  在这里我想说一说老中,我所说的老中是指现在40-50岁,30多岁的时候从国内直接跳槽过来的中国软工,错了,是 我们这儿 软工。我去qualcomm和amazon onsite都是栽到了老中手里。我现在也不明白为什么只有中国人看不上中国人,而人家阿三都是只帮阿三。我在qualcomm最后一个面的老中问我,有没有学过OS,我说我自学的。他说你没有做过那些project也说你学过?我说你可以问啊,看看我会不会。结果这B问了我一堆我回来google都查不到的鬼问题,还问我how to simulate garbage collector in C? 看我不会又得意洋洋的反问我,你没学过OS还想找SWE的工作? 我就说我的课都是application level的。他操着浓重的不知哪的方言腔说了一句让我一辈子都忘不了的话:If I wanna build a applicaiton, I will go to hign school and ask them "Who wanna do some funny stuff?". Why I hire you? 我擦,我当时真想一口大浓痰吐他脸上然后大骂我去你大爷的。但是我还是忍住了,虽然我从他眼睛里也能看到我眼里冒出的火光。Amazon也是一样的,在其他面试官都被我折服之后,他又问我为什么EE的不好好学EE,CS的基础课你都没学过云云....我当时以为我面的可以,因为他的题被我做完了,我还挑了他一个错误。事后我感觉挑他的错这一下让他决定毙我的,要不然,就是和我竞争的人过于NB了。

  今年的形式比较好,很多朋友都有offer,抑或实习offer。大大小小我也拿了几个,最后还是签的LA的一家网络公司。拒掉Oracle应该是我今年最疯狂的一件事了吧,去年的这时候,oracle和我还是天上地下呢。主要原因其实就是不喜欢。在pay差不多的情况下,我宁愿选择我喜欢的project和我喜欢的boss。Oracle把我分配给了一个IIT毕业,在组里做了近20年的三哥,不,是三叔。我曾经发过毒誓一辈子不给阿三卖命,就像Russell Peter说的那样:Chinese and Indian can not do business. Oracle 确实稳定,但是SWE就是要靠跳槽吃饭的。我对每个面试过我并且有姓名的人都一一进行了linkedin research,发现三五年一大跳的人才能混出头。在一个地方蹲着的,还在那蹲着。这就正好验证了我前文说的那句话:“其实面试的最高奥义就是厚着脸皮吹牛逼,并用丰富的吹牛逼经验保证不被拆穿即可。”

  终于结束了留学生的身份,此时感慨万千。我们不远万里飞过来找寻自己的美国梦,结果发现美国梦其实是TMD美国白人的梦。所谓自由与民主,我们都没有真正感受到,感受到的只有被边缘化的孤独感。我们带着父母对我们的期望,和父母一辈子的存款,却要寄人篱下,只能捡美国人吃剩下的和不愿意吃的。等到身份稳定之时,父母也已苍老,我们生活在地球的两端,这是谁想要的生活?

  唯一聊以慰藉的是,我还年轻。