2014一些FLG面经

发信人: byday (眉飞色舞), 信区: JobHunting
标  题: 中年马工的跳槽路
发信站: BBS 未名空间站 (Thu Aug  7 17:16:46 2014, 美东)
 
呵呵,从版上学到不少东西,我也把我的经历写出来,希望能对大家有帮助。
 
背景:
名校 PhD + 10 年 EDA (非internet)工作经验。
 
跳槽原因:
公司遇到太多politics,部门90%都是印度人,觉得没多少上升空间了。其实这10
年,公司部门对我都不错,所以我呆了这么久。
 
跳槽过程:
准备了2,3个月。从6月开始投简历,7月末决定去 Facebook ,期间:
1)。Phone interview
Cloudera,Facebook,Google,Linkedin,Snapchat
2)。Onsite
Cloudera Facebook Google Linkedin Snapchat
3)。Offer
Cloudera Facebook Google Linkedin
 
Snapchat 据了,我感觉更多是culture不fit,我有种大叔装嫩的 感觉,周围大多是比我小10几岁的小年轻。而且我加入的可能性不大,因为有家有口 了,很难relocate到la。
 
准备材料和面试经历:
我都签NDA了,所以不能讲具体的题目。但是只要准备了常见的问题,大部分问题都能
解答,我没遇到什么特别难的问题。我准备的材料主要是recruiter发的材料,版上的
一些面经,glassdoor的面经,当然还有了leetcode,careercup,geeksforgeeks,etc
,但是主要是准备了leetcode上的一些题。但是design的题很活,关键是和
interviewer的交流,他如果给什么hint,一定要jump on it,因为重要的是给出他想
听的solution,而不是这个solution本身有多好。底下这个link不错,可以点左边的
tab看看其他的design题目:
 
其实除了做题,和interviewer的交流非常重要,同样的solution,不同的人,
interviewer肯定会给不同的feedback,因为这个很主观。所以,你要表现的
passionate,pleasant,还要easy to work with。你要make interviewer happy,因
为是你在找工作,你在求别人,低调点总是不错的。
 
整个过程中,我觉得很难的一点就是,我工作这么多年,base已经挺高了,而相关的经
验一定没有,想要说服这些hot的公司招你,短时间内还不能直接上手,是很不容易的
事。linkedin的hiring manager,人非常好,就对我说,我想要的东西,java,
hardoop,hive什么的,你一点都不知道。我觉得说的很对,呵呵。
 
而更难的一点是,在我这种position,很难下决心去准备。因为有份不上不下的工作,
稳定轻闲舒适。很多人觉得混混就算了。这个就是ymmv了,取决于你有多大的决心离开
,取决于你在现公司有多不爽。我就是当时破釜沉舟了,觉得再混下去是浪费生命。真
决心准备了,也不难。想想我们中国人高考,出国吃了那么多苦,不就是为了分好工作
吗?现在机会就在眼前,准备一下有多难?
 
最后的package还不错,facebook给的最早最有诚意,我就决定去facebook了,我一度
很想去linkedin,觉得hiring manager和做的方向很好,不过还是没去。cloudera给的
股票并不吸引人,而google又太大了。
 
其实中国人在美国混大不易,我在现在公司还可以,也管人招人了,最后因为politics
和行业的原因再次出来闯荡,其实本身就是一个挫折,不管拿了什么样的offer。
 
 
carlos_geek 发表于 2014-7-9 08:36:30
 
Amazon电面
 
发个面经,求点大米,现在这积分好多帖子都看不了。
今天下午的Amazon电面,2轮。感觉不太好,题目大都是没有自己做过的,感觉都不难,没做过总有点虚。
第一面:
先聊简历。然后聊题。
1. 一个数组,里面只有一个数出现基数次,其余都是偶数次,找出那个数。 XOR和count每一个二进制位上的值做求余运算两种方法都提了。(这个是唯一做过的)
2. 同样,一个数组,里面只有一个数字出现了偶数次,其余全是基数次,找出那个数。
刚开始说用hashtable, 然后让我用constant space。我总往二进制上面想,就没往排序上想,觉得排序时间复杂度比较高。面试官看我方向不对,就把我往排序上引,我就说了用排序可以做,时间复杂度O(nlogn)。说了三个排序,我比较了下,我说我会用quicksort。然后说了下怎么找出那个数通过排序。(即:排序之后,相同的数都是连在一起的,然后遍历一遍,遍历的时候边走边数,然后就可以找出那个出现偶数次的那个数了。可以参考leetcode 的count and say。)
 
3. coins make change. 这个题听过,没自己做过。写的recursion,被面试官找到了一个count-example。因为刚开始就没想把所有组合都找出来,就直接从大面值往小面值走,后来面试官提醒才发现有些case不能cover。最后没时间了就说了可以从所有组合中找出最小的,通过recursion。(此题是算法导论贪心章原题,用dp)
 
