在 2019 年的最后一天回顾 2019 年展望 2020 年

一、回顾 2019 年

1.1 缘由

  一转眼 2019 年已经来到了最后一天,在这 2019 年的最后一天完成了编译原理的期末考察。今天中午在去食堂吃饭的路上,突然想起今天已经是 2019 年的最后一天,不由得回想起 2018 的最后一天,那天也过着如今天一样的生活。但是回想起来不管是高考的 2017 年还是 2018 年,自己都没有留下些什么太多的记录,所以决定在 2019 年的最后一天写一篇博文来总结一下自己的 2019 年,也展望一下自己的 2020 年。这篇博文可能没有什么太多深奥的道理,也没有太多的鸡汤,只是想作为自己这一年走过来的一个记录,能够让以后的自己来回顾。

1.2 谈谈自己的 2019 年

  2019 年对我来说是不平凡的一年,一月二月自己专心准备着服务外包大赛的项目,一心钻研着 Android 开发技术,三月份项目完成后开始尝试投暑期实习,开始的时候因为没有充分准备,所以人生中第一次面试以面试字节的失败而告终,但也正是这次的面试让自己认识到了自己不足,所以再认真准备了两个星期后,自己又收到了腾讯的面试邀约,并在经历过三轮面试后在三月二十八日拿到了暑期实习的 offer ,至此实习面试告一段落,我的三月也已一个比较圆满的结局结束。

  在拿到 offer 后的四月,自己依然泡在图书馆开始准备数据库的课程设计,也就是从这时开始,我开始接触到了后端的技术,SSM 也好,Redis 也罢,都是在这个时期进入了我的生活。同时在四月的时候,我也在图书馆遇到了她,一个月后自己开始了大学以来的第一段感情。整个五月和六月自己都沉浸在课程设计和甜甜的恋爱中,但也随着后端项目的深入,自己逐渐接触到了消息队列等等的一系列后端技术。

  在炎热的七月,我在完成了学校的课程设计后独自一人来到深圳这个陌生的城市,将要开启一段新的生活。在实习的过程中自己接触到了很多比自己优秀很多很多的学长学姐,第一次了解到了大厂的技术栈,第一次完整的了解了工业产品的研发全流程,第一次尝试开发和优化测试框架,第一次感受到了公司和学校的差异。在七月和八月的两个月里,我在深圳的腾讯总部完成了为期两个月的实习,在这两个月里自己获得了比之前一年更多的收获,学习到了很多在学校学习不到的技术和产品知识,这两个月也是自己成长最快的两个月。但也是在炎热的七月,自己大学里的第一段感情还未来得及憧憬,就走向了凋亡,自己也想过放弃,也曾颓废过,但庆幸的是自己挺了过来。

  在开学的九月,我曾跟关系比较好的学长沟通,表示自己想要出去实习,并拿到了平安科技的实习 offer ,但最后在学长的劝说下,自己还是选择了留在学校继续钻研技术,而事实也证明了这个选择是无比正确的,从九月到十二月的四个月里,自己的技术水平有了突飞猛进的成长。

  在九月,我通过阅读相关的论文和技术博客以及源码,完成了对于 Java AQS,Spring 和 Zookeeper 等项目的部分源码分析,并通过写博文的方式将自己的总结记录下来。

  在十月,自己根据 MIT 6.824 的 2018 Spring Lab 进行实践,并逐步完成了 MapReduce 、Raft 和 Shard KV Service 的 Go 实现,并在一个月内通过了除 Lab4 最后三个测试用例后的全部测试用例,在这个过程中加深了自己对于 Go 的理解和使用,并在对项目的不断重构过程中实现了对于自己代码架构设计的能力。

  在十一月,自己开始进行计算机组成原理的课程实践,开始学习 FPGA 的相关知识,并学习使用 Vivado 通过 Verilog 语言设计 CPU ,在实践的过程中自己两天完成了九条单周期指令的 CPU 设计和仿真,并在后面的时间里将其拓展为三十八条基本指令集,并完成了三十八条指令的全部仿真工作。同时,在可重构的课程设计上,自己通过 HLS 的学习,完成了优化单通道单图像滤波器,并成功将其拓展为双通道双图像的滤波器且并行执行,最终将其封装为 IP 后尝试编写 ipynq 文件在 FPGA 上进行运行。而在编译原理课程实践中,自己完成了词法分析和语法分析这两个编译原理中核心处理器的实现。

  在十二月,自己完成了相关的课程设计后,进入了对于底层基础的夯实阶段,在整个十二月自己重复阅读了之前阅读过的计算机经典书籍以及阅读了大量极客时间中的技术文章,完成了对于自己技术的又一次提升。

