游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2571|回复: 3

上海职场记

[复制链接]

3

主题

174

帖子

748

积分

高级会员

Rank: 4

积分
748
发表于 2018-2-7 01:24:37 | 显示全部楼层 |阅读模式
    2016年12月,我正式登陆加拿大,前后5年的移民历程告一段落,标志我人生的一个重大转折,这个转折会给我带来多大的影响,目前还不知道,只是,出于总结纪念的目的,还是希望把在上海的游戏行业从业历程记录一下,毕竟那里曾经是我付出心血,获得荣耀,也深刻转变自己人生观的地方,是为序。

    先简单介绍一下自己的工作成绩吧,从业6年,上线了一个页游——海贼无双,上线了一个端游——三国杀英雄传。页游是从无到有全程跟的,端游是内测后加入的。后期创业当老板,做了一个unity战棋手游,却等到了移民通知,果断把事情交付给他人,出国去也。

    这里顺提一下技术问题(我一般很少提及技术问题,主要有两点原因,一个是我个人技术能力比较强,自己强什么就懒得提什么,二个是我极端反对程序员动则提及技术,要想做好游戏,只懂技术是远远不够的,总是提技术,这人也就是个程序员水平)。端游真的很锻炼人,技术含量比页游强了很多,三国杀英雄传最终能做到同服4000人在线不卡不掉线,这份经历和技术财富全被我吸收了,我非常感谢边锋公司,让我做了上海可能是最后一批端游服务器程序员,有很多问题不亲自排查一遍是无法体会的,后来者哪怕有这个技术能力,也没这个运气碰到这么大的服务器压力了。其中,我最为自得的功绩就是,单枪匹马把这个开发6年,前后经手程序员无数,代码风格极端不统一,深浅BUG层出不穷的项目,以一人之力全部搞定:修正掉所有BUG,优化整套代码,最终达到4000人在线无压力的结果。

    所以想想看也是很感慨,从开始以为自己是个屌丝,到终于明白其他人才是屌丝,自己是个牛人,这个转变足足花了我6年。直到今天才明白自己在那些凡人身上浪费了太多的时间与口水。一个人一个命,狗行千里吃屎才是他们的最好写照,这都是题外话了。

    计划中,整篇文章分两个主题,先后介绍两个游戏项目的经历,以及工作中自己人生观世界观的变化,按照先后顺序,首先介绍海贼无双。

    时间有点长久了,以至于印象都有点模糊,但是接到入职51COM(没去的别浪费时间了,纯垃圾公司)的电话的场景我一直记忆清晰,那是在上海一家四海游龙的门口,猎头苏珊打电话给我,说51COM对我的背景非常满意,叫我尽快入职。我随口答应了一声,就挂了电话,说句不夸大的话,上海还没有哪个公司我面试不上的。所以这个机会对我而言并不重要,抱着无所谓的心态,寒暄几句就把电话挂了,我满脑子想的都是另外一件更重要的事情。

    因为我刚遭到了巨大的失败!之前在上海预言软件,作为主程序,自己的项目没做出来。我亲眼目睹了项目失败给组员带来的巨大摧残——调组的调组,离职的离职。28岁的我刚刚认识到主程序的责任有多么重大,要承担的责任远远超过了技术层面。我反复在思考,到底是我能力不足,还是公司管理不善?(现在回过头来想,我的责任更多)。现在51COM的头衔又是主程序,我打定主意绝对不能再害人一次!想通了这一层,我回拨了苏珊的电话,再三强调我不能做主程序,苏珊答应帮我和公司沟通。

    等了20分钟,苏珊的电话来了,说公司答应我的要求,我当时还挺高兴,他们可以另外找个主程序,我可以跟在后面学学人家是怎么做事的,对我今后的道路会非常有帮助。(当时真是太年轻,我这一路走来,坑B看到无数,比我牛逼的就见过一个。最后才明白原来最强的那个人就是我自己,可惜我当时都不知道,走了很多的弯路)。就是这通电话,埋下了我在51COM整个扭曲经历的伏笔。

    写到这里,我打开简历,看到了这段工作经历,在此粘贴如下:

    负责MMORPG页游服务器端的设计和开发;整个项目采用巨人的网络底层,本人独立设计与开发页游各个游戏模块,服务器调优,解决线上BUG。
    作为猎头推荐人才进入51com,进去才发现是个惊天巨坑。服务器端只有一名服务器开发人员,且原先从事ERP软件开发,毫无网游开发经验;制作人因为迟迟无法做出DEMO已被开除,群龙无首,整个项目处于解散边缘。
    之后领导又从腾讯找来一个所谓的高手,技术能力一般但是特别能内斗,胡乱修改服务器端代码却又没有能力把新代码稳定。直接导致半年后公测服务器宕机严重,且玩家会卡死账号,无法再次登陆,各种问题层出不穷。
    在项目组拒绝和腾讯的高手共事之后,本人带领另外一名服务器开发人员潜心排查BUG,一一解决所有线上问题,整个服务器端在10月份基本稳定。后续功能开发和运营需求开发逐步推进,已经成为51COM页游事业部仅有的拿得出手的成功项目。

    这段描述已经是避重就轻了,真相比简历上写的坑多了,下面我慢慢说。

    2012年2月1日,我正式入职51COM。从凯旋路到张江,满目荒凉让我暗自忐忑,毕竟一个是浦西,繁华之地,一个是浦东,荒凉之所。初来匝到的我很不习惯。更让我不太习惯的是工作的氛围。感觉整个项目组非常奇怪,做事又不像做事,很多工作进度推进不了。就在我暗自着急的时候(总不能这个项目也黄了吧,那我没成功上线项目,我以后还怎么混?),工作例会召开了。

    那时我第一次见到项目组的策划,一个叫仇慧军,一个叫孙卓。他们向我简单介绍了下项目的背景,要做成什么样的游戏,最终讨论了项目的进度计划。当时我记得定下的是3个月上线,别的页游该有的功能全都得有,说实话这份进度表把我震惊了——一行代码都没有的情况下,在三个月内实现这么多功能,基本是不可能的事情。可这两个策划非要这么制定,到底有什么别的目的在?

    没办法,继续聊呗,谈谈困难,谈谈进度的客观压力,谈谈策划文档全不全,聊着聊着,他们开始说实话了。我这才明白项目的由来,以及为什么大家要赶快把项目赶出来。

    大概是半年多前,51COM成立了页游事业部,想在轰轰烈烈的页游市场里面分一杯羹。当时成立了三个项目组:
   
    一组带头的是51COM当时的CTO,赵宏华;
  
    三组带头的是曾经出去创业,失败后又回来讨饭吃的51COM前资深员工,林融;

    二组是我所在的组,项目经理是从巨人挖来的一个资深程序员,名叫万里鹏。半年过去了,正式的DEMO一直做不出来,万程序为了摆脱责任,开始把责任推卸给下属,在某次例会上以美术不够好为由,企图开掉当时的UI美工。项目组实在无法忍受这种无能的货色,群体弹劾掉该项目经理。(从这里能看出来,项目二组还是有点决心的,这也是项目二组是唯一能做出产品的原因,只是后来的事情太可惜),没有下属的支持,任何领导也混不下去,万程序灰溜溜的滚了,留下一个烂摊子——这就是我来的原因了。事后我才发现,这次简单的弹劾事件,在51COM的领导层里面埋下了很深刻的印象,就是二组不听话,不好管,是页游事业部一个非常大的麻烦。

    几年过后,页游事业部因为没有业绩被解散,CTO赵宏华被开除,三个项目组只有二组出了一个还过得去的产品——唯一能出货的组,被管理层认为是不听话不好管的大麻烦,呵呵,现实就是这么讽刺。其实人都是自私的,他们根本不关心项目如何,前途怎样,他们只关心他们的地位,房子和票子。对付这种人,真是太简单了,你弱他就强,你强他就弱,没有谁天生就该上位,世事就是这么简单,可惜二组傻逼太多,理解不了这一点。所以最后落得了悲惨的下场,现在想想这就是他们的命,没办法的事情。

    知道项目组的背景之后我非常震惊。我是少数几个很早就意识到上线产品可以给自己背景加分的程序员。我非常看重成功的产品经历。如果我在这里也失败了,我该怎么再找工作?不行,我必须让这个项目上线,我暗自下了决心,不是为了项目组,而是为了我下一份工作,能找到更好的工作,学到更多的东西,提高更好的自己。我不能再接受一次失败,所以我打定主意,哪怕天天加班,也一定要让这个项目上线,这样我也有一个上线的成品项目经历,对我之后的道路是非常有好处的。

    把主要问题弄清楚,把我该做什么想明白,我不再害怕和迷茫(这就是我一直强调的,人要时时刻刻明白所处的环境,自己能做哪些事,不要死到临头才知道自己已经危险很久了),下面就开始干活呗。

    当时项目组配置是服务器两名程序,客户端三名程序,两名策划,美术人员未知——很小的一个项目组,沟通还算通畅,更重要的是,当时他们头脑还很清醒,知道产品做不出来,大家都得滚蛋的事实,这是个好消息。

    可惜除了好消息之外全是坏消息,整个组没有一个人有过成功的产品经历,都是从一个项目组跳到另外一个项目组,一个公司混到另外一个公司的老油条,项目主策划仇慧军更是搞笑,我记得他是先是在北京上班,混不下去了去山东上班,又混不下去了跑来上海。了解到这里,我对项目能否成功已经不抱指望,只要求技术上不出问题,能上线我就可以跳槽了。可技术上也是让我非常不放心,客户端主程序叫雷斌,是创业失败后来的,也是个失败者,用外国话叫loser。另外一个服务器程序叫陈春宁,原来是做ERP的,看到游戏业赚钱跑来赚钱。且不说动机纯不纯,单说ERP。我原来是做电信行业的,和ERP也是同宗同种,深刻了解这种行业,对技术要求很低,只要求实现功能就行了,他能不能承担的起游戏开发的工作?我心中不禁又是一个问号。

    虽然有这么多不利因素,我只是觉得烦乱,并没有失去信心,因为我了解自己的技术水平,只要这些人不拖我后腿,上线肯定没问题。顶多自己累点罢了。简单划分下工作进度,我和陈春宁就分头开发——在开发中,我发现陈春宁的缺点,的确是ERP行业出来的,他的代码简直就是浆糊,完全没有一点规范性可言,我曾经建议他读一读《代码大全》,他置若罔闻,我也是没办法,ERP行业在他身上刻画了太深刻的印记,那就是完成功能就OK,代码讲究不讲究,无所谓,呵呵。

    当时的工作进度的确很紧张,我记得我做的是装备系统,前后进度只排了一周,也就是五天必须把整套装备系统完成,包括什么合成,洗练啥的。每天都加班到晚上10点。打车回去的路上昏昏欲睡,没办法,我的前途全压在这个项目上了,我不能再承受一次失败,我知道自己的代码不会有任何问题,所以我制定了一个计划:尽可能多做一些模块,这样整个项目没问题的模块就会很多,上线后才可以集中精力处理出问题的模块(简称陈春宁的模块,我对他技术能力实在不放心)。我做事一贯深谋远虑,富有前瞻性,后续的发展也证明这套策略是非常正确的。我之后也凭借这个项目获得了很多更好的机会,最终我选择了边锋,三国杀英雄传让我彻底蜕变成一名顶尖的程序员,这一切都和我一步步的仔细经营是分不开的,而这一切的起点就在海贼无双。

    话头回到项目上来,入职没多久,赵宏华因为我坚持不做主程序,又委托猎头找了一个曾经在腾讯混过三年的服务器开发,名字叫李夏光。说实话,他刚来的时候我根本没注意到他,这是我的失误,因为在之后他不仅给我,还给整个项目组带来了巨大的麻烦,项目差点毁在他手上。前段时间我托认识的猎头们打听这个人,没有一个人认识,看来他已经废了,这也是应该的,游戏行业,没智商的人,几年之后很容易就杳无音讯,这一点猎头们应该深有体会吧。

    李夏光入职之后,阅读完代码,针对代码提了两点意见。首先是针对框架的,海贼无双项目用的是巨人公司的服务器框架,说实话代码写的的确一般,用了很多C++里面相当不好的特性,例如继承,虚函数等。这些特性会对阅读和理解带来沉重的负担,他提出要修改,我不赞同。因为我一贯的理念是,优秀的程序员应该适应各种代码并且把产品做上线,而不是要求代码必须符合自己的习惯和要求(这一点理念是之后三国杀英雄传能顺利公测的关键);其次,他针对陈春宁的代码提出了意见,认为他的代码质量很差,充满了各种只为了完成功能而草草了事的飞线代码,将来很可能出BUG。(例如stuct A中的部分数据要拷贝到struct B中,理论上是一个一个字段复制,陈春宁创造性的采用memcpy(A, sizeof(int) * 4, B))这种写法,的确是能完成功能,但是之后对A或者B结构体的任何修改,都会使这段memcpy的代码引起BUG。李夏光到的确没对我的代码提出过任何意见,我以为没什么事情会发生,后来才知道,他是想开了我。

    为什么我和他见面才几天他就要开了我呢,这里面还是有点原因的:
   
    首先是领导层面,我之前反复要求不当主程序,其实是为了更好的学习磨练自己,多沉淀几年,不着急这一时半会。结果在赵宏华看来,就是我不肯承担责任,喜欢混日子的表现,加上他又舍不得请我的这点工资,反复和李夏光沟通——我这人还要不要了,能不能在试用期前开了节省经费。这一点给李夏光很不好的暗示。这些是我事后得知的。

    其次就是我对于李夏光修改代码的态度,我是坚决反对改代码的,哪怕前面的代码有问题,你把后面的代码写正确,不也可以绕过很多问题吗?还更加节约时间,对于项目进度,和我们这个眼看被解散的项目组都是很有好处的,可这一点在李夏光看来,也是我不肯进取,喜欢混日子,技术能力薄弱的表现。为此爆发过几次冲突,结果他又给我加了一条罪状,不服从管理。

    最后就是李夏光自身的问题,他在且仅在腾讯带过,根深蒂固的接受了当时腾讯的思想,没有接触过外面的世界和代码,换句话说,视野很狭窄。说穿了,离开腾讯的那套东西,他就不会写代码了,这不是夸大,等故事说到后面你们就懂了——他无法接受任何不同于腾讯的东西,不接受也就算了,甚至认为那是别人的水平不如腾讯,你没看错,故步自封就是到如此地步。所以,一个自以为是的赵宏华,一个眼光狭窄的李夏光,他们两个人看对方都非常顺眼,那当然看我不顺眼啦,我走人就是顺理成章的事情啦,哈哈。果不其然,在我转正前几天,一次吵架之后,赵宏华单独找我聊,说我不适合公司的要求,不能转正,换句话说,我被开了。

    几年后,李夏光已经找不到名字了,赵宏华也被开了,而我端游做的风生水起,回头看看这段经历,我才理解,当年冲突是必然的。这两个普通人是不可能理解我这种牛人的,所以他们必然对我有很深刻的误解,如果他们有权柄,那受害者肯定是我。其实类似的经历也未必只有我一个。后期创业后我接触了一些人,他们也是无一例外被之前的环境所排斥,最终选择了自己干这条路,也成功了一些。当然,这些人中最著名的还是那个莉莉丝的老总王信文啦。所以说来说去,你被环境排斥,未必是你的错误,有很大的可能是你超越了这个层次的环境。你想要表达什么,就努力前进,用实际的行动告诉之前的那些弱者,你们,是弱者,不配和我平起平坐。

