7 年 Java 后端,一路北漂,一路心酸_java

本人Java开发6年半不到7年的样子。

英语专业,临毕业跟着隔壁专业去培训了四个月Java。

跟他们一起来了北京找工作,一找就是5个多月,面试100多家公司。最终还是隔壁专业的同学介绍到他们公司才就业了。

入职后同学就是我的领导,技术相对一般,我们做游戏后端的,时间很快,一眨眼,我就跟着混了四年,每天就看些博客,书籍,业务上也会做功能,但自觉做的比较蠢。没什么太大进步。四年时间很快乐,跟着老板,同学,从一点不会,到能独立完成工作,能自主做一点小小设计。但技术上说真的,差得太远。

随着心越来越慌,工资水平属实也太低6K多,于是四年这个节点,我跳槽了,工资翻倍。这是一份非常苦的工作,曾经2个多月没放假,也曾经连续四天四夜没回家,工作到凌晨3点是司空见惯。然而我只是个小兵,加班加了10个月,游戏上线两个月,人员就全部裁掉了。由于Java一直感觉没有入门,框架方面 掌握的也比较少,这个MMO的项目本是练手大好时机,连忙带懒就也这么过来了。

随后不知道算走运还是算倒霉,找到了上市公司的工作,20K(我梦想中的工资是25K,如果达到就打算不再跳槽了,为什么是25K,因为游戏Java后端基本上30K算是一个封顶,哈,当时比较幼稚,以为就这么干着,早早晚晚也能混到最后,就算技术不行,吃透两套框架,在游戏圈就能立住脚)。 说是走运,因为工作相对简单,我1个后端对6个前端,听起来挺唬人,但其实还是做业务,但因为只有我一个人接手这个项目,所以我也算是主程,当时我觉得我的人生的每一步真是走的太好了,缺什么来什么,想要架构,想要自己来就有机会了,这一年多感觉特别顺利,也觉得自己终于像是入了门,不再害怕工作上的需求了。但说是倒霉呢 ,其实也就是因为这一切其实都是假象,我根本还是几年前的那个自己,只是因为业务熟练了,以为自己行了。

这公司也是裁员,我在这里做了一年半不到,临走给了N+1,美美的拿着钱,找自己梦想中的25K去了。并且决定不做游戏了,因为游戏公司有名的就那几家,没啥大发展,还是互联网好,差不到40K封顶,我以上所说的封顶都是指很普通的人啊,大佬就别跟我计较了。。。就在裁员的第二天,我面试了京东一个物流创新部,好像是这个名字,那天我记得特别清楚,经过了一下午面试(面试的难度真是超级低,我在那里侃侃而谈,最难的问题也只是线程池那几个参数)。然后,过了。。。我真的感觉自己要一飞冲天,当时在想,在这里不能做太久,公司的文化太诡异,一切围绕着强东转,公司的人说话好像都在躲着什么东西,加班也是每天固定,然后大小周。因为正赶上过年,面试的人说年后人事会联系我走流程,就能入职。--------这一去就天差地别了,我在家等了一个半月,中间经过无数询问面试者,人事等,后来,流程跑着跑着就没了。当时觉得京东真是让人开眼,还特么带这么玩的。

这时候,我还是不知道愁~然而,马上就要觉醒了。我又去面试,还是25K,有时候你认真的要价真的比猥琐要好很多,我当时就是愣要,大部分人还真信。记得收到的OFFER有必要商城,赢时胜等等,后来去了一家做语音的公司负责做云平台。哈哈,这份工作只做了三天半。从入职第一天就夜夜失眠,为毛?因为看不懂代码,压力很大。以前做游戏觉得大家都是吊丝,每天在一起呼呼哈哈,确实也快乐,有什么需求甚至直接在座位上喊着沟通这样。但是这家公司就比较正规了,我以为互联网公司都是这个样子的,同事之间一天一句话都不说,主程也只给我简单说了说流程,就自己看代码吧。我虽然技术渣,但有时候对自己要求还是挺高的,总想快速的上手代码,这代码这手上一天,两天,三天,连个皮毛都没看出来,就慌的不行,当时就开始知道自己代码水平有点渣了,但以为自己是不适应,这次找工作其实也挺波折,醒悟是一个缓慢的过程。所以还是想着回游戏行业,毕竟自己历经三家公司,都没碰到什么难度,虽然寻路啊,地图啊,战斗啊这些自己都完全整不了,但是还是能完成普通工作的,此时的我还以为自己能搭框架呢,啊哈哈。于是我就辞了,公司真的不错,14薪,要走还好顿要留我。。。当时以为自己是不适应走的。现在回头想想,其实怕暴露真实代码水平,不好意思才走的(身体不骗人,我的脑子居然会骗自己)