第二面:
也是先聊简历。然后聊题。
1. 两个log file,找出两个files里面重复的line。他提供了接口,然后让我根据他的接口写出implementation。这题我直接用了HashTable。然后让我可不可以用其他的数据结构,我说可以用一个hashfunc把每个line转换成一个integer,然后用array记录是否访问过。这题就这么过了。
2. 一个图书推荐系统,users can be friends。 我被要求去返回一个user所有的friends推荐的用书和他friends的friends的推荐的图书。提供getFriends()和getBooks()的接口。我说用图,BFS处理,遍历头两层就行。写的时候忘了处理重复的书,后来加上去的。最后他对我的算法提出了几个问题,因为我为了找到头两层的节点,把标准的BFS小小改了一下,然后稍微解释了一下,信号不太好,也不知道他听明白没有。
 
两个面试官我都厚着脸皮问了我表现怎么样,俩都说pretty good,不知道真的假的,求不坑。
 
求on-site, bless me.
 
 
-----------------------------------------------------------------
 
Amazon On-site面经 carlos_geek 发表于 2014 .8.1
 
发给on-site面经回报下地里的各位朋友~
先介绍下背景吧,本人中南部水校CS master毕业,水GPA,没有任何工作和实习经验,简历也没有什么亮点。Amazon的面试机会是通过地里朋友内推得到的。
 
电面的面经已经发过,电面之第二天就拿到on-site了。时间是在7.18。
 
很标准的流程,先是pizza lunch,接着是4轮interview。
 
1st round: 一个白人,先是聊了下project,然后一道coding题,找到距离一个节点k的所有节点。这个直接node bfs就可以解决。这一轮很基础。
 
2nd round: 一个印度小伙,上来就是题,没有behavior question。
第一题设计手机通讯录用什么数据结构,这题用Trie解决,然后让我实现了Trie的search method。
第二题是关于集合intersection的,有两个集合,要求找出在第一个集合出现p次,在第二个集合出现q次的所有元素。这个用hashtable就能解决。
第三题是求the occurences of a substring in a string。我说用KMP和Suffix tree都可以解决,然后然我选择一种方法coding,果断用了KMP。-google 1point3acres
这一轮coding量挺大的,不算难但也没那么简单吧感觉。
 
3rd round: 一个同胞,这一轮面的是设计题。首先聊了下简历,让我介绍了一下我简历上一个关于设计的project。
然后就是让我design一个elevator。设计题总感觉只要说得有道理就行,我就不说我的设计了,google应该有很多。最后面完题跟他聊了聊,他给的意见是设计题对于. From 1point 3acres bbs
new grad要求不是很高,但是要注意不同的需求还有和面试官的交流,能说出一个合理的设计就OK。
 
4th round: 一个白人manager,应该是bar raiser。开始问了很多behavior和简历的问题。然后是一道coding一道设计题。
coding题是valid words of letter combinations,就是leetcode上的题稍微改了一下。写完之后问了如何改进,我想了想说因为用的是recursion,如果有. From 1point 3acres bbs
额外条件的话可以添加pruning。还可以通过cashing the result来improve。
设计题是关于amazon recommendation system的,如何通过history data来进行recommendation。我提到了可以用类似于LRUCache的结构获得最近的
历史数据,然后根据各个产品的销量来进行推荐。还有如果用户可以提供feedback的话,也可以利用feedback来推荐。然后问我如何获取一个recommendation
rank list。我想了想说可以对不同影响因素设定权值,然后计算进行排序就可获得。
这一轮感觉不是很好,第二个设计题感觉答得很烂,基本就是自己想到哪说到哪。所以面完之后感觉要跪。
总结一下这次面试过程中得不足吧。
1. 面试前没有研究Amazon leadership principle,感觉behavior question挺多的,建议大家还是好好研究一下,我之前准备把这个完全忽略了。
2. 对于没有遇见过的题目有点慌张了,最后一个设计题达得比较混乱,没什么条理,后来想想如果冷静一点应该可以达得差不多的。
 
运气不错,等了一个星期还是给offer了。整体感觉题目还是得多刷,我觉得我能拿到offer很大程度上因为我coding很熟,我leetcode刷了不下5 6遍了,CTCI和PIE两本书也过了很多遍。当然不同的人也有不同的方式,多刷题只是个人意见。
 
最后要感谢一下剑痴大神的内推,也谢谢地里各位朋友的面经。希望大伙都能拿到心仪的offer~
 
对了,还有一件事情想请教一下大伙,今天和recruiter聊了,给的是标准的new grad的package,没有competing offer有机会negotiate吗?
还有就是有没有什么好的team推荐啊?
 
后续:
    ohmystill 发表于 2014-8-1 23:01
    楼主大牛 leetcode刷了这么多…………
    PIE 是哪本书 求问楼主
 
 carlos_geek 发表于 5 天前:
小水啦  背景太差   所以只有拼命刷题呗   我觉得leetcode就是第一遍比较慢   后来就是越刷越快的   第一遍大概用了3到4个星期吧   也不太记得了   后面就是一个星期或者几天就能刷一遍   一般就是有面试前都会刷的比较勤
 
 
 
 
 
发信人: littleapple2 (little_apple), 信区: JobHunting
标  题: FLAG rej/offer 求比较
关键字: flag
发信站: BBS 未名空间站 (Sun Aug  3 00:08:09 2014, 美东)
 