1.3 对于 2019 年的感想

  对于我的 2019 年,我觉得有比较重要的几个转折点:

  • 三月的准备面试
  • 七月八月的腾讯实习
  • 九月的源码阅读
  • 十月的 6.824 实践
  • 十一月的计算机核心底层技术的实践
  • 十二月技术书籍和技术文章的重复阅读

  对于三月份的面试准备,我觉得是对自己一次质的提升,通过准备面试,自己了解到了自己的不足之处,也了解到了到底什么样的人才是大厂需要的,到底掌握什么样的技术还能够成为相关领域的技术大佬。

  七月八月的腾讯实习,是自己第一次接触到工业级产品开发的整个流程,在这个过程中自己第一次知道了一个产品的每一个功能实现的全流程,也通过与学长学姐和同事的接触,让自己认识到了自己的不足,给了自己一个很好的学习机会,同时也让自己第一次比较全面的了解了大厂的技术栈。

  九月的源码阅读,是自己克服恐惧的第一次尝试,这一点其实也得益于暑期的实习。因为在暑期的实习过程中,因为需要对项目有足够的理解,所以阅读了大量的项目源码,在这个过程中大幅度的提升了自己的阅读源码的能力。通过最初的跟着相关的论文和文章梳理源码,到后面的自己一步步调试梳理源码调用流程并写技术博文进行总结。整个过程不但锻炼了自己的调试能力,更重要的是提升了自己的代码设计思想,通过源码的阅读,每一次阅读都像是在跟编程大师进行面对面的交流,让自己对系统代码结构的设计有了极大的提升。

  十月的 6.824 实践,是自己阅读原版英文论文和英文 Lab 的开始,在实践的过程中,自己发现原来我们之前疑惑的很多问题,其实在作者的论文中都已经进行了解答,而国内很多看似很好的技术文章,其实也不过是对于论文的翻译。并且通过 Go 项目的实践,让自己接触到了 Java 外不一样的编程思想,惊叹于 Go 设计的巧妙,不管是 Go 中的 Channel 还是 Goroutine 都是无比的精妙绝伦。

  十一月,不管是 CPU 的设计,还是词法分析器和语法分析器设计,都让自己从不一样的角度重新理解了计算机的底层原理,让自己第一次从底层真正了解了一段代码的执行过程,第一次让自己开始理解对于缓存的使用以及相关语言和中间件中对相关计算机底层的优化思想。


二、展望 2020 年

2.1 展望 2020 年

  明天就是新的一天,也是新的一年,在 2020 年中自己有了相比于 2019 年更加明确的目标,短期的目标希望通过自己的努力拿到大厂的暑期实习 offer ,进一步在 2020 年自己会继续阅读更多的技术书籍和论文,提升自己的编程思想和代码设计思想,另一方面自己也会继续实践 CMU 的数据库 Lab ,在提升自己技术水平的同时,切实的提升自己的编程能力。

  另一方面,在即将到来的 2020 年,希望自己可以继续坚持下去,努力成为一个优秀的人,坚持运动,坚持阅读,坚持利用好每一段时间,坚持不放纵自己,坚持自律。正如前段时间导师跟自己的谈话,一个人独自的前进总是困难艰辛的,但希望自己可以继续坚持下去,毕竟前方就是星辰大海。


  最后,希望 2020 年自己还可以奔走在自己的热爱里。
  无畏艰难与险阻,无畏孤单与失败,成为自己最想成为的那个自己。


发布了244 篇原创文章 · 获赞 32 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/qq_40697071/article/details/103789304