于是,我开始面游戏了,还是25,但面着面着觉得不对劲,为何大部分面试我都答不上来个啥,三问两问就瘪了。两周时间,居然10家只收到1个OFFER,并且是小公司做主程。我开始慌了,很慌,这10天里我慢慢认清自己的真实水平了,不敢细想,细想连面向对象都不怎么会,那些继承啊接口啊,从来也没写得好看过,都是照着别人已有的模块,拿来粘贴,还做得挺快~~多线程一想就蒙蔽,数据库就会点简单操作,Linux也是一样就会个CP MV CAT top啥的,最常用的是 ps -aux|grep。 原来,原来我什么都不会啊。。。。。。但是上天还是眷顾我的,居然这十几家我最看好的那家公司,第11个面试。。过了,哈哈,当然这时薪资下来了一点,但是我管不了那么多,从上家裁员到现在,已经整整过了2个月零一周了,这些天过得真不怎么样,每天都特别焦虑。也瘦了七八斤。就这样吧,入职好好干吧,我收到OFFER时,暗暗想着,我要为公司肝脑涂地,它在我危难之时,向我伸出了关爱之手,感谢公司。

于是更大的噩梦开始了~~入职到现在2个月了,我几乎毛也没做。每天都想逃避都想跑,心脏压得我天天疼,好堵啊,现在也还是如此。这2个月我彻底认清了自我,和入职半年的新生小手差不多的水平,一直用这水平干了这六年工作。。真汗颜,以前用的SVN,到了新公司学git,这git是真难啊,怎么都学不会,网上那堆教程跟屎一样,看着好像是会了,用着都特么不对,差得远呢,到现在还只会create  a branch,写, pull develop ,切回来把develop 合过来,然后再把branch合回到develop,再push,基本上是在用svn的方法在用git,而且   git我感觉很奇怪,好像没几个真的会用,不管是网上还是我的同事。

光说痛苦了,说说自己为什么痛苦吧,我知道每个人都有自己的心酸事。我只是想说说我的。

哎,主要说说新公司的事吧,这么多天了,我死去活来,难受的要命。比如我从刚入行就不大懂开发的根本问题是什么,也许书本上的解释我也看得懂,但是真要理解这件事,应该不是只停留在字面理解,如果你有懂那一天,你应该立刻就知道,它会直接在头脑中告诉你---啊我入门了。鉴于此,我一直都保存着前几家的源码,我想着,开发既然自己不能理解好,也没有举一返三的能力,也不会自主写出什么东西。 那就收集多多的代码,涉及到的哪一部分不懂,可能就能在其中找到例子,灵感。这样就可以在框架层面也不至于什么都没有积累。这次的工作,服务端也分了好几个进程,之前我都是用redis搞数据沟通,比如你要生成唯一ID,每个子服务里都有redis,incr就好。新的框架也是这个主程用了好多年的了,不想加入新的东西,但是又要求我按他的思路去做,又说代码版权等问题,之前所有的源码都不能给我看,我想其实也是合理的,毕竟我是P6,高级开发哎。按理说,招我进来可以从0开始搭建架构的。我的能力也就是 curd了,甚至可能curd还做不太好,也就说不上怎么能硬气的跟他说明。比如上面id的问题,那我可能就要每个服启动时,去mysql查一批id存放在每个子服务上面,设一个警戒值,不够了再取。但是这样吧,对我来说就很难,这就要考虑到警戒值不够用了怎么办,各服务启动时要把id拿到才能对外服务,还有id如果实在没有了,可能要进行同步阻塞去查询,,,但是同步怎么写??不会写同步~~  另外再举例子,如果是加好友功能,这种单用mysql,而且还弄出一个dbserver的服,什么都要写个异步的协议过去,那加好友原来是

