报一个MicroStrategy的offer

avatar 87213
jacgraphy
7694
20
今天下午收到的offer,职位是software engineer C++/Java。其实当时onsite一轮比一轮面得差,出门的时候就觉得应该没戏了,所以能拿到offer到现在我还不太相信。这算是我人生中第一次onsite,第一个offer,而且还能接上毕业,感觉这个offer真的是运气成分占了绝大部分。
我在地里的时间不是很长,但是看过地里很多同学的经历和建议受到了很大的帮助,所以觉得也应该分享一下面经。

电面:
这个职位的申请是通过学校的career engine,因为有了校招的优势吧,简历关总算是过了。本来第一面是预定on campus的,但是那天正好降温面试官来不了,就改成了电面。面我的是个印度人,但口音还算能接受。上来照例先问了project,然后就是technical了:
1. 说是有个用1000个相同的小立方体拼成的大立方体,把表面涂色,问有几个小立方体是着了色的。小学奥数应该做过很多这样的了,反正是没什么困难的。之后的follow up就是n^3个小立方体,求着了色的小立方体个数的表达式。
2. 找BST的lowest common ancestor。
3. 设计chess game。虽然知道CC上有,但OOD实在掌握得不好,只能凭自己感觉扯了。期间问到了singleton,说是只想有一个棋盘的实例怎么办。

onsite:
说起来onsite过程不算顺利,面试前一天晚上飞去DC,上了飞机坐了一个多小时,结果通知我们飞机故障飞不了了,当天还没有其他去DC的航班。当时我就慌了,想着面试最好的情况也要reschedule了。不过运气好在后来他们想办法调了一架飞机来,最后晚上快10点到的DC。
面试当天一开始是由HR领进一间办公室做written test,一个半小时,内容不方便说,不过并不算难。做完test就是一对一的面试了。

第一轮:正好接着written test,所以面试官就直接拿了里面一道题让我解释思路。之后问了堆排序怎么建堆,快排怎么实现的,时间复杂度都是怎么样的。当时关于建堆的时间复杂度虽然知道是O(N),但是数学不大好加上紧张,没把式子推出来,只是给了个结果。
然后问了到题正好在地里看到过,就是给个乱序数组A[],要求给出个方法调整完之后数组的大小关系变成 A[0] <= A[1] >= A[2] <= A[3] ... ... 当时对于O(N)的解法印象有点模糊,就先说了O(NlogN)的方法,后来总算是脑子没卡住挤出了O(N)的方法来了。
最后问了道brain teaser,20个硬币,每个硬币上有个正整数,两个人轮流取,每次只能取一个并且只能取头或尾的一个,问先手的话怎么保证取完后自己拿到的硬币上数的和较大。我对于这种题极不擅长,听完题就虚了(面试经验太少,心理素质差= =),想了很久才稍微有点接近正解,面试官给了些提示后我才算是意识到了,结果悲剧的一抽风口胡了,最后还是面试官说了解法。

第二轮:上来第一问又是brain teaser,5个盒子,2种球,一种重1oz,另一种1.1oz,每个盒子放了足够多的球,但是一个盒子只能放一种,然后问怎么用电子称只称一次知道每个盒子装的是哪种球。鉴于第一轮的悲剧,这里果断又卡了,还是在给了提示之后才磕磕绊绊的得到了答案,只能说智商捉急。剩下的时间就只问了个design,给个有几万篇文章的数据库,要求给用户提供top10推荐。中间讨论了很久,说到排名基于score,然后为了防止score低的文章也能有机会被读到,所以在取文章的时候要按概率来。在这里我又死纠结于怎么用概率分布反函数扔随机的score,始终没想到用range表示概率大小直接扔uniform的就行了,命名很简单的说ORZ(越写就越觉得这次onsite我到底有好好地回答出什么吗T_T)

第三轮:lunch interview。以前看到各种面经都提到lunch interview也会各种问OS,数据库之类的问题,但是我又在这部分水到了,只是在扯project经历,还有一些很随意的behavioral的问题,总体来说比我想象得要轻松好多。

最后一轮:这轮从一开始就感觉不按常规,先问我为什么想做码农,接着就问我在这个房间里有什么是可以用码代码解决的问题,想了半天扯到master做的数图,然后就又是一顿扯。说实话,有些细节我也记得不是很清楚,不过好歹那些project都是自己老老实实做的,还至少扯了点。之后提到怎么把图像保存为树结构,我又傻傻地扯些有的没的,总算是扯到了写代码。在白板上写了两段挺简单的代码,一个是返回二叉树最长的root-to-leaf path的长度,还有一个就是返回这条路径上的所有节点。最后比较囧的是问我ohio state一共有多少辆车(我是OSU的)。其实这个问题以前在PR课上老师提过,我再抽风,没头没脑地瞎估摸。当时看面试官的反应就觉得自己是一XX。

总而言之,我真的是十分幸运的。从开始准备找码农工作到现在,大概也就三个月,和地里很多同学比起来水平和努力程度都差了太多。我的经历应该没太多正能量,不过至少希望面经能稍微对大家有点帮助。
  • 8
20条回复