米哈游 22秋招 游戏客户端面经及学习、准备经验(已oc)
更新:最近新写了一个经验贴,欢迎大家来看看哇https://www.nowcoder.com/share/jump/9359330182581664580
以及,欢迎找我内推!帮看简历帮看进度!
这是我第一次写面经方面的帖子,如果有哪里写的不好,还请多多包涵,也欢迎大家找我讨论。面经中不会出现任何具体的题目信息,但我会尽量把我的体验、见闻都分享出来。
首先介绍一下本人情况,上海西南某高校计算机本科,暑期在腾讯魔方实习。简历有一个多人TPSdemo,Games101/202的项目,以及一个光追渲染器。
7.10 投递简历
今年提前投递简历有机会免笔试(比如我)。鉴于今年笔试的激烈程度(有小伙伴笔试ak但也没通过),还是建议能早投递就尽快投递,一方面进度快,一方面也避免掉一个不确定因素。
8.03 一面(90min)
一面主要是C++八股文,提问中会根据你的回答转到操作系统、计算机网络相关提问。考察方式很多,包括提问回答的背答案方式、给你代码让你看问题、改进,还有给你情景来看你的解决思路,以及手撕算法题(难度不高)。此外,也有深入到源码中的一些问题。总体来讲,感受是考察方式比较灵活,基础得比较扎实而且确实实际用过,有一定的理解才能比较好应对,不然可能会蚌埠住。后面反问环节体验很好,我问了一些关于职业发展方向、学习UE方法之类的问题,面试官给我事无巨细讲了半个多小时,只能说前人的经验是真的老道。最后总面试时长估计超过了100min,总体体验很好。
8.15 二面(60min)
总体强度相比一面低了一些,主要是围绕简历问一些技术问题。因为我的简历里面图形学项目为主,也问了一段图形学的问题,但是难度都不高,属于相对基础的问题。后面也有交流对实习在的组的游戏的看法,对游戏行业的看法等等,总体感觉,面试官把自己姿态放的和面试者在同一高度,没有高高在上的感觉,面试体验相当的好。
另外,二面的强度可能与一面的面评有一定相关,如果一面面评不是特别好的话,可能二面的强度会比较高。(这个是我身边几个小伙伴总结出的感觉,不一定准确,仅供参考)
8.22 HR面(60min)
HR面基本内容都差不太多,讲了讲实习期间的经历,包括怎么和人合作,实习的感受等等;问了问对未来的职业规划,为什么选这个行业等等这些问题。整体氛围挺轻松的,还给面试官小姐姐看了我之前画的线稿以及cos照片(雾)
9.22 OC
准备面试的经验以及资料
1. 八股文
今年就业形势并不好,好公司对八股文的要求也不再止于会背诵就可以了。这方面,建议要多找一些八股相关的参考,做到最起码绝大多数面试常见问题都能有一定了解,或至少有思路。另外,要在一些比较难的点上(比如智能指针,完美转发等等)有深入的钻研,可以是看相关的技术分享文章,也可以是查看源码、书籍,总之要对其有完整的一套理解(之前有什么问题/不足—这个技术点解决了什么—怎么解决的—特性、特点以及实现的原理),需要能逻辑清晰、层层递进地把它完整讲述出来。
在面试的时候,要试着引导面试官的提问方向,让他尽量往你熟悉的地方(就是上面说的有专门钻研的地方)去问。如果他问的问题在某个方向上和你准备的有所关联(比如他问你右值引用,你就可以讲完基本的东西后提到C++11有与之相关的新功能完美转发),那么你可以尝试把话题引到你熟悉的东西上。通常面试官也不会说你不要讲这个之类的()。这样下来,面试过程中可以尽可能避免你不会的点,展示你会的地方与钻研的能力,也会显得逻辑清晰。
另外,最好要有一定的实操经验,这样在面试的时候可以“我直接打一段示例代码说明这个吧”,这种方式说明的也会比较清晰。(比如讲继承的内存分布的时候我就是直接写了个实例代码来讲)
2. 学校基础课
在学校当中的基础课也是很重要的,相当于是后续发展的地基。要深入理解技术的细节,很多时候都会涉及到对基础底层知识的理解。另外,对底层深入的了解也是面试的一个加分项。比如,如果学过编译原理,在讲C++编译过程的时候,就可以简单提一提词法分析、语法分析,讲讲LL/LR文法,讲讲语法树的构建,以及一些常见的编译器优化算法,这就比简单背八股文答案的预编译编译汇编链接要强得多。再比如,讲到程序运行的时候,因为有学过系统安全的东西,在面试的时候我是直接共享屏幕用IDA PRO查看的.exe文件,对着里面的各个部分讲述功能,这样就会比较清晰,也能体现出来技术积累。
3. 简历的项目
简历项目最好与申请的岗位强相关(像我的其实就不是那么的好,太偏向渲染了)。最好要对项目中的技术点、做这个项目的目的、收获等足够的熟悉,在面试中可以流畅地讲述出来。另外,有一些相关的技术点可以穿插在面试官提问的过程中,如果提问的技术点和你项目中的某个part强相关,那么在这个时候直接展示一下项目中的这段代码,可能说服力比你讲得再流利都好用的多(比如我讲BVH加速的时候,直接展示了渲染器里相关的加速代码,就可以很清晰的讲出原理了)。
4. 实习经历
实习经历与上面一样,最好有一定相关性,在春招的时候有机会申请暑期实习的话尽可能积极申请。不论是这段经历给你面试的谈资,还是可能的转正(虽然今年基本没有),以及实习中认识的许多优秀的同僚,都是非常宝贵的财富。
5. 资料
这里是一些我自己准备时用到的资料。在这里感谢各位大佬撰写的技术文章以及八股文,对我的春招秋招帮助很大。如果有侵权或不合适的部分,请联系我删除。再次向各位大佬鞠躬致谢!
C++八股https://sjtueducn-my.sharepoint.com/:b:/g/personal/hyjrgslm-lzd_sjtu_edu_cn/EZ2p3Ee4kAREouD0_SZc8H4BVJwwDD6VRZpJQOZ6kWQz5A?e=0Phh7w
万能引用、完美转发https://blog.csdn.net/guangcheng0312q/article/details/103572987?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-103572987-blog-124264766.pc_relevant_multi_platform_whitelistv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-103572987-blog-124264766.pc_relevant_multi_platform_whitelistv1&utm_relevant_index=4
智能指针https://yuanlehome.github.io/DVejmy5owOXx5WKk/
C++标准库https://iowiki.com/cpp_standard_library/
万能引用、完美转发https://blog.csdn.net/guangcheng0312q/article/details/103572987?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-103572987-blog-124264766.pc_relevant_multi_platform_whitelistv1&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7Edefault-2-103572987-blog-124264766.pc_relevant_multi_platform_whitelistv1&utm_relevant_index=4
智能指针https://yuanlehome.github.io/DVejmy5owOXx5WKk/
C++标准库https://iowiki.com/cpp_standard_library/
结语
经验分享大概就到这里***花~
我也只是一个今年秋招的新人,不管是认知还是知识水平都相当有限,欢迎各位和我友好交流,让我能多学到一些东西。如果上面有哪些不正确的内容,也欢迎大家指出,我会光速改正。
学弟学妹们有什么问题想问的话也欢迎戳我呀,我一定知无不言
就酱,撒花~~
#米哈游2022秋招##米哈游面试##秋招##面经##校招#