前言
很多时候,我们开发一个项目,做一个需求,加班、熬夜、干耗,不是为了赶某个工期,或者是任务完成后领导给的一笔钱,更重要的是,我们享受这种克服万难,成人所不能的感觉,这种感觉跟钱是不一样的东西。---- 《疯狂的程序员》
刚开始工作时看到这句话,三年里正是这种的瞬间,让我在程序的世界里真正的发现自己想要什么。
从零到一
从培训班出来去了外包公司,那会基本上什么开发工具都不会用,给我最多的帮助的是一位实习生。运气不错的是有入职培训,两周时间的入职培训,几乎天天忙到十一二点赶着最后一班公交车回家。培训结束后接到通知,过完年要去深圳的项目组,所以过年也基本没怎么休息,初四就去公司刷内网的学习资料了。到了深圳,好运还在继续。和技术总监一间宿舍,被分到的小组里组员和组长都是有趣的人,记得前两周我改了几十个BUG,得到了甲方BOSS的表扬。那会的工作强度比996还恐怖的多,不断有小伙伴撑不住了离职,宿舍的人也越来越少了。好在每周忙里偷闲的学习,都能得到技术总监少华的指导,还有两位架构师阿达和全哥的点拨。在深圳印象最深的两件事,一是下雨天中午和明仔蹲在路边吃东西,赶着下午回去上班。二是对着RocketMQ源码抓耳挠腮的时候,全哥说过两年你在看吧,现在的你看了会走火入魔。后来项目结束回了厦门,短暂的带了一段时间的小团队,自己想要去追求更大的舞台,选择了离开。工作第一年体验到了互联网行业的恐怖强度,也完成了自己的目标,“努力工作,持续学习,不谈待遇”。接触的两个项目框架一个是Dubbo一个是Springcloud,为之后的微服务之旅打下了良好的基础。回头来看工作的第一年,足够好的运气加上有明确的的目标收获了很棒的项目经验,对未来也有了新的方向,微服务。
在深圳下班最快乐的事就是撸隔壁养的奥斯卡了。
疯狂成长的第二年
辞职之后休息了两个月,做了项目的复盘和学习路线的整理,然后面了几家公司,最后选择了一家离家近的。业务线从物流到电商,差别还是蛮大的。物流的难点在于复杂的业务,电商交易平台更多的挑战是在高并发上。日常学习的SpringCloud和RocketMQ在这一年里都有了充分的实战机会。这一年里印象最深的是第一次负责抢购的项目,不断的压测,不断的调优,那一个月连做梦都在想缓存的设计。第一次活动开始是在中午一点,龙哥盯着服务器监控,我盯着线上的日志,一点到了一条请求都没有,冷汗一下就出来了。也不敢问合作方是不是他们的入口延迟开放了,生怕是我们的问题,那几分钟的煎熬直到带宽开始飙升才长出了口气。前期的顺利合作让我放松了警惕也埋下了隐患。抢购的东西从哈根达斯代金券变成了京东E卡,我没意识到并发量会翻倍的提升,导致线上的请求全部超时。问题的排查、解决、复盘在我的博客里也写过了,有兴趣的可以去看下。这一年里,学习了很多新的技术栈、新的理念、新的解决问题的思路。第一年里看不懂的RocketMQ源码,也细读了一遍了,理解了设计思想之后,源码也更好理解了。然后我开始把平常翻阅源码的代码设计风格用在业务开发中,老实说,自己的功力还远远不够,生搬硬套很丑陋,但对我来说,是一个好的开始。工作第二年几乎不需要加班,有大量的带薪学习时间,这也是技术能快速进步的原因之一,也是自律的人最喜欢的节奏。这一年刷了好多的PDF,好多的LeetCode,丰富了自己的技术广度和深度,唯一的遗憾是加薪后仍然没有达到工作第二年工资要翻倍的目标。那是一个很棒很让人怀念的团队,可惜因为公司总总不合理的制度,大家陆陆续续的都选择了离开,好在现在仍有联系。
captain走之前的最后一次团建,第一次在吃小龙虾上遇到对手。
技术转型的一年
这一次跳槽收到的offer也证明了过去一年工作学习的成果,最后依然还是选择了一家离家最近的。新的公司新的团队给我带来了很多不一样的体验。首先是时隔一年,我又开始加班了,心里还是很抵触的,因为我需要大量的个人时间去健身、去学习。好在团队氛围不错,工作还算开心。其次更好的理解了什么是个团队,浩哥作为团队leader会为每一个组员去hold工作内容,项目赶进度的时候,他总是最晚走的,也是从那时候开始,我在工作的时候也会从团队的角度去思考问题,而不是只会低头敲自己的代码了,开始去画业务流程图、数据流转图等等。后来我去了数据组,一个全新的技术领域。clickhouse、flink、hadoop、es等新的技术栈需要快速的上手,又赶上同事离职,项目进度赶,那会真的上班如坐牢,天天加班加班,也没有什么产出,身体精神双疲惫,算是我工作以来遇到的最大的挑战了,那种有力使不出的感觉太痛苦了。有一次加班,我只能站在苏威耕宇后面看他们解决问题,自己根本帮不上忙,那种感觉现在想起来都痛苦至极,自信心受到了极大的打击。好在苏威耕宇给我了很多帮助,老mark找我聊天帮助我调整心态。慢慢的算是从水底能探出头来呼吸空气了。然后就是自己的老问题了,喜欢把看过源码里的设计风格套到业务代码上,导致了一些过度设计和局限性,自己挖的坑自己填,也算吃一堑长一智了。以前自己的抽象设计更多的是基于业务属性,后来苏威教会我了数据层的抽象,元数据的公用和统一管理,也可以简化很多的代码,受益匪浅。老实说这是脱离职业规划的一年,原计划中第三年是学习netty,开始手写一个属于自己的消息队列了。由于加班,个人时间少了,仅剩不多的个人时间也用在学习大数据相关的技术栈了。一直没有整块的时间系统的学习一下flink,过年有10天的假期可以好好补一下基础了。嗨,过年还要好好健身,和耕宇赌的一顿饭也不能输,过年有够忙的了。
喜欢看书的人,收到的寄语比较文艺。
结语
好好健身,努力工作,现在羡慕的以后我都会有。