碎碎念

大家都跑路了,我也想跑路呀,于是乎,在同事的推荐下,有幸能去一家游戏公司面试。

我的缺陷

对算法不够熟悉

磕磕巴巴地写完了笔试部分,发现以前打竞赛学的好多东西都忘了,LeetCode还是得坚持刷下去,以前DP问题都是小case。

对Golang底层的理解不够深入

  1. GMP调度逻辑
    我大概知道GMP调度流程,但是并没有仔细深究。

  2. Profiling 经验不够
    在现在这家公司,可能全部门也就我一个在Profiling自己写的程序,野路子对着网上的指南着实也有点难。

  3. GC的深入了解
    都知道Golang用的是三色标记+写屏障,但是内存逃逸如何分析着实经验不够。

对现实不够理解

  1. 不熟悉游戏行业
    我本身从事的是物联网行业,这次去面试的则是游戏行业,虽然都是后端开发,但是行业不一样,依旧有隔阂。
    面试官很nice地向我介绍游戏行业的规则,每完成一个项目就可以开一次奖,可能是空的,但是开的奖多了,开出东西的概率就高了,确实与我现在在的行业截然不同,涨知识了。
    不过同时,加班还是要的。

  2. 没有对职业生涯有较好的规划
    同样是面试官跟我说的,我觉得很值得思考。在程序员的行业里,如何衡量一个人的价值,特别是工作几年之后。可能衡量地标准并不是技术的精深与否,而是业务能力的强弱。

想到的解决方案

  1. 刷题
    每日LeetCode我来了。

  2. 被Code Review
    继续投入到目前参与的开源活动中,大佬教教我.jpg。

  3. 看看底层
    虽然说大部分情况下,学习底层的东西收益不高,但是确实很好玩儿。

  4. 加强Profiling
    Profiling自己写的代码,多看看人家是怎么分析的。

  5. 认真考虑一下以后从事的细分行业
    隔行如隔山,所言甚是。
    对于游戏,我谈不上特别热爱吧,但是确实很喜欢RTS游戏,基本不打FPS,确实有一段时间想如果可以一定给群星的CPU 0减减负(一核有难,7核围观.jpg),虽然P社玩家应该直接清空别人家的人口减负

总结

今年开年的第一次面试,有些马虎,有些害怕,不过这一小时过去确实已经学到了很多,很高兴能去面试,很感谢同事的推荐。

Update

2022-04-02
今天去二面了,有两位面试官,第一位面试官给了个邮件分发的场景,考察了一下并发编程,问了问我数据库方面的知识,比如MongoDB和MySQL的区别,主备方案 .etc,然后复盘了一下我的上一个项目。
第二位面试官来了之后,综合考量了一下我的经历和项目,然后也是抛出了两个很关键的问题。

  1. 加班强度能否接受
  2. 是否会在游戏行业继续下去
    这是两个很值得反思的问题,这次想跳槽的原因,一是觉得工资不够,个人资本累积太慢,通胀太快,二是想学习精进一下自己的技术。
    有一说一,起初并没有考虑这么多。
    我觉得加班可能不是问题(虽然面试官觉得我可能顶不住),但是经过两轮的面试,无论是哪个面试官,给我的最直观的印象就是对于游戏的热诚。无论他们从事的是哪个岗位,对游戏的热爱可能是支持他们工作下去的动力,也是他们做出好游戏的动力。
    就我对游戏而言,热情是有的,但是扪心自问可能赶不上他们这些Game Dev,某种意义上对钱的热情可能不亚于他们
    还有就是对个人整个职业生涯的规划,我觉得的面试官们,都在很大程度上给我提了个醒,真的非常nice。
    无论最后结果如何,我觉得这段面试经历都很值得。