今年在板上潜水良久,受益匪浅,特来报offer报题求指导.
先post一下现在还记得的面试题
 
word ladder
 
Minimum Window Sub-string
 
quadtree merge
 
coins permutation/combination
 
multiply two big number
 
swap bits in an integer
 
read4k
 
regular expression match
 
median in two sorted array
 
egg drop problem
 
remove all duplicates in place for a give array
 
cycle detection in linked-list
 
max contiguous sub-array
 
3sum
 
c++ virtual function, virtual inheritance, template partial
specialization. (I said I am 'proficient' in C++ so he said a lot in
depth)
 
compiler concepts, like tokenizer, syntax parser, code generator
 
TCP vs UDP, Thread vs Process, Mutex vs spinlock, deadlock vs
livelock, give examples
 
BST, compare AVL and Red-black, then describe rotation operation in AVL
 
reverse linked-list, iterative and recursive, follow up, estimate
space usage for recursive method, take x86 stack
frame(parameters,return address,ebp,local variables) into account.
 
design: producer-consumer queue, follow up, how to achieve fairness
among producers(FIFO)
 
design: distributed search engine
 
 
本人MS+1年tier 2公司经验,只面了FLAG,情况如下
 
L: rej, 两轮店面皆是三哥,被一个叫M**sh的黑了黑了黑了!!向 recruiter
argue 无果!!!!!F***
 
F: offer, 165k (估计会match G), 自由选组
 
A(Seattle): offer, 150k(final offer, 知道有FG offer后涨了点,recruiter说已尽
力), ads组
 
G: offer, 195k, ads组
 
首先在此特别感谢 所有国人大哥(F,G,A 家的)  在面试中的鼎力帮助,本人以后一定
发扬此优良传统.
也特别感谢在本人来美3年来给予我极大挑战的三哥,希望你们不要越来越黑!
 
目前本人在FB和GOOG间纠结,希望前辈们能讲讲 感受/经验/教训/未来职业发展. 小弟
在此望各位不吝赐教了. xiexie
 
 
 
发信人: echoccxx (echo), 信区: JobHunting
标  题: FLAG面试总结
发信站: BBS 未名空间站 (Sun Jun 22 00:53:37 2014, 美东)
 
因为之前发过贴,背景就不赘述了,具体说说怎么准备还有面经吧。
 
骑驴找马,一月底开始刷leetcode,到三月中第一个面试,刷了一遍半吧,明显觉得写
第二遍的时候思路清晰多了,code也比第一遍的简洁。其他的就是每家面试前争对性的
看面经,能看多少是多少,四家只有L面经重复率很高,g家最不能预料题型。后面准备
design的时候都是乱看,一些fb tech talk的视频还有之前有人贴过的fb design的总
结,
但我基础不好,临时抱佛脚感觉也没什么用。面经我就只贴面完有及时记下来的,反正
也给过很多朋友了,就贴上来吧。
 
已经签了fb,准备八月初start,有同一期的pm我,哈。
 
脸书:
 
1.  Print all paths of a binary tree
I gave a recursive solution.
 
Then he wanted to give an iterative way.
 
2a. Fibonacci (iterative)
 
2b. Buckets of anagrams
[“cart”,”tarc”, “cat”, “act”, “ract”] -> [[“cart”, “tarc”, “
ract”], [“cat”, “act”]]
 
onsite design是tiny url, 估计interviewer也知道我没什么经验,问了个最简单的也
没答好。T-T
coding都比较easy。
 
领英:
 
1.  Return if two strings are isomorphic. (character 1-1 match)
“zoo” -> “fee”  ( z->f, o->e)               true
“zoo” -> “dui”  ( z->d, o->u, o-> )        false
“dui” -> “zoo” (d->z, u->o, i-> )         false
 
Use two hashmaps
 
*****************************************************************
2.  K nearest points (solution see below)  Time: O(nlgk)
 
*****************************************************************
1.  Search in rotated sorted array
 
*****************************************************************
2. public interface Intervals {
 
    /**
     * Adds an interval [from, to] into internal structure.
     */
    void addInterval(int from, int to);
 
 
    /**
     * Returns a total length covered by intervals.
     * If several intervals intersect, intersection should be counted only
once.
     * Example:
     *
     * addInterval(3, 6)
     * addInterval(8, 9)
     * addInterval(1, 5)
     *
     * getTotalCoveredLength() -> 6
     * i.e. [1,5] and [3,6] intersect and give a total covered interval [1,6]
     * [1,6] and [8,9] don't intersect so total covered length is a sum for
both intervals, that is 6.
     *
     * 0  1    2    3    4    5   6   7    8    9    10
     */
    int getTotalCoveredLength();
}
 
亚麻:
 
1a. Given 2 sorted, singly-linked lists, write a function that will merge
them into a new sorted, singly-linked list
 
Ex.
1->2->4->8->16->32
2->4->6
 
1->2->2->4->4->6->8->16->32
 
*****************************************************************
1b. merge n sorted lists
//   1 -> 3,
//   2 -> 5
//   4
 
