AMEX ONSITE

面试是两轮各45分钟back to back, 都是一对一的面试。应该是一轮behavioral一轮technical,但好像有人面了两轮behavioral,不知道是搞错了还是有什么特殊情况。我两轮遇到的都是印度男面试官,都在amex做了好多年,人都很和善。

第一轮behavioral的问题就很standard,我记得被问到了:what do you know about amex and why amex/问我有没有参加过hackathon,我说没有,就让我介绍最近做的project/你最大的优点和缺点/你的朋友和家人会用哪个词来形容你,为什么/你遇到过什么challenge是怎么克服的/一次失败的groupwork经历/你最近学习运用new skills的经历/你有什么问题问面试官

第二轮说是technical,但是并没有whiteboarding写代码。问的问题都挺奇怪的… 我还有个applied math double major, 他上来就问我说那能不能问我数学问题,我懵逼,说行啊,然后问我conditional probability是什么。答完问我bayesian是什么,我说我只在probability课里简单听说过,没有in depth学过,他说OK没关系。然后问了我的project,我介绍完了之后他问了问我structure设计上的问题,感觉是为了理解清楚我的设计。我project用到了recommendation algorithm,然后他就问我关于user-item和item-item的matrix的问题,我懵逼… 没准备好这部分,已经记不清楚了。想了想觉得还是不要瞎蒙,就实话说我记不清楚了。

说完了这部分之后,他问我merge sort的time complexity,nlogn啊easy,结果他接下来问如果是merge sort n个number平均分布在m个machine上,time complexity是啥。我乖乖拿出纸笔整理思路,现在想想其实不难,但是当场有些紧张脑子也有点浆糊。算了第一次,给他讲到一半发现带错了数,赶紧纠正,但是算了第二次的时候还是犯了个低级错误,自己还半天没看出来,面试官使劲hint可是他的口音好重我真的听不懂(哭),过了一会儿还是自己发现了错误然后改过来了,终于对了。

这部分之后,面试官开始问之前做的oa的问题。oa当时是两道题,我感觉一道贼简单,一道略复杂一些但也不难。他问了我那道贼简单的题的思路和time complexity,我解释了一遍然后是O(1),然后他问我如果brute force怎么做,我懵逼,那就O(n)遍历做呗?然后他问另外那道题的time complexity。到这里时间就差不多了,然后他问我有什么问题问他。

这个technical不按套路出牌虽然不难但是我连续懵逼lol,更懵逼的是回来问别的人面的什么情况,互相对了对题,发现behavioral的问题都基本一样,但是technical部分他们说都主要问他们oa的问题,问他们还有没有别的方法来做,没有问到我这个merge sort的问题… 也没有类似的问题,就完全不technical他们感觉。well 看来是中奖了?