鸡汤灌完了,实际问题还得处理啊,千里之行始于足下,刘邦当年也就一亭长啊,我要被开了也没后面这么多故事啦。我得想办法啊。当时正在验收装备系统。装备系统没有BUG,所有模块和功能都是一次过,策划那边对我的评价很高。我想了想,决定去找仇慧军。因为他是个颠沛流离的老屌丝了,产品都是失败告终,肯定没遇见过我这样的程序,我相信,如果他有脑子的话,一定会选择一个已经被验证过的程序员,而不会选择一个初来乍到摸不清虚实的程序员。事实证明,我赌对了。

    在51COM后门那个玻璃顶的炎热的走廊,我简单把事情和仇慧军说了说,他想了一会,决定找领导好好谈谈,于是他找到了林融(关于这个人,后面有很多故事要讲,等我慢慢道来)。林融当时就和我进会议室单聊,无非就是想看看我是什么样子的人,值不值得挽留,而我的表现也很好。他对我印象挺满意的,觉得我是个能干活的人,目前的项目组很需要的那种人,于是他向我打包票,会帮我搞定转正的问题。过不了多久,赵宏华又把我叫进会议室单聊,谈话内容大致如下:大家对你印象不错,所以决定留你下来,转正没问题,但是之后表现不好立刻开除。

    多年后,我自己当了CEO才理解,原来能不能看准一个人,是人的本质属性,而不是领导的本质属性,有些人,他就没那个水平看人,就不适合当领导,很不幸,赵宏华就是其中的典型,所以他现在开公司,我断定他干啥啥不行,因为他看不懂人啊。其实我也不是贪图51COM这份工作,因为我之前失败过一次,我实在不能再失败一次了。人为了自己的目标和追求,有的时候是得放低身段的,真话。

    不管怎么说,一场惊天的风波就这么轻巧的平息了,我幸存了下来。记得当时我满脑子就在问自己:李夏光这人是真傻还是假傻?这个问题不停的在调试代码的间隙盘旋在我的头顶,直到最后,我经过重重分析(分析过程略),得到一个结论:他是真傻。OK,既然我不死,那就轮到他死了。

    李夏光对工作的定义无论什么时候看起来都很好笑。当时的情况是我和陈春宁负责新功能开发,旧系统BUG修复。而李夏光则在后面拼命的改动原有的代码,理由是不够符合面向对象的标准——恰好我又是最讨厌面向对象的(继承,虚函数往往会降低系统的可读性,面向对象特性中唯一值得称道的则是模板)。技术性上的分歧在他看来就是对他权威的挑战,赵宏华那边没少说我的坏话.而我深知,对于项目来说,开发速度和BUG量是说话的砝码,只要我继续这么做下去,迟早有一天李夏光要完,这是确定一定以及肯定的。

    当时工作很搞笑,一方面是新功能开发,BUG验收完,进行下一阶段功能开发,然后过不了几天,服务器又宕机了——李夏光又把旧有代码改坏了。项目组就在这个循环中反复。赵宏华对李夏光非常信任,这让人觉得很棘手。当时一组,三组,私下都在看李夏光笑话,二组则是有苦说不出。而李夏光不愧是在腾讯混过的——做事能力一般,但是搞事能力很强,说话也很有技巧——凡是做的不错的模块,他汇报给赵宏华都是:我做了什么什么;服务器一旦宕机,他立刻说:我们会尽快改进BUG。总之,功劳全是他一个人的,过错全是“我们”的。看到这里,你们也许会说,那为什么领导不来解决这个问题。同志,你太幼稚了,2015年页游事业部都解散了,你说这些领导能有什么水平?而且我之前说过,二组弹劾掉万里鹏之后,领导们就觉得二组不好管,所以对李夏光非常信任和支持,他们想通过李夏光,来彻底压制住二组。二组呢,又是怂逼比较多,各个不敢抬头。唯一称得上是个人物的只有我,可我又被自己失败的过去牵绊住手脚,又有警告在身,只能装孙子中,小不忍则乱大谋,没办法,哎。

    其实修改代码没有错,我在三国杀英雄传项目组中,重构了大量的代码,修改了很多流程,还精简了服务器数量,可这一切是需要有强大的技术底蕴做支持的,对我个人而言,我真不觉得重构代码有什么难的,我很少重构出新的BUG,而且我重构过的代码往往比原有代码量减少20%-30%,可读性和扩展性都有很大提高,关于如何写代码,我其实能说出几千字的心得,但这里不是重点,我也不想提。李夏光之所以改一块代码就出一块问题,核心原因是他技术能力非常一般,只不过腾讯出来的,他以为自己很强,关于这一点,我在后来上海游戏圈时也有感触:如果一直在腾讯的人,刚出来的时候,都觉得自己很强,这几乎是腾讯出来的人的共性(关于这点,我也和几个猎头确认过)。其实世界很大,这些人往往要碰的头破血流过了好几年可能才明白自己的错误,当然也有可能永远明白不了。我在这里再次强调一下:真正的高手,必须能够接受各种情况,处理各种情况,搞定各种情况。而不是脱离了过去的框架,就束手无策,两眼一抹黑。我这段话能理解的就理解,理解不了的就算了吧。

1

主题

14

帖子

101

积分

注册会员

Rank: 2

积分
101
发表于 2018-2-8 02:30:20 来自手机 | 显示全部楼层
楼主估计看不上国内90%的同行吧?在我看来大多数人其实不是算不努力。只是缺少一个能够统筹全局的人罢了。

11

主题

241

帖子

749

积分

高级会员

Rank: 4

积分
749
发表于 2018-2-9 11:02:50 | 显示全部楼层
一样,当你想努力一把的时候,总会有人在用勾心斗角牵制整个布局
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-3-29 15:22

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表