newhead: 1 -> 2 -> 3  -> 4 -> 5
 
*****************************************************************
1c. Given a Binary tree, print path from root to all nodes that are
divisible by 5
 
Input:
    6
   /
  5   7
     /  
    4    15
   /      |
  3  10  2  8
 
Output:
6 5
6 7 4 10
6 7 15
 
*****************************************************************
2. Given an array A (the array can be treated as a big number) and a number
n, find the biggest number that you can reach to via n swaps. A swap can
only happen in adjacent items. For example, given [1 3 4 2 5 7 9] and n = 1,
the biggest number is [3 1 4 2 5 7 9]
 
n=1, 3 1 4 2 5 7 9
 
n=2, 1 3 4 -> 1 4 3 -> 4  1 3
 
狗家:
 
1.  Reorder List (leetcode)
 
1->2->3->4->5   =>  1->5->2->4->3
 
*****************************************************************
2.  Abbreviation: apple can be abbreviated to 5, a4, 4e, a3e, …
    Given a target string (internationalization), and a set of strings,
return the minimal length of abbreviation of this target string so that it
won’t conflict with abbrs of the strings in the set.
 
“apple”, [“blade”] -> a4 (5 is conflicted with “blade”)
“apple”, [“plain”, “amber”, “blade”]  ->  ???
 
Problem changed to:
If given a string and an abbreviation, return if the string matches abbr.
 
“internationalization”, “i5a11o1” -> true
 
*****************************************************************
Onsite:
 
1a. Write a function to get a positive integer n as input and return 0 or 1.
The probability of returning 1 should be 1/(2^n)
 
1b. Given an array, return the median. (talk about expected time complexity)
 
 
2a. Code review - a class which takes a string, split by separators and
return the array of tokens (point out coding problems and indicate how you
will implement it)
 
2b. Longest consecutive sequence (leetcode) (how do you handle duplicates)
 
2c. design: how to store files given the file paths and contents. (tree?)
 
3a. Given an array and a number x, find out how many pairs satisfy (a[i], a[
j]) st. a[i]+a[j] < x
 
3b. follow up: if we want to find 3 items that adds up to a number < x
 
3c follow up: if we want to find k items. Time complexity: O(n^(k-1)*lgn)
 
 
4. Give a map which has some obstacles in it. Given a starting point S and
ending point E, find the shortest path from S to E. Note that you can go to
any(4) direction from S, but during the process, you can only go straight
from the previous direction, unless you hit an obstacle.
i.e. if you are at (1, 1) and the next (1, 2) is blocked, you can only go to
(2, 1) or (0, 1) 
 
 
5a. Java “final” keyword
 
5b. 3-way partition: given an array and number x, reorder the array so that
first part will be < x, middle part is = x, and final part is > x.
 
5c. Design: given an array of integers and a range (i, j), we want to return
the min item in the range (balanced binary search tree)
 
5d. System design: given a machine, how to generate id so that they will not
duplicate; if we have multiple machines, what to do
 
 
 
 
Google Interview Question Software Engineer
 
Given API:
int Read4096(char* buf);
It reads data from a file and records the position so that the next time when it is called it read the next 4k chars (or the rest of the file, whichever is smaller) from the file.
The return is the number of chars read.
 
Todo: Use above API to Implement API
"int Read(char* buf, int n)" which reads any number of chars from the file.
 
 
Answer:
 
int read(char* buf, int n){
  int num_it = n / 4096;
  int remain = n % 4096;
  int total = 0;
 
  while(num_it--){
    int num_read = read4096(buf);
    if(num_read == 0) break;
    buf += num_read;
    total += num_read;
  }
 
  if(total != n-remain) return total;
 
  char readbuf[4096];
  int num_read = read4096(readbuf);
  int num_copy = min(num_read, remain);
  copy(readbuf, readbuf + num_copy, buf);
  total += num_copy;
 
  return total;
}
 
 
 
 
 [面试经验] Google,MS,Amazon,Bloomberg,Qualcomm,Hulu,Groupon,Exacttarget的面经 
 
上星期拿到Amazon的offer宣告了我一年的job hunting终于结束了。
真的很感谢网上各大神提供的面经,面试前看的那些面经对我非常有用!!
有些offer如果不是因为那些面经估计就拿不到了!
所以我也写点面经给大家享用,希望大家多拿offer
 
首先介绍一下情况
我面试过的一些公司(所有都是intern职位)
成功Pass:
Microsoft, Google, Qualcomm, Bloomberg, Hulu, ExactTarget, Groupon, Walmart, Douban, PolicyStat
悲惨Reject:
Facebook最后一轮,Enova第一轮,Yahoo最后一轮, Yelp最后一轮,Epic第二轮笔试,Motorola最后一轮
然后我就来一个一个给面经,先给一些我pass的面试
首先是
Google
这家由于签了保密协议,我不能细谈太多,请谅解
一共90mins,45mins背靠背两面
第一面
第一题 Crack coding interview书上原题,时针分针,面试官印度人,很不友善,我写代码的时候一直在和他说话,但是他理都不理,写完代码他看了一眼,然后用手机拍了个照片。。
第二题 非常简单的基本算法题,考验的不是思考逻辑能力而是写code的习惯,是否能写出很工整简洁的code
第三题 随机生成名单,要求过滤黑名单,我大体写了下思路,然后就没时间了
 
