剑未佩妥,出门已是江湖。酒尚余温,入口不识乾坤。

2019年可以说是对我来说是特别重要的一年。正式结束了自己的学生时代,从事了一个自己不讨厌的职业,遇到了一群优秀的人。借年终总结的浪潮,说说对于2019年的一些感悟,顺便再立一些flag。

一,我毕业了

迷迷糊糊度过了大一,抽烟,喝酒,打架, 玩游戏把能干的都干了,就像是青春期最后的狂欢。由于一些事情,我和两位勇猛的同学将那个人安排了一波,然后派出所走了一遭,赔了些生活费,得了个“学院通报”的荣誉称号。无欲无求的,无忧无虑,唯一遗憾的是没有好好学习,记得最清的就是那玩了四百多场的“赵信“,我和他一样都是莽夫。

大二大三开始曲线学习了,在甲学大大的洗脑之下踏上了程序人生。不知道自己喜欢什么,既然不讨厌于是就开始搞起了编程。从某马的java教学视频开始,讲师是风清扬,印象最深的就是课程里每天都要提到的林青霞,着了迷一样的从早到晚的学。学完了java学前端,学完了前端开始搞个人网站,总结下来就是什么都会,什么都不会,瞎学!

在宿舍学了两年,走了很多弯路,可怕的是两年竟然没有认真读完过一本技术书籍,整天都在看视频写代码,一个人在探索。大三下学期才感觉到找工作压力,没有准备好暑假就来北京实习了,一共待过两家公司,错过了秋招也没有参加春招,在忙乱之中毕业了。

二,坎坷实习路

三,角色转变

四,关于阅读

《InnoDB存储引擎》: 总共阅读两遍多,总共花了大概不到两个月时间。这是一本MySQL进阶必读书籍,也是一本后端开发必读书籍,对于MySQL的索引,事务,锁的设计与实现进行了深入剖析,给人一种拨开云雾见青天的感觉,结合极客时间中的《MySQL45讲》课程效果更佳!

《图解HTTP》:全书图文并茂的讲系统的介绍了Http协议,涉及到许多web开发中后端工程师的必会知识,也为我填了许多坑,比如之前对于cookie和session的区别,以及http和https的区别等,值得一看。

《Redis设计与实现》: Redis必读书籍,不跟你扯Api和demo,面向设计与实现学习,可以说是当前市面上评价最高的一本Redis书籍,唯一的瑕疵就是讲的Redis2.6和3.0版本,对于Redis的一些高级数据结构和新特性没有讲到,不过这些都不能影响它成为我心中的神书。整本书通读了2遍,目前感觉掌握的不够好,总结和思考的不够,需要三刷。

《Redis深度历险》:19年老钱新出的一本书,在他刚开始在掘金写专栏时就开始关注了,没想到不到一年时间就重专栏到纸质书了。整本书通俗易懂,图文并茂,还对Redis5.0版本的Stream等新功能进行了介绍,读完之后收获满满,解锁了BloomFilter,HyperLoglog,分布式锁等知识。写的有点着急,尤其时后几章感觉有些敷衍,这本书还是比较推荐阅读的,与《Redis设计与实现》相辅相成。

《Redis实战》:个人认为这本书是一本劝退书,有些地方翻译的也有些问题,读起来比较枯燥,不过从这本书中还是能学到一些奇巧淫记,比如使用Redis进行搜索,广告定向等,如果读完前两本书没事干也可以读一读。

《Java并发编程的艺术》:书如其名,并发编程入门首选!被Java并发编程实战劝退两次后,在@骞哥的推荐后仿佛发现了新大陆,图文并茂,结合源码,深入浅出地介绍了Java并发框架,以及核心原理,墙裂推荐!

《Java并发编程实战》:并发编程必读书籍,同时对我来说也是一本劝退书籍,可能是翻译的不太好?总之劝退我至少两次了,前几章介绍了许多抽象的概念,大量文字,几乎没有图片,晦涩难懂!不过读完了并发编程艺术之后再来读才能感受到其魅力,推荐阅读!

