2017 年终总结

年终总结之前一直都没写过,公司老大要求写的不算,那种更偏重完成任务,邮件发出去再也不会回头看,自己连存档都懒得做的。今年,2017 年和往年不一样,换了工作,整体上想法和做的事情都有很大不同,值得去总结回味一下。

年初娃出生

大年初七,媳妇生下了个 6 斤重的男宝,我们给他起名「张则洋」,则是效仿的意思,洋是海洋的洋,我们希望他以后像海洋一样,博大。名字听着不难听,我们自感还挺有文化,就这么定了下来。现在回想感觉有点蠢,两个没啥人文气息的人非要起个有文化的名 … 希望以后他别吐槽我们。不过总归名字是代号,一个人最终怎么样还是看他做的事,100 % 不取决于他的名字。

4 月底从丁香园离职

离职的原因很多,更多的还是在自己。在丁香园这家公司呆久了越发觉得技术和想法上没有长进。对着熟悉的人和熟悉的事,写代码的激情太少了,早就有想法想换个环境。刚好公司内出了些变故,一些自己不认可的人和事越来越多,成为了最终促成离职的契机。开始计划离职的时候说实话有过担心,怕自己找不到好的工作,或者找不到工作,开始疯狂的学习和复习技术知识,并且一点一点开始面试。最初不太顺利,因为面试紧张和准备不充分,拿不到啥好 offer。好在最终结果还不错,加入了一家成长性尚可的 C 轮公司。

离职更多是为了学习和提升,一家公司待久了多少会向往其他公司。会想别的公司是怎么开发,怎么协作的,使用什么技术,会有什么样的问题,自己是不是能够胜任然后学到东西呢。自己是不是能够有所突破,在技术和职业生涯上能有比较好的长进的呢。这些是以前想的很少的或者几乎不想的。现在回头 review,这些想法上的变化的根本原因应该是危机。丁香园的变故切身的影响到了自己,其实现在想想也没多大,顶都就是定个绩效规则,工作没以前舒服而已。但是当时确实感觉危机感深重,而且部分的原因不是自身,来自外部。于是想法开始多起来,变起来。另外一个原因是宝宝的出生,还房贷和养娃对经济的压力还是有的,早考虑比晚考虑要好很多。

来到新公司

刚进新公司,什么都是新奇的。一直以来自己都是个内向的人,和人路上碰到打个招呼都是腼腆的,更不要说和一大堆新同事认识、共事了。好在一进去就被分配了一个比较重的项目,从 0 开始建立公司风控后台的指标服务,没啥精力想多于的事情。这个项目从最开始商定方案到一步一步实现、踩坑,都是自己一个人干的。中间有一版很坑爹的设计,最初设想的各种灵活、各种优雅、各种牛逼,最终持续开发的时候被证明完全就是脑残,开发繁琐,而且短期内根本看不到设计带来的好处。于是在项目工期不变的情况,硬是挤出一周左右的时间,重构底层的抽象(设计)。其实当初是做了一套自己的业务逻辑的开发框架,因为已经有很多业务逻辑在上面跑了,最终想了个折中的方案,做了一层适配层,让重构的新框架可以和旧框架一起工作,后面逐步迁移代码。这个方案最终被弄出来,然后上线。可喜可贺的是没出啥大的问题,业务方几乎没有感知到。在重构的这段时间,刚好还感冒,每天头痛着写代码,办公室环境还比较吵闹,戴着降噪耳机噪音是少了,头疼反而还更重,算是比较不容易。

这套框架沿用到现在,其实已经暴露了一些问题。比如对开发接口限制比较死,所开发的业务逻辑因为没有抽象的接口的原因,很难重用。有一些细小的地方导致的开发比较反常规,在新手接触的时候有一定学习成本等等。不过这套东西最大的好处是隔离了不同风控指标的实现,而且做的比较彻底,多人多版本开发完全不会有冲突的风险,代码相互隔离,改代码也不会影响其他业务。一旦熟悉了框架,开发也算便利,遵照一套框架定好的模板,实现逻辑都是按套路来的。不管多少个人开发,最终出的代码都是统一的。美滋滋一把,当然如前述,问题也不少。

