前几天去了MS的on-site,稍微记录了下,算是提供点感性的认识,也希望地里的兄弟姐妹们看了以后,再面试的时候可以驾轻就熟。
我是在温哥华某野鸡大学读本科(必须不是x二代),杀过campus interview和phone interview拿到on-site的邀请。(其实前两轮没有太多technical question,比较好过) 因为gf在加州,我没有选Seattle,挑了Mountain View。
之后HR会发一个很长的邮件,内容主要是:
1. 告诉你会要填一大堆表格
2. 告诉你on-site面试是怎样的.
3. 让你挑选4个available date.
之后的几天会收到大量的邮件,都是一些paper work,包括面试的准备,往返行程的安排和一些背景调查。 还有一些文档需要阅读,很详细的介绍了interview的流程,包括Q&A,还有一些“当地好玩的地方”的指南。
可以报销的费用:
机票
酒店(直接是MS买单)
租车或者taxi (taxi的话,机场到酒店来回,酒店到MS来回都可以报)
早中晚饭(早饭15,中饭20,晚饭40;含税及小费).
每天30刀:长途电话 / internet费用 / pre-paid电话卡
如果经过recruiter同意,甚至可以报museums, sporting events, theatre这些的门票 = =|||
值得一提的是,如果你想知道你面的是哪个组,document里有说,你可以在面试的前一周email给interview scheduler问。(If you are interested in knowing ahead of time, please email your Interview Scheduler within the week of your interviews and he/she can request your technical recruiter provide you that information. )
我试了但是HR没告诉我。。 不过面试前一天HR发邮件告诉我了第一个面试官的名字,去LinkedIn搜一下就有了。 其实email里写的很明确team不会期望你对他们的产品有特别的了解,事实上我在面的时候也没有被问到任何跟那个team有关的问题。
因为我是在Mountain View面,而我的scheduling recruiter在Redmond,所以我并没有见到他;但是面试前一天他跟我通了个电话,详细过了一下面试当天的流程。
面试那天去前天报到,不用去太早——提前十分钟即可。前台会发邮件叫面试官下来,被领走以后就去他的office面了。Microsoft每个人都有一个office,面试其实是一个很好的机会去接触每个面试官的culture。因为面试你的这些人就是招你的这个team的组员,如果你进了以后你就跟他们工作最密切了。所以在他们考量你的同时,你也要考虑是不是喜欢他们。 :D
每个面试官会问1-2个technical question,都会叫你在white board上写代码。一个面试官面完了会把你带到下一个面试官那里去,这也是个参观他们工作环境的好时机。中午还有个lunch interview,一边吃一边聊,不过那个会casual很多。我上午感觉还不错,问题也不是很难,但是下午有一道应该用DP的问题我没有做出来,直接悲剧了。
面试完最后我没有见到hiring manager,意思大概就是我被rej了… 不过这次本来就去混经验的,为一年后做准备。感觉interview这个东西不练是不行的,不管你平时写了多少code做了多少project。
顺便摘一点面试前Microsoft recruiter发来资料里的interview tips:
(自己做的笔记,有些是摘了原话有些是自己写的).
1. passion about software.
2. Persistence:
不要在任何面试问题前放弃。在给出足够的test case前,也不要轻易说“I am done”
3.Testing:
Taking a problem, break it down into manageable pieces, and systematically test the pieces and then, and only then,the problem as a whole…
(1) understand it thoroughly, (2) break it down, and then (3) creatively and fully cover quality control in your test cases.
Be sure to classify your tests (i.e., border cases, common functionality, error checking, etc.)
4. Programming:.
Expect follow up questions on how to optimize the algorithm, how to improve an existing piece of code, etc…
Feel free to take a few seconds to think about the problem and ask clarifying questions. Our interviewers like to ask ambiguous questions so when in doubt, clarify. And be sure to test your code before saying you're done
You will be asked why you want to work for Microsoft & why you want to be a SDET @ Microsoft. We are looking for people who want to make technology better..
You will be asked if you have any questions.
Always come up with a question… there must be something that you would like to know
Review basic programming questions, such as how to turn a recursive solution into a stack-based one, how to reverse a singly linked list, how to traverse a tree (pre-, in-, and post-order), etc.
scheduling recruiter电话里给的建议:
Ask questions. Be confident and relaxed, treat them as mentors and friends..