Unity近期面试经历

毕业两年,但已经用Unity做了3年游戏了,从实习开始。

说说这段时间去三家公司面试的经历。

第一家:

公司约的时间是下午2:30,到前台做了个登记,然后前台安排我做了笔试。有算法数据结构相关的题,比如:一个数组,怎么不用循环,不逐一赋值,把它逆序输出。然后是C语言,C++,C#,Lua,C和C++(很多指针题)平常不怎么用,早忘记得差不多了,Lua直接不会。唯一做的好一点的可能是渲染那一块的东西,因为没考多深,基本也就是渲染流程那些。

然后HR象征性地面了一下我,让我回家等通知(当然,这种小公司,一般没什么复杂流程,等通知基本就是没戏的意思)。考算法、数据结构、渲染这些理所当然,C#和lua也合理,但是C和C++当时真的想不明白为什么要这样考,做了三年,从来没用过。但后来想想,这也许可以考查一个人的编程基础到底怎么样吧。经过这家公司面试,于是我就花了几天去学习Lua,基本的语法感觉都没问题。于是又投了两家。

第二家:

这家考了一个算法,入门级的:写一个函数用递归求数列:1,1,2,3,5,8,13,……,n 第n个值。这题我是用Lua写的,从技术面试看应该没什么问题。考的语言基本上是Lua,考了__Index, __newindex, rawget,rawset,这些我前几天花时间看了,也基本掌握了,考法是一段代码,写出后面几个print打印出来的值,都做完了,应该问题也不太大。还有一些比较理论的,比如描述C#的GC,描述数组与列表的区别等。也有一些经验性的,比如让你做UI模块怎么做?实现全局事件(我并不知道这是什么东西,尴尬)时,怎么处理和UI事件的冲突等等。全都答了,写代码的题都用Lua答了。

然后就到技术面了,来了两人,一个说他是主程,另一个没说。他们比较奇怪,说为什么我简历没说会Lua(因为简历早就写好了,而Lua是后面自学的,简历也打印了几份,就懒得改了),但我的题都是用Lua答的。他又问,你们之前的项目不用Lua吗?我老实说了,不用,我们不做热更新,但出于兴趣,我自学了。还问了一些做UI的细节,比较琐碎,不太记得了,唯一记得比较清楚的是问了一个我是怎么实现场景加载的问题,我说用系统的异步加载API,然后监听场景的资源加载,把总进度显示在Loading进度条,还表述了一些细节。也问了一些浅显的渲染知识。

然后就到了HR面,关于HR面我主要说一点,她问我主程有没有跟我讲过这里的工作强度,我说没有,然后她说每周要加班3天,一个月大概有一天要通宵。其实加班没什么,做了几年工作,现在要解散的这份也是995。但问题就在于我是内推进去的,而我那朋友和我说他们是不用怎么加班的,问题就来了,我的期望薪资是按不怎么加班的前提下的。她说等下产品经理应该会和你交待这些。

最后就是产品经理面。让我自我介绍一下,问了一下我工作经历。然后他开始表述他对游戏的观点,他说:“做了几年游戏,你也知道现在的环境,想要做一些有创意的,颠覆性的产品很难,我们都是靠人力物力堆产品把流水推上去的。我不要求你们有多么出色的能力,态度好就行。我是策划出身,你也知道,现在游戏好了就是大家努力的结果,做不好就是策划的锅。所以我是要求我们的策划每天都要加班。好记性不如烂笔头,我让我们的策划每天都写日报,记录他们一天中遇到的问题,想到的新想法。你们技术作为配合,一个星期至少要加班3天。”

当他问我有什么问题的时候,我就问了,听说我加班是要申请的?他说是要申请。我又问:那每天都要写申请吗?他说是的,你自己根据情况选择三天申请。我再问:那周末要不要加班?他有些不耐烦了,大概说不用。我没听清,单纯的我再问了一遍,周末要加班吗?他急了,你怎么对这个问题那么感兴趣?整个过程我的语气都很平和,表情应该也没有表现不愿意加班(表情我看不到啊,但我对加班这种事没很大的意外啊,我只是想确认事实而已)。然后他问我还有什么问题,我说没有了。他就说,那行,你先回去吧,有消息我们会通知你。

我听到这个,我心有点虚,我想基本吹了,肯定是因为我后面那几个关于加班的问题问得他反感了。

第三家:

第三家没有笔试,直接进入技术面试。

首先让我自我介绍,如此这般介绍完了之后。他首先让我比较各种数据结构。数组,ArrayList,List,字典特点都比较了一通。我没说哈希表,因为我不怎么熟悉。但面试官不肯放过这个点,他问,那哈希表呢?我试图按自己的理解从表层扯一些,以表示我是用过它的,有去了解过它的。扯了几句,我发现我实在扯不下去,我说哈希表我还不是很理解。

由于看到我简历写着第一家公司是做UI的,他问我:UI管理要怎么做?包括一些什么东西?我就按我的理解,把如何管理UI各个模块,包括模块的加载显示回收,还有UI和数据的交互讲了一遍。

然后问我关于UI的层的控制问题,答了一些渲染队列的知识,具体不太记得了,没什么问题也没纠结太久。

回到C#的问题上,拆箱装箱,把过程原理说一下。如果C#没有提供强制类型转换,你怎么自己去实现它?
协程是怎么实现的,如何用纯C#怎么实现协程。临走的时候,他说:基本还可以,你先回去,我到时打电话通知你和老板见面。

10多20分钟吧,他就打电话过来,叫我回去面试。在会议室等了一会,进来一个人,他说他是项目制作人,让我自我介绍了一遍。我又把基本情况,工作经历交待了一遍。然后他对着简历问我了一些以往项目中负责做了一些什么东西,我如实说了一下。还问了一些我的职业规划的问题。和我介绍了一下他们的项目情况,公司发展情况。后来跟我说HR要面,等一下消息,但等了好几天,应该是凉了。

总结:

1.不要过多去问关于加班的问题,如果有熟人在里面直接问熟人好了。或者等拿到offer的时候再问。游戏公司情况比较特殊,加班普遍严重。

2.技术老大问技术和职业困惑,主管boss问公司发展和职业发展,HR问生活。

3.平常做项目,学习,多问个为什么。不要只顾埋头写逻辑,多想多学一些底层的东西。知其然,且知其所以然。(虽然作为一个搬砖级的程序员来说,平常更多的只是写逻辑就行了,但如果想要进阶的话,还是多深究一下。想当将军的士兵会让面试者更喜欢吧)

4.关于知识点:几次面试比较常规的知识点是:C#(GC,装拆箱,ref/out,容器,迭代器),Lua(元表,面向对象),算法,数据结构,渲染(流程),性能优化。(这个肯定不全面,只是我基于最近面试的总结)
#游戏工程师##社招##面经#
全部评论
我觉得你学习到的第一点不是你的问题,第二家明显脾气暴躁,而且看得出来挺会甩锅,可能就是加班加出来的。你进去了也不一定会工作的开心,要么是加班,要么是策划的争吵,可能还有一段时间这两者一起来了。相反,第三家主动给你介绍项目和公司情况正是说明了他们的诚意,应该很有希望,不会凉的。
4 回复 分享
发布于 2019-12-09 10:21
https://www.cnblogs.com/yougoo/p/7241139.html 楼主发的是两年前的面经吧。。
5 回复 分享
发布于 2019-12-15 22:19

相关推荐

喜欢吃蛋糕仰泳鲈鱼是我的神:字节可以找个hr 给你挂了,再放池子捞
点赞 评论 收藏
分享
评论
7
31
分享
牛客网
牛客企业服务