addFriend  {
各种条件判断,不合条件返回个tips
执行加好友
}

现在可能变成这样了

addFriend  {
    异步去查数据库了}

gameserver -> dbserver   当dbserver->gameserver返回时,又是另一个协议,handler什么的又得另写,执行判断,再返回。等等。   当然写得好的人,这些问题都不存在,而我只会直肠子写Java,就会个 List.add    if else   for循环。这基本上是我的全部本领了。就在这框架里有很多难处。还有个问题是怎么写gate与game的玩家session对应,想了N久才想出个办法,包装了个protobuf二层协议,,哦问题多了去了。。。。应该都是开发者该在工作中解决的基本问题,而我一步一个坎。

再者公司的氛围也是头疼的紧,一整天也没人说话,除了要甩锅的时候,根本没人会沟通。交待任务啥的,给我压力也特别大,比如主程今天说,docker了解一样。。。。然后明天让我搭dokcer自动化部署流程了。今天说git flow了解一下,明天就要严格执行git工作流了。还是那句话,可能这是一个P6真正要掌握的本领,就是有个关键词,然后就能自己看外文文档,然后就能搭建出一个看上去很像样的工程化产品。。。。。。好吧,这样来看我离真实的P6的实力,至少得差5个档次。

自己特别的低迷,心脏堵的难受,每天早上一醒来就感觉自己活不起了。有天晚上梦中,看见一堆代码,却怎么看都不懂,又醒不了,难过,懊丧了一整夜,连睡觉的时间都不放过我,自己的痛苦多了就经常跟朋友家人说,到后来反倒让我认清了,什么狗鸡巴朋友,哪有朋友,没人会care你一丁点,各自有自己的烦心事不说吧,没有共同经历的也难为互相理解。总之,在朋友对我的反应上,基本就是你想多了;你不干得挺好的吗;程序员一个拿那么多钱你还瞎苦恼个什么;不光你,谁没困难;其中特别好的一个也差不多最多宽慰两句,你行,你可以挺过去之类的。之后就再无信息。当时也是苦恼了好一阵,认识你们有个什么用,你说我最想听什么,我联系你们的目的是什么,哈哈,算了算了,都是故事,你们并没有那么好。但回头吧,仔细想想不禁就明了了这件事。

30多岁了,这是关乎你自己生存的问题,这个问题不是靠什么运气和神迹才能改善的,它积累在你多年生活的每一天里,你的理解是什么,你对工作的态度如何,你怎么利用你的时间的。这一切的一切都是你自己该解决该思考的问题,别人帮不上任何忙。然而这些年我都是养生过来的,一直都没学会如何去思考,这应该是与有所成就的人最大的区别了。有人说做职业规划,而我脑中也只有这四个字的浅层意思。也许有的人对这个就比较上心,有着深刻理解也说不定。也就是说别人怎么决定你的人生,别人怎么决定你的想法,都得自己去选择,自己去承担,指望着别人给你的,只能是“放松心情了解一下”"努力了解一下"这样看似没用实际也没用的东西。

今天先写到这吧,写得乱糟糟。

无论怎么写也写不出你真的在痛苦时那种无助与万念俱焚,你很难再去回想,你是怎么失眠一个月的,你很难想你在公司楼下对着镜子,颤抖着害怕着不敢回办公桌时的心情。然而这一切都没意义,生活不会因为你痛苦就突然变好了,别人不会因为你痛苦就能放过你了,这些对任何人都没意义。

我还将继续下去,这家干不了了,还要找下家,还要每天学习(虽然效果不怎么样)。然后等待着,这些迟早该发生的事。

你再想想,今天虽然这么痛苦,是不是可能是你接下来生活的最好的一天了。毕竟你就坐在那里十几个小时,就有人几百上千的送给你。然后我干不下去这行了去做什么,销售?开个麻辣烫店?去工地真正的搬砖?  hi,哈哈哈哈哈,外人看叫矫情,自己看属实是活不起。

原作者:喝奶粉干什么
原文链接:7年Java游戏后端,被淘汰辛酸史 - OSCHINA
原出处:开源中国

7 年 Java 后端,一路北漂,一路心酸_java_02