第二面
第一题 关于数据库存date的问题,题目至今没搞懂,然后我就在那边扯淡,然后他还连连点头,被我混过去了
第二题 矩阵,纯数学题,做完以后被他夸了一下,哼你太小瞧我们苏州人得数学功底了
第三题 红黑树,纯扯淡题
 
过了两星期,得到了pass得消息
 
Amazon
这家由于签了保密协议,我不能细谈太多,请谅解
本来随便投了简历,不想面的(当时已经签了微软)
所以完全没准备。。不过没想到竟然过了
一共90mins, 45mins背靠背两面
第一面
第一题 leetcode原题,关于BFS的,写完以后有两处bug,由于好久没刷题目了,面试前也没准备,所以写的很糟糕,不过后来改正了
第二题 很简单的一题,忘了= =。。。
 
第二面
面试官很奇怪,一般面试官听着正确的回答会点头,这位面试官赞同的时候会摇头。。以至于我一直以为自己回答错了
第一题 三色排列,也出了几个bug,诶
第二题 一道非常难的题目,最后用BST做的,题目不能细说,因为签了保密协议。。经过面试官提示以后做出来了
 
Qualcomm
oncampus一面,45分钟,面完两天直接给offer
面试本身很简单,而且当时正处在面试巅峰期,所以完爆了
第一部分,系统设计题,问OS组成部分,什么样的结构
第二部分,C++的知识题,pure virtual function的意思,public,private, protected的意思,friend class怎么使用,virtual table的意义,malloc和new的区别 等等。。
第三部分,设计题,设计几个class,比如学生啊老师啊
第四部分,算法题,实现atoi
 
Bloomberg
遇到的最有质量的面试
oncampus两面,45分钟每面,过了几个星期后HR面加上AA面
第一面
两个面试官面我一个,一个华裔一个阿三,都特别喜欢我,所以过了
第一题 给一个二叉树,找出路径之和为X的所有路径
第二题 一个array,找出所有两个数之和为X的pair
Follow up: 三个数之和,四个数之和。 用多种方法
 
第二面
两个面试官面我一个,一个一看就是天才的面试官,一个来自中国的很mean的女人
第一题 distributed system的设计与实现
第二题 在一个stock里面,macket price在不断变化,找出买入时间和卖出时间,使得收益最大化
第三题 有一个不断打入二进制byte的source,要随时输出当前所有byte里面有多少个1
 
HR面
全是behavior questions,我已经老油条了,所以很顺利,也忘了问了啥
 
AA面
给我介绍了一下公司,看了下Bloomberg的terminal,据说全普渡只有一台电脑上有,在krannert的某处。。
然后给了一道很简单的题目,关于array的。。我当时脑子犯糊涂自创了一个特别复杂的算法解出来了,然后被manager鄙视了一下。。。不过幸好最后还是拿了offer
 
ExactTarget
oncampus一面
全是基础题,java的知识题,不多说了,网上查一下全都是
最后有一道设计题,设计一个电梯
 
Microsoft
oncampus一面,onsite四面
oncampus一面是去年面的。。早就忘了
onsite第一面
java基础题,如何实现垃圾回收,写一个垃圾回收功能,implement一个heap
值得一提的是,面试官非常SB,连heap都不懂。。我严重怀疑他会不会写code。。。
onsite第二面
阿三面试官,也是毕业于普渡
大谈project,谈了几乎所有面试时间,然后给了一道implement atoi的题目,并且写出所有corner cases
写出unittest. 然后问了一道算法题,autocomplete,如果输入ba两个字母,需要返回所有可能的以ba为首的单词
onsite第三面(午餐面)
大谈project,全部都是testing的题目,CS408的内容基本全有(还好我当时正在上这门课),问如何测试自己写的project
值得一提的是,午餐面必须要好好吃午餐,不然之后会饿。 不过不能在面试官面前狼吞虎咽啊!!微软有免费的饮料,不错噢!
onsite第四面(AA面)
吹牛逼面,跟manager吹牛逼,我吹自己有多喜欢testing,testing的重要性,还有我有多爱微软,其中穿插着一些小题目,面试题倾向于考察你的各方面综合素质,比如会问,你今天面完三面过后学到了什么,请详细说明,这种题目就是靠吹牛逼。 然后还问了怎么测试vending machine,还有如何定自己的schedule,如果你有很多事情未处理并且有一些马上要due。
manager后来被我吹得牛逼所吸引,看得出狠喜欢我,第二天(从西雅图刚回普渡)就给了offer
 
Groupon
oncampus背靠背两面,90mins
第一面
碰巧遇到了个中国人(成都人),而且还跟我说了两句中文,很友善,强烈推荐我来他们公司
问了一些个人情况,一道小算法题,然后就过了。。。
 