关于学习

进公司的头几个月是任务很重的,因为对语言和设计(抽象)的驾驭还不太行,走了不少歪路,是挺累的。但是慢慢的总结出一些设计的经验,编码上能费更少的精力完成更多更好的事情了,逐步有了一些时间可以学习。

学习基本放在 Java 的后端,对前端 0 接触。零敲碎打不少,成体系的不多。Python、TCP、算法、Java core、Java 并发、JVM、各种大数据框架、各种中间件,还有一些很小的 github 上的小项目。很杂,很多,但是总结少,感悟少,这个是比较大的问题。系统的学习很重要,一个知识点要专注一段时间,最好能最终有个总结,写篇笔记。学习的时候接触知识越浅越不费精力,反而带来了「获得知识」的错觉,非常不好。

年末的时候开始重新看网络方面的东西,NIO 和 Netty。开始看《Java NIO》的中文翻译版,翻译之差都要怀疑自己智商了,网上搜的文章又千篇一律而且很不系统,写的也很浅,看了越多越感觉抓不到主干,浪费时间。然后开始看《Java NIO》的英文版,即使大学过不了 6 级,4 级也是勉强过的,看起来也比中文的容易,看不懂的就谷歌翻译,看的慢,但是能看到重点,能看出东西。只要英语这关过了,就能看到核心的东西。如获至宝,往死里看 :),最终也有一篇文章出来。

英语这东西感觉就是需要操练,就盯着英文文档和书硬杠,还是能杠过去的,现在查资料都只看英文文档了。官方的英文资料全而且细致,其实从获取知识上看,比看搜索到的中文文章更有效率。

总结知识

自己鼓捣完善了下以前弄的博客,然后买了个域名 footmanff.com,反正也是个长期的事,刚好这个域名 godaddy 很便宜,直接买了 10 年,也才 1000 多。前前后后写了几篇小文章,比较粗浅,不过总比没有好。写出去没准还有人看,也加大了些写东西的动力。

用 typora 维护了一个文件夹的 md 文档,从年初开始,一点一点积攒了些技术上的东西。用 Git 加了版本控制,用 idea 搜索(暂时没找到可以和 typora 配合做到比较好文档管理的工具)。用 Alfred 来搜索文档的标题。因为给文件名的命名就是技术点的名称或者缩写,所以搜索和打开都很快,比较方便。

工作和生活

这一年几乎是把时间都花在了工作和学习上了,一般周末也是去公司的。身体上能明显得感觉到没以前好了。颈椎炸过、胃炸过、肩和背也炸过。技术的路可能要走到退休,还有比较长的路和时间。慢慢开始注意身体,累了就休息,困了就睡。少吃油腻多锻炼,晚上也尽量不熬夜了。

重新开始了自己的业务篮球生涯 :)。司职前锋/中锋,每次球场上叫嚣自己是「投手」,结果 10 中 0。然后同事看到我投篮就很绝望 … 。好在一些比较想赢局,拿手的抛投、近框漂移跳投、突破、勾手还能一战。虽然身体不怎么好了,防守和篮板的意识还在。偶尔也有和队友赢了「国家队」的情况,哈~

另外经常晚饭后江边散步两圈大概 2-3 公里,算是活动下坐了一天的腰背和腿,也还不错。

2018 年

2017 算是为了以后的技术学习总结了些方法,18 年应该能更有效率的吸收知识。往上对中间件、大数据、DB 可以了解更深入一些,往下需要对网络、Java、JVM、CS 的一些基础去做巩固,对 Java 系的一些监控工具、开发框架也可以深入了解一些。

工作上要减少不必要的争论,合作为先,向牛人学习,提升自己团队内的技术影响力。在产品和项目上做出些亮点,设计和实现更高效和优雅的系统。

当然,锻炼还是要坚持。

Author

张阿力

Posted on

2017-12-29

Updated on

2017-12-29

Licensed under