《Effective Java》第三版:Java进阶书籍,时隔多年终于迎来了第三版,毫不犹豫花了将近100大洋拿下,这波不亏。对于提升代码质量非常有帮助,涉及到许多Java8,9中的一些新特性,整本书都是干货哦,总共读了不到两遍,消化的不好,年后继续搞起.

《码出高效 Java开发手册》:阿里巴巴Java开发手册的补充版,用通俗的语言讲述Java领域涉及到部分核心知识点实现逻辑和使用技巧,有助于夯实Java基础,提升代码质量。

《非暴力沟通》:作为一个俗人和莽夫,生活中说话经常会伤到别人。这本书描述了如何进行非暴力沟通,非暴力沟通总结下来为四个要素,观察,感受,需要,请求。读完感觉收获满满,不过需要慢慢去践行,细细的品味,说话是一门艺术,还需要多多学习和练习!非常值得去读的一本书。

《程序化广告实战》:工作相关,我是做广告平台的,用来补充一下业务知识,提升工作效率。

《学会写作》:写作一个非常重要的技能,无论从事什么职业有出色写作技能都能让你脱颖而出,放大自身价值;同时写作也有助于对知识的梳理和巩固。这本书讲了一部分运营技巧,一部分写作方法,看完之后还是有些收获。

除了读书之外,当然是刷视频,音频等学习资料。讲道理,看书有时候真的太痛苦了,尤其是在白天比较累的时候,这时候就可以来一套视频压压惊。今年杂七杂八看了很多课程,完整看完的只有几套。

《零基础学Python》(某客时间):花了三天时间学习的第一套Python视频课程,之前看了一本Python变成快速上手,对于Python有一些了解更何况Python语法比较简单,所以比较轻松。不过工作中用到Python的并不多,所以也忘得差不多了,用到时候再查文档了吧,不打算再花费时间了。

《设计模式》(某硅谷,极客邦(李建忠)):前前后后花了大概一个月时间才学完,第二次学习设计模式了,这次大部分时间都花在画类图上了,动手实现了一遍23个设计模式的代码,收获还算不错,对于代码设计有了更多的思路和见解,下一步要做的是在重构自己的垃圾代码时候,把它用起来。两个课程都可以看一下,风格不一样,总有一个适合你。

《并发编程实战》(某客时间):一个非常不错的并发课程,有助于将并发知识串联起来,适合于《Java并发变成的艺术》一起学习,和书本上的知识并不冲突,两者有点相互补充的意思,值得一看。

《Elasticsearch》(某客时间,某果学院):某客时间的课程就不要看了,简直在浪费时间;后面的某果学院课程值得一看,ES从入门到高级课程讲的非常好,明年需要二刷

《代码精进之路》(某客时间):对于提升代码质量有一定的帮助,讲的中规中矩,一天就能听完的课程,可以去看一下。

五,工作心得#

作为一个职场新人,学校中的那套方法论运用到工作中可能就不那么好用了。所以,一年半以来感觉在工作中学到了很多东西,这些与技术无关。

凡事有交代,件件有着落,事事有回音

凡事有交代,事事有着落,件件有回音!这应该是每一个职场新人必须要知道的且必须具备的一个基本素质。对于领导的一些工作安排以及通知,要及时做出反馈,这一点很重要。

这是人与人之间最基本的尊重,别人跟你的交流,应当及时做出反馈,。其次,这是高效沟通的必要条件。想要高效地工作,高效率的沟通尤为重要,对于同事的论述与问题及时做出回应,表明是否收到了消息,get到对方的观点和想要表达的想法,即使当时不能解决对方的问题,也应当予以回复,减少沟通双方的信息差。

owner意识

所谓Owner意识也就是主人翁意识,主要体现在两个方面,一是认真负责的态度二是积极主动的精神。