第二面
一道crack coding interview书上的经典题,具体是什么忘了。。我用15分钟做完了以后,面试官说没想到你做那么快,那么剩下的时间我们吹牛逼吧
 
Hulu
代码题,followed by电话背靠背两轮,每轮45分钟
代码题是写一个hangman的AI,本人用python写的,基础比较好,所以过了
电话背靠背
第一面问的都是leetcode上经典题,具体忘了
第二面
第一题是copy一个linkedlist
第二题是implement一个LRU的cache
第三题是在一个数组里找出最大和的subsequence
Hulu的offer中,待遇非常非常棒!值得一去
 
最后,如果希望更深入的了解哪家公司的面试具体情况,联系我
 
 
 
发信人: zjsa (直接上啊), 信区: JobHunting
标  题: 面经并求HR回复分析
发信站: BBS 未名空间站 (Tue Jul  8 01:43:06 2014, 美东)
 
两轮店面
1, 一颗二叉树,按层计算和并且输出。用queue实现
2, 有点design的意思。很多activity sequence,寻找出现最频繁的3联。比如a-b-c-
d,a-b-c-e。 其中,abc出现了两次,bce,bcd各一次。提出用trie,heap,其实后来
觉得用hashtable就行,因为只求连续的3步。不过觉得区别不大。后来时间有富余,写
了hashtable那一部分。
3, 寻找一列数中个数超过总数1/2的那个。这题写的时候没有考虑到不存在这个数的
情况,后来在跑test case的时候,意识到并修改。聊天,第二轮一半的时间在聊天而
已。
 
面完之后感觉还行,不过今天收到拒信。心有不甘,希望hr能提供一些细节。然后HR回信
I definitely understand your frustration and unfortunately I don’t receive
detailed feedback but from what I did see it looks like you did well but
ultimately your coding / problem solving experience were not the right match
for the position the team was trying to fill.  I will try and get some more
clarification on this as I realize the feedback can be very beneficial in
help growing your experience.
 
大家分析分析这是客套话还是真的是不match而已,如果不match又何必浪费大家时间呢
, 或者这coding / problem solving experience 其实指的就是面试时候的表现?我
问了他CD的时间,他说没有,我现在就可以再申,不过短时间我是不考虑他家了。
 
现在还有别家的面试,希望能总结经验。
--
 
 
 
 
发信人: csiscoder (csiscoder), 信区: JobHunting
标  题: 上几个面经顺求Bless
关键字: 面经
发信站: BBS 未名空间站 (Fri Jun 20 22:06:00 2014, 美东)
 
最近面了几家公司,上店面经, 攒点人品
 
亚麻
三哥,given a binary matrix, find out the total number of islands, (
geeksforgeeks原题)
 
跟这里的面经一模一样:http://www.mitbbs.com/article_t/JobHunting/32721661.html
 
 
面得很早1月底瑞苦肉特找我就随便面了下,很久没有准备算法了,知道是dfs,但是写
不出来,汗啊,挂了,自此以后努力准备3个月的算法
 
Bloomberg
版上国人大哥内推的,无论如何应该感谢。
国人大哥先要面试我才决定给我内推(可能大哥办事认真)。 内推后另一位国人大哥
面的,虽然
说的是英文,告诉我的是英文名,但是改不了口音,一堆c++问题,好多都忘了,大概
有几道是下面的:
 
1. c++ pointer/reference, when to use pointer, when to use reference
2. implement linked list. implement copy assignment operator for linked list
, implement them with class template
3. 一道算法题: flood fill
 
挂了,不过自己当时也没太往心里去,继续努力慢慢找
 
雅虎
也是版上大哥内推。
店面,国人大哥,超级nice, 必须大赞,要是拿到offer一定请这个大哥吃大餐,我想
我们会成为好朋友的哈哈
 
问了c++ explict keyword, pointer/reference difference.
一道题目就是fibonacci数列 ,分析复杂度。
第二天收到onsite,这周一飞到硅谷面的。
 
onsite 见了5个人,貌似也没签nda
 
1. Given a list of search query words with query frequency, and
another search word, find out the next word that has the query frequency
right below it.
 
For example. assume we have "miscrosoft" with query frequency 100, find out
the word that has query frequency right after "microsoft". for example, it
might be "google" with frequency 99. Discuss data structures and write
complete code, with time complexity analysis
 
 
3.insert into circular linked list  void insert(TreedNode* node,
int val);
4.问了很多设计方面的问题,代码题目就是: sort colors (leetcode 原题)
5. hiring manager。print binary tree level by level
 
我觉得面试官都很好,真心希望可以拿到offer啊,求大家bless
 
领英
白人妹妹猎头主动联系面的,她说不用hr直接安排面试。
 
一面: 国人大哥和美国妹妹,妹妹是shadow。
第一题: search in rotated sorted array,(with or without duplicates)
第二题: Given an array of integers, find out a triple of integers such that
they form a triangle. i.e. given a,b,c from the array, a +b >c, b +c >a, a
+c >b, 返回任何三个就可以了。
 
大哥给了很积极的评价,一天后通知二面
 
