📅  最后修改于: 2023-12-03 15:09:53.650000             🧑  作者: Mango
微软面试经验 - 全职员工 - 2018
我是一名在微软公司工作的全职员工。在这里分享一下我的微软面试经验。
面试前的准备
在面试之前,你需要做好以下几个准备工作:
- 学习基础知识。不同的职位可能需要不同的技能,但是一些基本的算法和数据结构、操作系统、计算机网络等都是必须要了解的,因为它们是程序员的基本功。
- 刷题。刷题是提高自己编程能力的有效方式。LeetCode 是一个不错的选择。我建议你要做到每天至少做一道题,坚持训练可以提升自己的编程能力和思考问题的能力。
- 查阅面试经验。了解一下面试的流程、面试官喜欢问什么问题、怎样更好地展示自己的优势,这些都是非常有帮助的。
面试流程
微软的面试流程一般是这样的:
- 电话面试。
- 名义上的“大面”。
- 倾向性面试。
电话面试
电话面试一般会通过 Skype 进行,时间不会太长,大约半个小时左右。这个环节是为了让面试官了解一下你的基本情况,了解你的技能水平。因此,面试官可能会问你一些关于算法、数据结构、操作系统和计算机网络的基础知识问题,以及你近期的项目经验、编程语言等等。
名义上的“大面”
名义上的“大面”是指面试中的主要环节,通常会有 4~5 轮面试。在这个环节中,面试官会对你的编程能力、算法设计能力、系统设计能力、思维能力等方面进行测试。这个环节一般会包括以下几个环节:
- 简历和个人项目介绍。
- 算法和数据结构的基础问题。
- 判断题和编程题。
- 设计题、系统设计和项目分析。
倾向性面试
最后一个环节是倾向性面试。在倾向性面试中,你会被安排和将来工作团队的一两个成员进行面试。这个环节的主要目的是为面试官提供更多的信息,以便他们决定是否要雇用你。倾向性面试是一个不同寻常的机会,因为它可以让你了解工作团队的氛围和文化。
面试经验
以下是我自己的一些面试经验,供大家参考:
- 不要把所有的鸡蛋放到同一个篮子里。也就是说,不要把所有的时间和精力都花在一家公司上,因为你可能会最终失望。相反,要多去面试几家公司,拿到多份 Offer,以便更好地做出决策。
- 在面试官问你问题时,不要急于答题。慢慢地、淡定地思考问题,然后给出答案。回答问题的速度不一定是最重要的,重要的是你的思考过程和思考的深度。
- 小心地分析问题。问题往往会存在难点和陷阱。你需要仔细阅读问题,理解问题的本质,避免被问题中的陷阱所困惑。
- 在编程题中,要特别注意代码的简洁与鲁棒性。用简洁的代码来实现面试官所要求的功能,是一个很重要的因素。
- 一定要问面试官问题。这可以展示你对公司和职位的热情,并让面试官了解你对公司和职位的理解程度。同时,也可以使你更好地了解公司和职位的真正情况。