游戏工程师成长(四) 做事情的4层境界,你达到了哪一层 - 知乎

136 阅读7分钟

在工作过程中,做事情分为以下4个境界,分别是做了、做完、做好、做对,难度和耗时都依次递增。

第一层境界--做了:被动执行,不关注结果

处于这个阶段的研发,别人说什么就做什么,不会为这项任务做整体的考虑。

这类人大致可以分为以下几种:

第一种人没追求的,得过且过,只是想在公司混混日子。他们会觉得事情只要能够完成就好,至于最终效果怎么样,跟他们没有关系。这类人很难拯救,因为他们根本不想成长。

第二种人有追求,但是没有意识到需要把事情做到更好,他们以为只要完成了任务就已经是完满完成任务了,上头就已经很满意了。这类人还是可以拯救的,因为他们只是不知道要做得更好而已,有可能是因为他们以前工作的地方给他留下了这种不好的观念。只要合理地对这类人进行引导,他们会明白之后应该怎么去做得更好。

第三种人有追求、有意识到需要做得更好,但是因为时间不够等原因被逼得只能勉强完成任务。出现这样的情况,责任并不完全在执行者身上,还有一部分原因在leader或者pm身上。游戏行业研发压力大,时间经常会被压得很紧,要把事情做得更好需要花费的时间自然是更多的。

如果真的要把这件事情做得更好的话,可能需要执行者牺牲私人时间。偶尔牺牲一下私人时间也还可以接受,如果这种情况经常发生,执行者也不可能一直牺牲自己的私人时间。从这一点来看,年轻人比中年人更有优势。因为年轻人,特别是刚刚出来工作的人,私人时间一般都是空闲的。但是中年人的私人时间一般都是有事情要做的。这也是35岁中年危机会出现的其中一个原因。

更好的解决方法是执行者找leader或者pm沟通重现沟通时间,让执行者有更多的时间去把事情做好。不要不好意思开口请求更多的研发时间,确实需要更多时间就要及时汇报,不需要什么东西都自己默默背负着,搞得自己压力很大,不仅影响工作状态,还可能影响生活状态。

事情只做到这个程度的话,其实是有点敷衍的,做出来的东西不太能放得上台面。时间长了,leader也能看出来,对自己的发展发展非常不利。

第二层境界--做完:高质量、高标准完成任务

处于这个阶段的研发算是负责任的,起码完成的内容完备稳定,可以良好地接入到当前的系统中。

把事情做到这个程度只能说是比及格线稍微高一丢丢,完成的内容算是能看了。执行者完成任务之后不会有太大的成就感,只会舒一口气。

leader对这类人地印象不好也不坏,只会觉得这是个还能干活的人。

第三层境界--做好:完成的内容质量上乘

这个阶段的人不仅能够完完整整地把事情做完,还会主动为功能作出更多角度的考虑,关注功能的长期发展。

即使在大厂中,能把事情做到这个程度的人也不多。因为不止要把事情做完,还要额外考虑更多的事情,如可维护性、扩展性、内存占率、cpu占用率、FPS。其实能够考虑到其中一两点已经很不错,我到现在也没有碰到能够把这些点全部考虑到的研发。

可能有些研发以为自己考虑到了,但那只是他以为,其实并没有。

例如可维护性,有些研发以为自己的代码写得非常好,但其实很多人都看不懂他的代码,然后他可能还会说:“不是都写得很清楚了吗”。过了一段时间之后他自己都看不懂,然后他就会说:“肯定有人改过我的代码了”,其实并没有人改过。。。

例如扩展性,有些研发以为自己的架构写得贼牛逼,觉得自己整了几个manager就很厉害,蜜汁自信。认真看一下他写的manager就会发现这几个manager之间的耦合度贼高,没有一个是可以单独运行的,这种并不叫封装,只能说是把原本的一坨代码强行拆开到多个模块中。

内存占用率、cpu占用率、FPS一般都是在功能完成之后再统一考虑。在开发过程中也可以稍微关注一下,但是不建议投入太多精力,因为过早的优化并不见得是一件好事。

老实说,如果自己想做,又真的有足够的时间为功能作多方面的考虑,应该是很享受的一件事情。因为可以看着自己的功能变得越来越好,就像自己的孩子长大一样。

要想得心应手地处理好额外地事情,需要长期的积累,厚积薄发。平时多阅读经典书籍,例如《计算组成原理》、《代码大全》等。

第四层境界--做对:完成的内容真的能解决用户的问题

处于这一层的人会具有更强的主动性,具备主人翁精神,参与任务方向的决策。

理论上,把握任务方向这件事情应该由专门的同事负责,在游戏公司中就是策划。把握方向是策划的本职工作。他们必须要达到这个境界。因为方向不对,努力白费。

把握方向跟研发没有太大关系。但是我们可以影响策划,对方向进行细微的调整。如果在某些设定上,你和策划没有办法达成一致,而你坚定地认为策划地想法是不合理地。那可以和直属leader沟通给方向,某些情况下甚至可以请leader去和策划沟通。

一个差的研发只是做了客户需要他做的事。而一个好的研发创造了客户希望他创造的价值,可以通过客户表面的语言帮客户找到深层次的需求是什么,然后提出一个更好的方案。我们要创造价值而不是创造代码。

但是做这样一件事其实不容易被leader注意到,而且需要额外花费时间。leader只能看到你在花时间跟策划聊天,也不知道你是在聊八卦还是聊正事。

但我认为这件事是有意义的,因为这项任务的完成结果能不能被上级认可,很大程度上要看这个功能在游戏中的最终表现。如果最后表现不行,甚至这个功能最后不上线,代码写得再好,上级对你的评价也不会高。

你的苦劳能不能被承认,还得看功劳够不够。所以为了不做无用功,还是要多关注一下方向。当你的功能被一次次推翻的时候,是很受打击的。因为没有什么成就感,在其他人看来,很多东西你做了跟没做一样。

这个阶段需要的是较强的沟通能力,能够和策划的思想碰撞出火花,但是又不会破坏关系。可以学习一下沟通方面的知识,推荐《非暴力沟通》。


清楚自己当前的能力定位是很重要的,这样才能知道自己要往哪个方向去提升。


这里整理了一份多年收集回来的优质学习资料,涵盖游戏开发的方方面面,免费送给大家

image.png

链接:pan.baidu.com/s/1C-9TE9ES… 提取码:cqmd


感谢大家的点赞收藏评论

微信搜一搜「三年游戏人」关注这个有情怀的游戏人,文章持续更新,第一时间阅读

回复【学习资料】可获取一份我收集了多年的游戏开发学习资料

1.jpg

我是Rouder,一个有情怀的游戏制作者,专注分享游戏制作相关内容

谢谢你的支持,我们下期再见!