昨天下午二面: 希腊士大夫工程师,加印度大哥
第一题:print binary tree level by level, 外加c++ vector内部怎么实现以及复
杂度等细节
第二题: print  factors of a given integer
example: 12 可以表示为:
12 *1
6 *2 *1
4 *3 *1
3 *2 *2 *1
要求走几个例子,写出完整的递归的stack trace
题目差不多都做出来了
 
希望可以拿到onsite,已经过去24小时了,linkedin一般都超级快的,希望不要等来个
据信就好,至少也拿个onsite啊
 
 
Snapchat
网上自己投的,投完一个小时后收到邮件询问电面时间。
 
美国大哥。google hangout  视频面试,大哥带个bose耳机,态度很nice
题目很简单
Given a binary search tree and a value n, find out the node that has the
value closest to n.
今天下午刚面的,上了一天班累得够呛,一开始给了一个解法是对任何二叉树的,面试
官说我给你的是bst,恍然大悟,赶紧写了个一个Bst的版本,走了两个例子,没问题,
问了几个问题,他说you are doing good. 希望不是忽悠我啊。问了几个问题就结束了。
 
苹果
siri speech scientist
不知道怎么别搞到这个组了,国人大哥面的,问了一堆语音识别的东西,完全云山雾罩
,可想而知挂了
 
 
还有狗狗店面已挂,面经已经贴出来了http://www.mitbbs.com/article_t0/JobHunting/32714591.html,
 
g 挂了挺可惜的,认真做题做了好几个月,猎头大哥追着我让我面试追了两年,由于各
种原因耽搁,一直没有面试,后来他转去非死不可了,又安排另一个白人mm联系我让我
安排时间面试,实在觉得不应该再推迟了,还是挂了。看来功夫还是不行,或者我跟g
的缘分还没到吧。。。。。再准备一段时间重新来过。
 
 
接下来还有非死不可面试。
 
请大家Bless, 要是拿到onsite和 Offer继续回报本版,希望大家能多拿面试,多拿
offer, 找到心仪的工作。 谢谢:)
 
 
 
发信人: csiscoder (csiscoder), 信区: JobHunting
标  题: Re: 上几个面经顺求Bless
发信站: BBS 未名空间站 (Sat Jun 21 21:18:28 2014, 美东)
 
第二题: print  factors of a given integer
example: 12 可以表示为:
12 *1
6 *2 *1
4 *3 *1
3 *2 *2 *1
要求走几个例子,写出完整的递归的stack trace
题目差不多都做出来了
 
这题是要打印出来全部的组合吗?核心思想是dfs+递归是吗?
是的,要打印所有组合。是递归。我的思路是首先求出n的所有因子(1除外,因为1在
打印是在所有的组合里面,隐
含的)。
比如:12 的因子为 2, 3, 4, 6, 12
那么就把combination sum 转化为 candidates = [2,3,4,6,12]。
相当于从这里面找出所有的组合使得他们的乘积为12.
可以重复使用同一元素。 这样就可以用leetcode combination sum的思路了。
 
当然我的思路可能是错误的。 后来提了一句用hash table去重,或者直接存到set里面
,面试官表示同意
 
 
 
 
发信人: quicklogic (coder-farmer), 信区: JobHunting
标  题: L面经
发信站: BBS 未名空间站 (Tue Jul 22 22:37:40 2014, 美东)
 
骑驴找马,刚面了领英,不算午饭总共面了5轮:
1. 老印manager behavior interview, 谈经历,谈做过的项目,谈理想,谈抱负,等
等。。。
2. 老中大哥和老美senior manager谈做过的项目,需要讲得很详细,考察tech
communication,感觉不是很好,主要是我说的有些技术细节他们也不大懂,感觉他们更
想听写general的东西。
3. 午饭后开始第三轮。老中大姐和一老美。大姐出了一道leetcode原题,我以前也做
过,是道老题,关于string的,比较繁琐, 加上临场紧张,思路有些乱,挣扎了半天
没写完。进入第二题,倒是不难,很快做了出来。虽然还没有出结果,但我觉得很有可
能会栽在这里,大姐其实人挺好,还稍微提示了一下。我只能说我运气不好,白准备了
很多linkedin高频题,偏偏遇到一道很久以前做过的低频题,只怪自己功力还不够深厚。
4. 老中+老美,两道还是关于string的题,基本属于L高频题系列,还好比较顺利做完
了。
5. tinyURL web service design. 老中小弟+资深老美,问得很详细,我答地还行。
就这样了,估计是要挂的节奏。个人觉得L不错,市场很好,不想狗狗那么屌,装逼。
 
 
 
发信人: csiscoder (tcwang), 信区: JobHunting
标  题: Re: L面经
发信站: BBS 未名空间站 (Wed Jul 23 22:20:44 2014, 美东)
 
 
【 在 henrycode (双蓝) 的大作中提到: 】
: 能不能细说说 tiny url 设计阿,或者给个链接看起来这个问得很多。
 
 
发信人: csiscoder (tcwang), 信区: JobHunting
标  题: Re: L面经
发信站: BBS 未名空间站 (Wed Jul 23 07:02:02 2014, 美东)
 
