http://www.mitbbs.com//article_t/JobHunting/32816677.html
发信人: walain (walain), 信区: JobHunting
标 题: 报offer,谢mitbbs,发100包子
关键字: facebook,google,面经,offer,walmartlab
发信站: BBS 未名空间站 (Wed Oct 29 16:22:42 2014, 美东)
签下Facebook,我漫长的找工作经历终于告一段落。这里写下点经历回馈大家。我是CS
PhD new grad。做的方向和工作没什么关系。曾经在一家大的硬件公司做过intern,
然后拒掉了他们的 return offer。
我初期投简历的时候,除了Google和一些小公司,基本上收不到任何回应。当时心急火
燎,没有任何正面反馈,心情很是沮丧。后来都到了要毕业,打算停止投简历的时候,
却忽然来了很多的onsite,最终转化为了最终接受的offer。甚至微软和亚马逊给我
onsite的时候,我都已经接受了别的offer,不打算去他们家面了。现在想想,应该是
赶上了公司的招聘季,所以才会有机会。这里要鼓励大家一定要有信心,不拿到满意的
offer绝不罢休。另外保持一个积极的心态也很重要。我刚刚开始面试的时候心里比较
没谱,总觉得自己不会的很多,所以面试时是一种诚惶诚恐的心态。后来逐渐改善,自
我暗示说看上去很难的题目,其实也没什么,只管会什么说什么。最后虽然还是有很不
会的题目,可是表现会好很多。
我的准备工作基本上是做leetcode。后来觉得leetcode熟悉了,就做了一些Topcoder。
我觉得除了写代码熟练外,分析解决问题的能力,经验,甚至感觉还是很关键的。可能
如果只刷leetcode的话,最后就没有解决问题的训练了。这样在面试时如果碰到没见过
的题目,恐怕会比较不舒服。在这点上,我除了做topcoder外,还经常积极地看论坛上
和qq群里大家碰到的题目。大家聊聊集思广益,还是很有收获的。这里要感谢各位牛的
面经和讨论,我从中受益匪浅。
另外如果可能的话,找个同伴一起准备可能效果会更好。一来可以相互鼓励,二来可以
讨论出真知,三来也可以扩大自己的信息源。如果实在没有,那根版上或qq群里的朋友
讨论也是挺好的。
总结一下面过的公司:
Pocket Gems:店面悲剧
Groupon:内推,店面悲剧
Epic:offer
Google: 内推,offer
WalmartLabs: offer
Facebook: 内推,accepted offer
Rocket Fuel: offer
废话少说,下面写下几个公司的面试流程和面试题。
Epic:
他家比较啰嗦,刚刚开始的时候有什么online test,又是测智商,又是测人格的。 然
后感觉他家在面试的时候给的待遇是最好的。还有人说是坐头等舱去面试的。如果能拿
到他家的onsite,我觉得基本就跟拿到了他家offer一样了,如果不是表现太水的话(
我表现的就很水)。他家的onsite基本上是在向你推销自己公司。技术面只有一轮,感
觉还是在向你介绍自己在做什么的。
Google:
这里的经验很多了。我的经验也没什么特殊的。标准的5轮面试,其中一个是system
design,一个是thesis discussion。其他三轮是coding,感觉也不是很难。可能是我
比较幸运,没有遇到难题或者是变态的面试官。
WalmartLabs:
这家面试是最累的。onsite时一共有5轮,每轮一个小时。有四轮coding,一轮system
design。不过这家给我的感觉还挺好的。里面有个中国人大哥,非常帮忙。他家的
offer据说要negotiate,不要不给。当时我没很打算去这个公司,所以也没怎么
negotiate。
Facebook:
我在这里跟别人遇到的经历不太一样,一共2轮coding,2轮system design,1轮
behavior。题目不难,面试官也很nice。我感觉他们也没有很看重bug free。我有一轮
写的code有bug,可是自己在test的时候看出来了,现在看来也没有太大问题。
Rocket Fuel:
一共四轮面试。一轮system design,3轮coding。感觉他们还是挺有诚意的。面试结束
时还送了些小礼物,最后发了offer还一个劲推销他们自己,想让我接他们的offer。可
惜最终还是没去。
最后把除了fb外,遇到的面试题放在一起列一下:
Coding problems:
1. Given an array of object A, and an array of object B. All A's have
different sizes, and all B's have different sizes. Any object A is of the
same size as exactly one object B. We have a function f(A, B) to compare the
size of one A and one B. But we cannot compare between two A's or two B's.
Give an algorithm to match each A with each B.
2. Given a binary tree of integers, give an ascii representation of the tree
so that people can visually see the structure of the tree. An ascii
representation is a single string, so that printing out this single string
gives the required tree.
3. Topological ordering
4. Given a graph, there are some nodes with degree 1. These nodes are called
terminators. There are a several terminators in the graph. There are single
/multiple paths from each terminators to each other terminators. Compute the
average path length of all such paths.
5. Implement an LRU cache and how to distribute it
6. Implement a hash table and how to distribute it
7. Find the longest palindrome substring in a string
8. Given a mostly sorted array, where the numbers differ from their sorted
position by at most k slots, give an algorithm that sorts the array in less
than O(nlog n) time.
9. Given an array a = ['x', 'b', ...., 'c'] of n chars, and b = [0.1, 0.2, .
.., 0.01] of true probability. Write a random generator that generates the
chars according to the probability.
10. Edit distance
11. Validate UTF-8 string
12. Longest increasing subsequence
13. Given an infinite number (int 32) stream, find the median of the stream.
14. Given an array of numbers, generate all its subsets.
15. Given an array of numbers, generate all its permutations
16. Given two trees, one is very big, one is small, check if the smaller one
is a subtree of the big one
17. Given integer a and b, find out the string representation of a/b. For
example, if a = 1, b = 3, the output should be 0.(3).
System Desgin:
1. Design tinyurl system
2. Design unique id generation system
3. Design a least frequent used cache
--
评论
发表评论