游戏行业工作第3年所思所想
写在前面的话
算上实习,今年应该算是我毕业后工作第3个年头了,一路走来不算顺利也不算特别波折。硕果累累不敢说,不过算是走在了自己想走的路上。最近很多同事离职了,心中有了不少想法想写下来。
2018年进入游戏行业
大学前期对学业都很不重视,尽管大三大四开始认真对待学业与思考未来,但是因为硬实力不足在找工作一直不太顺利。一个契机让我找到了一个做游戏测试的机会,因为选择不多加上觉得那个游戏公司是大厂,就决定去尝试一下了。到现在我也会时不时说起当时的选择有点过于冲动,不过有时我也在想,会不会就是这些冲动的选择,才会造就了真正属于我的人生呢?
从游戏测试出发
当时面试是去到公司坐落在市中心的分部。第一次走进平时只能在外面仰望的高楼大厦,感觉连呼吸的空气是高大上的。面试过程还算顺利,主要是问一些简单算法和玩过的游戏。最后我也成功拿到了人生第一个offer,也正式开始我的“游戏人生”之旅。
公司要求白盒测试,开发语言用的是之前没接触过的python,所以需要边熟悉工作边学习。公司对新人有个算比较完整的培训流程。初期跟我在学校差不多,每天工作的内容就是学习python,玩项目的游戏。之后就开始学习写测试用例和熟悉项目流程,和帮忙做一些简单的测试。最后的大作业就是用python完成一个简单的游戏就开始参与到正式流程里去了。
因为是白盒测试,对最后质量的要求是比较高的。外放后出现问题了,测试基本都是先被问责。根据个人思考,我总结下公司对于测试岗位工作流程上的一些优缺点
先说有点:
1.公司给每个测试都安排了单独一个服务器,工作期间基本不会各自影响到。
2.公司提供比较强大的客户端代码打包工具与服务器操作管理网页系统,学习成本比较低,对提高测试效率很有帮助。
再说缺点:
1、项目代码分为客户端与服务端两部分,都是在公司一个内部网页系统上阅读的。那个网页系统上的编辑器功能有点落后,用起来很麻烦。
2、因为保密机制,两部分代码的权限都不是默认全开的。如果在测试期间发现某个文件没有权限查看需要拜托编制内的同事开放权限。客户端部分的代码只有只读的权限,所以搭建测试环境相对比较费力。
3、测试组内的分享培训主要一些测试思路与版本相关的内容,很少针对代码结构做讲解。在发现bug时通常是通过重复自己操作去重现bug并让开发找原因,很少会第一反应从代码层面去思考bug原因。
对于第2个缺点。其实完全可以通过个人努力去克服。比如网页编辑器功能不行,我当时的做法是把代码复制出来保存在本地手动生成的项目目录。但是当测试内容很多,开发修改更新很频繁的时候,这种人工git pull的方法真的很累。最后的结果往往就是忍受着使用落后的网页编辑器。
在我现在的角度与思考第2个缺点。虽然为了保密机制,代码权限不能默认全开也无可厚非。但是在测试熟悉代码结构后,对于编写用例与bug复现与定位的确会有很大的帮助。这不但能提高测试质量,开发也可以有更多时间去开发与设计自己的代码。最后下班时间也能提前了。
第一个目标
我是以外包形式进入游戏测试的公司的,当时签合同也是和第三方公司签。当时首要目标跟大多数外包的同学一样,都希望通过自己努力获得转正机会。
加上在我刚入职不久就见证了一位外包同事成功转正。当时主管的说法是:“只要在游戏测试岗位工作2年以上,并且对这个岗位有兴趣,公司会提供转正机会”。所以内部转正这个首要目标当时还是比较坚定的。
2019年萌生转行游戏开发的想法
在游戏测试岗位工作一年后,我已经听过不少类似“游戏测试没用,游戏开发才有前途”的观点了。对于这类观点的正确与否先不做讨论,但是随意找个招聘软件找个公司查看,初级游戏开发的待遇的确会比游戏测试好不少。所以“见钱眼开”的我有了转行的想法。
一天早上,我刷到了一篇微博分享,主要内容是一个叫appgamekit的游戏开发引擎限时开放免费领取了。当时就抱着了解了解心态去领取了,也打开了我游戏人生新的大门。
学习第一个游戏引擎
appgamekit引擎的开发语言可以是c++或vb,官方有提供demo和视频演示。因为之前学过c++,就选择从这个语言入手学习了。
官方提供的大部分demo都是vb写的,只有小部分用c++写的都是。我的做法是先小部分c++demo学习接口,再把官方提供的用vb写的demo用c++实现出来。
当时也成功完成了我的第一个独立开发项目《终极贪食蛇》,又名《大家来找bug》。虽然bug是挺多的,代码结构也乱得连开发者本人都不想再去优化。但是做出来那一刻真的成就感爆满。
当时还尝试过把这个引擎的一些接口用文章分享形式记录下来,但是由于本人太忙(懒)了所以写了个开头就没更新过了。
虽然萌生了转行想法,但是当时内部转正依然还是首要目标正。原因也很简单,就是虽然转正和转行都很难,但是对于没接触过开发的我来说,转正确实相对合理一点。之后我也渐渐忘了转开发这件事,继续做着游戏测试的工作。
重新审视未来
在即将迎来工作两年这个时间节点的时候,一些事情让我开始重新思考自己的目标。这些事情我根据优先级总结成以下两点:
- 工资待遇外包和编制内区别是比较大的。工资这一点可能刚入职我可以接受,毕竟外包门槛会低很多。但是越到后期,经验能力差距越来越近的时候,我个人会觉得这个不是太合理。待遇这一点可能跟我的个人心态有关。一直以来以外包身份在公司受到的区别待遇的确有点难受。公司年会外包是不能参加的,每次过节公司给的各种礼物礼包外包是没份的。每次看着编制内的同事成群结对去年会,或是大群里通知“编制内的同学去xx拿礼物”时,那感觉真的一言难尽。
- 转正机会渺茫。测试组内有过半的同事都不是编制内的,有的已经入职3到4年了。对比起入职不到2年的我想弯道超车的确比较困难。
- 游戏测试岗位审视。对比起发现游戏bug与研究测试工具,我发现我个人还是更希望能亲身从事游戏开发中去。
遭遇疫情
在不断地请教做游戏开发的朋友与自我思考后,我决定开始着手准备转行游戏开发。
那时一位朋友经历启发了我:那位朋友是我的高中同学,在他大三的时候他决定出去英国读硕士进修游戏引擎开发。做这个决定的原因是,他希望出去能找到大厂的游戏开发工作,但是按他目前学校毕业的学历估计不能实现。在我工作即将满两年后,学成归来的他也如愿以偿地找到了心仪的工作。
按我当时的状态继续工作两年后感觉变化不会很大。为何不利用这2年时间出去拼一把呢?所以那时我的第一想法是着手准备出国留学,回来新的起点重新开始。
天有不测之风云,当我买好书籍准备考雅思的时候,疫情爆发了。全国人民自我隔离,就连出家门都受限制。出国这条路暂时受到了限制。
塞翁失马焉知非福,也因为这个疫情我的春节假期延长了。虽然需要在家办公,但是也因此自己可支配的时间变多了。所以我利用了这个多出的假期好好地复习了c++和数据结构,尝试找回代码手感。
新的目标,学习unity引擎
因为疫情出国进修这条路受到了限制。在朋友的介绍下,我得知了一个目前比较主流的引擎——unity。通过了解得知unity是一个比较成熟的引擎。相比起agk,unity有更长的历史,官方也会有更完善的资源。而且目前unity开发也算是比较热门的岗位。
所以我决定先通过网上的资源学习unity开发。unity开发用的是c#语言,语法与c++很相似,所以语言这块学起来不还算特别轻松。
前期我主要是从b站找一些国内培训机构提weiwan供的免费课程视频学习基本操作。之后有一定熟悉度后,就开始从siki学院找一些项目跟做。之后就直接购买一些收费课程跟做了。说实话b站和siki学院的课程挺好的,对于我unity学习真的有很大帮助。
未完待续