分别是thread pool, overload/overri de, 还有一个忘记了。。大概就是看你能不能流利的说出来的把。这一轮的重点大概就是英语。最后告诉我给我一个on-site interview, 过了一周左右,通知了我是在10-17号面试,天,一个月。折磨阿,早上7.45??折磨阿基本上是从10月12号之后开始准备的,在此推荐一个pdf,programer interview,有中文版。 17号早上6.30点钟起床,东川路么,很近的。但是我还是打了车。在上车之前的准备工作有:上厕所,吃半块德福的白巧克力,喝了一点水。其他都带着上车了。 7。30到了,5个人,3个工作的,一个intern,还有一个我 8点开始面试,一共5轮,2轮中国人,3轮外国人,遗憾的我一个名字都没记住。每轮 1个小时 1面,很nice的gg,英语说得很慢,明显照顾我。先问了问简历的问题,然后开始做题,首先是“TestString"->"StringTest"的问题,而且第二个单词是给定位置的,用区间反转解之。然后是一个随机数字的数组,求和是100的两个数字位置,用两边夹逼解之。这两个都要写detail的程序的。然后问了一道open question,怎么样在拥有很多书的情况下把书摆的适合查找,而且增加的时候也要保持查找的顺序。后来觉得这道题就是数据库的文件系统怎么设计么。还不用考虑删除,用物理索引解之。
2面,很有气质的gg,感觉是里面的资深工程师。先给我解释了一下sde,sdet,pm的区别。然后问了我简历上的问题。编程上问了我两个sorted single list的merge问题。让我写代码。 我是真的从上完数据结构课就没写过c 的东西了,居然把节点指针写成了in t *。。费了半天劲终于写好了。结果指针移位的时候多用了个temp指针,被指出,道歉,改正。。然后继续讨论sde,sdet,pm的选择问题。真的是很有风度,恩。 3面,很有趣的foreign gg,感觉是开发部的lead。先简单问了我实习的问题,然后问了我毕业论文的情况。令我惊讶的是我毕业论文写的是本体的进化,他居然懂得。。紧张阿 ,不是遇到这方面的大牛了八。还好没有继续问下去(虽然我不是没做,但总是心虚阿)。然后出了一道我至今见的最巧妙的面试题(大概是我孤陋了)。
首先,写个power(x, y)的test cases,就是x的y次方拉。 然后,用循环实现,不用循环实现(用递归),递归费内存如何解决。。我到写递归的时候已经晕了,test case 写了7,8个,自己写程序的时候每个都要注意,真正的test case driven... 这面感觉最不好。 4面,很pp的foreign jj,是test lead(我问的,确定)。先问我sde,sdet,pm有没有讲过,我想当哪个。我说sde,pm把,sdet不干。后来最后才知道她是test lead。。汗阿。首先问了我一个设计问题,让我设计一个媒体播放器,越细越好。我一顿mvc,3层架构,设计模式,插件结构,哈哈,我强项阿。然后吹了一通我的设计的健壮,完整,扩充。恩。然后她让我写个算法,一个随机整形数组,找出里面第一对相同的item。我当时吹得太兴奋了,头脑还是处于结构性状态中,于是只想出了排序的nlogn,没有能做出n的算法(但是我用空间换时间的办法得到了n,就是开一个65563的数组。。)。
离开atc. 感觉后两轮就是按照pm来面试我。等待睡不好,吃不好。听到手机响就紧张。周五我一个好久不见的高中同学过来了,陪他了一天,期间作了一点心理咨询。送他去车站的时候,电话响了,通知我给我pm的offer。 至此我job的**面试结束。总结一下:英语是基础,尽量做到能流畅的表达自己的意思,我觉得后两轮我能通过有很大部分是因为我的想法充分表达出来了。简历是过去,要有漂亮的实习和奖学金。前者是你证明自己能力的最好方式,后面是补充。热情是必须,当你表达出你对这个job的热情并且面试官也很high的时候,offer就来了。 恩,bless all who will have their interview and wish they get what they want.