好吧,我也跟着你发我的面经,昨天面的,攒个RP。
周一面完了FB,接下来周二面领英,实在是累啊。我嘴巴都说干了,面试真是个苦力活
啊......
 
签了nda,不能透露具体题目细节。
 
进去,HR 带着绕一圈,介绍介绍吃饭啊,体育馆之类的
接下来高级HR, 接着扯淡。
 
正式面试第一轮, 烙印高级经理, behavior questions,问了一个什么key-value
store design,接着扯,首先那哥们迟到15分钟,然后谈了30分钟说我只期望我们聊天
聊30分钟,然后让我问他几个问题结束。
 
代码第一轮,亚裔男和同胞男,第一轮字符串替换,搞得有点急,跑测试发现有bug,
改好了以后亚裔大哥说不是很明白我的代码(我写c++,他用java),同胞说改完了应
该是对的(明显感到同胞在帮我,只怪我太菜)。 第二题实现哈希表,开始的扯淡加
上第一题花去了40分钟,15分钟让我实现哈希表,我就只写了一半,另一个函数亚裔大
哥说你说你准备写什么吧,不用写完了,估计到这我知道已经挂了.然后问了点多线程
的问题就结束了。
 
接下来午餐,同胞男,随便扯扯,餐厅里国人很多,烙印也很多
 
第二轮,美国男加同胞,主要讨论以前做的项目,非常细节,问题也问得很多
 
第三轮代码,美国男加烙印,一到动态规划题,任何面经都没见过这题,搞半天弄出来
个递推公式,写代码没写完就结束了。美国男那诧异的眼神让我觉得我已经死定了,呵
呵,功夫不到家,么有办法啊。
 
第四轮设计,tinyurl
 
除了设计题目和实现哈希表是常见面经外,其他两题见都么见过。总体来说出来DP那题
以外,其他都不难,只是自己实在脑力不济。
 
估计已挂,不想那么多了,呵呵。 继续努力。
 
 
个人觉得经验教训如下:
1。 多看看流行的key-value store的设计,这样的题目被问了很多次(对我个人来说
)。 多了解了解分布式处理的思想,要求什么的。去之前多去看看他们公司的
engineering blog
2. DP题目还是需要多练,不练不熟悉。
3. leetcode要保证每题都会,有时候碰到原题机会较大
4. 领英glassdoor和CC 上面的题还是有用的,比如哈希表那题是原题。
 
祝大家好运,多拿offer
 
 
发信人: passenger (路人甲), 信区: JobHunting
标  题: 报个Box Offer,和面经
发信站: BBS 未名空间站 (Mon Oct  7 17:42:15 2013, 美东)
 
骑驴找马,没有特别想换工作,只是报着试一下的态度,稍微准备了一下。目前只拿到
一个Box Offer,比起版上各位差远了。觉得自己还是准备不充分,另一个感觉就是现
在和前一阵子比较来,各大公司都更挑剔了。面试光做对还不行,还要无错,快速,最
优。报Offer细节和面世题,回馈大家。希望大家都能找到理想的Offer。
 
个人情况,大IT公司工作5年多,在Seattle。Box offer, base 160K, stock option
15K。只是比较工资,如果把我现在的工资乘上1.15,新工资其实还要低一些。不知道
他家15K stock option值多少钱。
 
面试5轮技术,加上一个公司tour.都是常规题。
 
P1: 找出二叉树中所有uni-value子二叉树的个数。
P2: 一个链表,每个节点除了一个next pointer,还有一个random pointer指向一个随
机节点,如何clone这个链表。
P3: A series of appointments with start and end time. What is the numberof
conflicting appointments?
P4: Distributed cache problem, ask for better design。
P5: 电梯设计。最优等待时间分析。
 
另外各位帮我看看,这个Offer 值不值得接?
 
--
 
发信人: passenger (路人甲), 信区: JobHunting
标  题: Re: 报个Box Offer,和面经
发信站: BBS 未名空间站 (Mon Oct  7 18:40:53 2013, 美东)
 
P4, similar to MemCached design.Just talk about the high level.
 
P5. Design the elevator system. N elevators, and M floors. Write class
declaration and signatures. Minimize the average wait time.
 
 
发信人: passenger (路人甲), 信区: JobHunting
标  题: Re: 报个Box Offer,和面经
发信站: BBS 未名空间站 (Mon Oct  7 21:15:33 2013, 美东)
 
My solution is, reduce the elevator direction turns as possible as we can.
For example, if the elevator is going up, and there are some requests from
above, then the elevator keeps going up. It is heuristic algorithm.
 
【 在 coren (仁者无敌) 的大作中提到: 】
: 请问电梯题最段时间如何实现?对这个题一直没个标准

<!--?xml version="1.0" encoding="UTF-8" standalone="no"?-->

: 数据结构可以用一个向上排序数组和向下排序数组计算吗?谢谢

http://codeanalysis111.blogspot.com/2014/10/blog-post_5.html 

猜你喜欢

转载自yuanhsh.iteye.com/blog/2221854