认真负责是底线。对于交付的结果负责,对于自己的代码负责,要认真对待我们的没一行代码。代码要符合团队或公司规范,统一风格,注释要清晰,保证高质量交付任务,这也是我今年着重去学习编码规范的原因。

积极主动则是Owner的更高级的要求。对于负责的模块,要按时保证质量完成,但是也应当积极主动发现问题,暴露问题,解决问题。在开发过程中可能遇到一些遗留的问题,可能跟自己负责的模块无关,或者当前对系统的影响并不大,很多人可能会因为手头工作比较多假装看不见,选择忽略此问题,这是典型的缺乏owner意识表现,我们应当主动反馈问题,记录问题并解决问题。

有时我们不仅要完成自己负责功能模块,还需要与其他同事或者跨部门沟通。我感觉作为团队中的一员应主动承担起责任,积极主动沟通,推动合作项目的进度,保证项目顺利完成。在完成本职工作后,积极主动寻求更多的工作中去,是对自己来说是为自己寻求学习与进步的机会,对于团队来说则是一个Buff。

六,学习心得#

关于学习,真的有太多话要说了。从自学Java到现在已经三年多了,真的是走了太多的弯路,踩过太多的坑!感觉学技术不走弯路就是捷径, 掌握好的学习方法和策略太重要了。

做减法
做减法对于刚开始工作来说是一个比较矛盾的事情,需要补充大量的技能来支撑日常工作,握手首先要做的就是先用起来!以根据官方文档的quick start快速入门,或者找个相关学习视频大体上过一遍,对于整个技术有个整体的认识。掌握的不好没有关系,可以模仿别人的代码,总之第一阶段就是要先用起来,能解决问题。

要抵挡住技术的诱惑,不知道大家是否有和我一样的问题。刚开始对于好多技术,比如某某框架,消息中间件,数据库等都想学习,今天学这个明天学那个,或者说是 看到别人在学什么东西,自己立马也要跟着学。这大概就是我前两年的学习策略了,到最后面试时才发现,学过再多不如掌握一个,因为面试时没有人回问你哪些api怎么使用,面试官关注的更多的时技术的底层实现原理。所以,对于技术的学习,个人认为最好一次只学一个技术,掌握一个技术,保持专注!

深度优先

保持专注的同时,一定要深挖底层实现。对于要学习的技术不仅要知道是什么,怎么用,更重要的还要知道怎么实现的。比如MySQL索引,只有知道了索引的数据结构以及索引是如何设计的,才能更好的选择和使用索引,对于索引的使用做到心中有数。技术总是可以触类旁通的,当学完MySQL之后再学习MangoDB时,你会发现他们索引的底层数据结构都是使用B+Tree,学习起来就非常轻松了。

七,用好“8小时”之外时间#

不知大家是否和我一样,每天八点出门,晚上9点半或者十点才到家,感觉没有时间去学习。不过时间就像XX,挤剂总会有的!利用好8小时之外的时间,我们可以做很多事情;比如,每天上下班地铁上时间读书,每个月至少能看一本技术书籍!

今年总共读了10多本技术书籍吧,大多数书籍读了都不止一遍,有一部分没有列到读书记录中,而这些至少有一半是在地铁上看的。

下图大概就是我了,手里那根笔就很真实。

近一年来,从来没有12点之前睡觉。已经样成了习惯,每天坚持学习到一点钟(偶尔加钟),七/八点钟起床(取决于几点睡)。当然这个要根据自己来决定了,毕竟有些人早睡早期效率高,而有的人则是熬夜学习效率更高,不过不管怎样,多花点时间学习是绝对没有错的。

八,做得好的

Feedback & Evaluation(反馈和评估): 在个人成长过程中,没有建立好评估反馈体系。一直都在漫无目的的去做,至于做得到底怎么样,一直都是自我感觉良好,没有建立自己客观的反馈和评估体系,不能及时发现存在的问题以及好的方法,。也少了很多成就感,失去了自我激励的机会,这是学习效率没有达到最佳的主要原因。

学习

十,2020个人成长计划