l*****n 发帖数: 577 | 1 说实话,LinkedIn 是我面试过的相当拖拉的公司。看到不少人因电话面试3,4天就感觉
没戏了,我都忍不住地想,太着急了。以下是我的经历,相当拖拉。我写得也挺拖拉,
但希望对面试他家的朋友有所帮助。
1.初接触
在去年6月,我通过版上的一朋友推荐,到现在大概8个月了,才算结束。当然这其中也
有我的因素。
我给那朋友发了email包括我的简历,他并没有回,所以我一直不知道是有人推荐,也不
知道推荐人名字。直到后来recuiter问(可能是为了confirm reference bonus),才想
起来查以前发出的email。
recuiter到7月中旬才联系我。我还以为他在网上找到的我呢。我只在linkedin放了简
单的简历,也没有对外公开。记得但是对被发现感到比较惊奇。但是,我看了一下job
description,不很match.我就把面试推了。但是表示了对公司的强烈兴趣,并同意看看
他家其他的工作,有合适的联系他。
到十月中旬,recruiter又联系我。但是,我此时在中国,正好度一个一个月的长假。
只好在十一月再面试。面试SET position.
2.初次phone(recruiter)
基本上只是问了些情况,了解下情况,没有技术问题。被告知会“很快”安排技术面试
。鉴于我对很快的理解,在一周时催了一下。第一次技术phone面试被安排到十一月中
旬。
3.第一次技术phone interview
共有两个面试官,一个是lead,另一个是shadow.
共有两道coding题。第一个是判断一个string是否为数。得考虑负数,既带小数点的数
。需要注意不能存在多个小数点。
第二个是求pow(double b, int n),一开始我给的方案是简单连乘,复杂度O(n)后来想
到一个olog(n)方法:
public double pow(double a, int b) throws Exception {
if(a==0 && b<0) throw new Exception();
boolean isNegative = false;
// check whether b is negative.
if(b < 0) {
isNegative = true;
b = b * -1;
}
double currentBase = a;
double val = 1;
while(b != 0)
{
int oriB = b;
b = oriB >> 1;
if(b << 1 != oriB)
val *= currentBase;
currentBase *= currentBase;
}
// In case of negative exp number.
if(isNegative)
{
val = 1 / val;
}
return val;
}
3.第二次技术phone interview
面试官是刚到LinkedIn的,说话语速很快。可能是对她的新position (management role)很满意,也可能是我们的背景比较相似,滔滔不绝地介绍她自己花了大概15分钟。我这个急呀。
基本是上问了只一道coding题:two sum 的变体:
设计一class, with two methods:
Save(int input):
add a number, input to the collection of integers
Test(int target)
Test whether there exist two numbers, whose sum is the target. Return true is such two number exist, false otherwise.
我说见过这道题,她让我讲思路。我说了保持sorted数组,从两头向中间找的做法。她说不是很一样,我们用另一种做法。我就用了hashtable:
public class TwoSum {
public void save(int input)
{
int originalCount = 0;
if(h.containsKey(input))
{
originalCount = (int)h.get(input);
}
h.put(input, originalCount + 1);
}
public boolean test(int test){
Iterator i = h.keySet().iterator();
while(i.hasNext()){
int c = i.next();
if(h.containsKey(test - c))
{
boolean isDouble = test == c * 2;
int frequency = (int)h.get(c);
boolean appearOnlyOnce = (frequency == 1);
if(!(isDouble && appearOnlyOnce ))
return true;
}
}
return false;
}
Hashtable h = new Hashtable();
}
(未完待续) |
l*****a 发帖数: 14598 | 2 牛人面经,先顶后看
【在 l*****n 的大作中提到】 : 说实话,LinkedIn 是我面试过的相当拖拉的公司。看到不少人因电话面试3,4天就感觉 : 没戏了,我都忍不住地想,太着急了。以下是我的经历,相当拖拉。我写得也挺拖拉, : 但希望对面试他家的朋友有所帮助。 : 1.初接触 : 在去年6月,我通过版上的一朋友推荐,到现在大概8个月了,才算结束。当然这其中也 : 有我的因素。 : 我给那朋友发了email包括我的简历,他并没有回,所以我一直不知道是有人推荐,也不 : 知道推荐人名字。直到后来recuiter问(可能是为了confirm reference bonus),才想 : 起来查以前发出的email。 : recuiter到7月中旬才联系我。我还以为他在网上找到的我呢。我只在linkedin放了简
|
l*****a 发帖数: 14598 | |
l*****n 发帖数: 577 | 4 基本思路是,n表示为二进制,对应非0位,乘在该位上相应的base.
example:
9 => 1 0 0 1
pow: b^8 * b = b^9
【在 l*****a 的大作中提到】 : 这个 olog(n)的写法很奇怪
|
i**********e 发帖数: 1145 | 5 看lz是在面试时候现想的,这很不容易~
【在 l*****n 的大作中提到】 : 基本思路是,n表示为二进制,对应非0位,乘在该位上相应的base. : example: : 9 => 1 0 0 1 : pow: b^8 * b = b^9
|
l*****n 发帖数: 577 | 6 不敢当。功课没做足。过后发现其实有人post类似的解法。当时也是受到提醒。面试官
说能否提高performance,才想到的。
大牛去Google了?
【在 i**********e 的大作中提到】 : 看lz是在面试时候现想的,这很不容易~
|
p*****2 发帖数: 21240 | |
q****x 发帖数: 7404 | 8 大牛在A吧?
【在 l*****n 的大作中提到】 : 不敢当。功课没做足。过后发现其实有人post类似的解法。当时也是受到提醒。面试官 : 说能否提高performance,才想到的。 : 大牛去Google了?
|
s*******n 发帖数: 631 | 9 面的是Linkedin什么岗位呢?
貌似都是很多programming skills |
l*****a 发帖数: 14598 | 10 for double, we should not use if(a==0)
please NIU man confirm
【在 l*****n 的大作中提到】 : 说实话,LinkedIn 是我面试过的相当拖拉的公司。看到不少人因电话面试3,4天就感觉 : 没戏了,我都忍不住地想,太着急了。以下是我的经历,相当拖拉。我写得也挺拖拉, : 但希望对面试他家的朋友有所帮助。 : 1.初接触 : 在去年6月,我通过版上的一朋友推荐,到现在大概8个月了,才算结束。当然这其中也 : 有我的因素。 : 我给那朋友发了email包括我的简历,他并没有回,所以我一直不知道是有人推荐,也不 : 知道推荐人名字。直到后来recuiter问(可能是为了confirm reference bonus),才想 : 起来查以前发出的email。 : recuiter到7月中旬才联系我。我还以为他在网上找到的我呢。我只在linkedin放了简
|
|
|
f**e 发帖数: 1269 | 11 同意这个,看lz是面SET,以他对这道题的表现,觉得有点可惜,应该面SE。
不过也许SET跟SE的待遇是差不多的,而且现在SET据说特别少也许promotion更
快?linkedin今年hiring据说是要double,小team可能升得更快吧。再不过,
哎,突然想到lz既然上来发面经了,多半最后没有去L,说上面那些都没用了。
不知道牛人最后去了哪。
【在 i**********e 的大作中提到】 : 看lz是在面试时候现想的,这很不容易~
|
p*i 发帖数: 411 | 12 非牛,来confirm一下
floating point的数都不能直接跟0比较
应该
const double sigma = 1e-6;
fabs(a) < sigma
【在 l*****a 的大作中提到】 : for double, we should not use if(a==0) : please NIU man confirm
|
i***h 发帖数: 12655 | 13 理论上没问题
但实际工作中都是用阈值的
浮点数就是麻烦
【在 p*i 的大作中提到】 : 非牛,来confirm一下 : floating point的数都不能直接跟0比较 : 应该 : const double sigma = 1e-6; : fabs(a) < sigma
|
p*i 发帖数: 411 | 14 是啊,说的就是用的时候
【在 i***h 的大作中提到】 : 理论上没问题 : 但实际工作中都是用阈值的 : 浮点数就是麻烦
|
b********8 发帖数: 69 | 15 他们家题库就这么大么。。lz的题我一面都做到
我的感觉是他们虽然反应比较慢,但态度很专业,挺喜欢这个公司的,也决定继续接触 |
l*****a 发帖数: 14598 | 16 我是不是也该接触一下呢?
【在 b********8 的大作中提到】 : 他们家题库就这么大么。。lz的题我一面都做到 : 我的感觉是他们虽然反应比较慢,但态度很专业,挺喜欢这个公司的,也决定继续接触
|
l*****n 发帖数: 577 | 17 选了Linkedin,马上要上班了.感觉公司还是比较有活力。先发他家面经是因为好像感兴
趣的朋友较多。phone interview其实也算不上泄密。版上朋友愿意接触的,可以联系
我,虽然我还没搞清他家推荐如何工作。
上个月onsite了4个,两个Dev, 两个test.倒是都拿到了。本人也倾向dev,但是综合考
虑后还是继续做testing的工作。
一般来说,高title的SET要求不多。所以到达一定level后如果还做IC的话,上升的空
间不大。但是也不是绝对的。像我要做的feature,我感觉搭一个好的框架来测试要远比
开发产品本身难得多。做测试也可以接触到更多的技术。
牛人就太不敢当了。本人比较自大,但充其量也只能定义自己为庸人。按照三番版另一
个帖子:
“说了半天原来是household收入,这个西雅图双软工轻轻松松就有了吧。自从去年微软
大规模涨工资以来,公司稍微工作几年的就超过15万了,senior engineer至少17、18
万。这样两个都在微软工作的(只要不懒、不笨)全家收入都不止35万。”
我绝对是超级笨人。不找块豆腐撞死都是在有点厚颜无耻。
楼上对a==0的讨论make sense.
【在 f**e 的大作中提到】 : 同意这个,看lz是面SET,以他对这道题的表现,觉得有点可惜,应该面SE。 : 不过也许SET跟SE的待遇是差不多的,而且现在SET据说特别少也许promotion更 : 快?linkedin今年hiring据说是要double,小team可能升得更快吧。再不过, : 哎,突然想到lz既然上来发面经了,多半最后没有去L,说上面那些都没用了。 : 不知道牛人最后去了哪。
|
r*******n 发帖数: 266 | 18 这样子啊.....头一次知道
可是没事瞎说有啥目的啊
【在 f**e 的大作中提到】 : 同意这个,看lz是面SET,以他对这道题的表现,觉得有点可惜,应该面SE。 : 不过也许SET跟SE的待遇是差不多的,而且现在SET据说特别少也许promotion更 : 快?linkedin今年hiring据说是要double,小team可能升得更快吧。再不过, : 哎,突然想到lz既然上来发面经了,多半最后没有去L,说上面那些都没用了。 : 不知道牛人最后去了哪。
|
h********w 发帖数: 221 | |