飞道的博客

简单自我介绍下自己

311人阅读  评论(0)

Jerry哥,一名即将毕业的硕士研究生,即将加入的公司是美团点评

平时也不爱讲话,一开始对代码没啥研究与热爱,后面愈发觉得其有趣,做过很多奇奇怪怪的项目,最后选择了后端开发

主力语言是java,但是也没研究的很透彻,希望在未来的工作中能够在生产环境下多接触点bug,才能快速成长

生活不单单有代码,审视自己过去的经历才能继续成长。良好的心态会影响一个人的一生,所以身心健康很重要。


2020年开始认真玩公众号,主要希望:

  1. 可以mark下自己在搬砖生涯的一些事迹,希望可以总结一下自己在学习过程中走过的一些弯路,留下一些笔记的整理,比如mysql、redis、java常问的一些问题等等

  2. 每周可以有1-2篇原创,沉淀自己的一些技术文档

  3. 争取开源一个项目,对后端有更深刻的了解

在字节实习的时候leader告诉我,如果没有想法,打多少年代码都是搬砖的。程序员在公司里负责的一小块业务,有成熟的设计文档,有团队协作,但不局限于自己的份内,要从顶层设计去理解整个架构,多问几个为什么当时要这么设计。

学习应该不单单只有技术上的,还有为人处事上的,还有对待一件事的态度。

本科

本科的时候我修的是通信工程,主要学习的语言是c和cpp.

大一、大二的时候学过很多的基础课,比如高数、现代、概率论、数字电路、模拟电路、通信原理等课程。那个时候说实话对未来的方向并不是很明确,也浪费了很多宝贵的时间。本科的时候课比较多,为了追求绩点每节课都比较认真学,最后虽然成绩也不错,但是还是错过了很多机会 比如:

  1. 学院每年都有组织一个电子设计大赛,由于时间缘故+惰性思维 也没有去参加,导致自己的整个实践经历变少了

  2. 没有睁眼看世界。 自己还是报名了一个实验室,参与了实验室的一些项目,比如 工业环境下机械臂控制分类、基于Arm板的联机游戏系统设计、智能避障小车运行轨迹优化 等等,这些项目无一例外都是需要软硬件结合的,和我现在想要的发展方向应该说是不一样的。

大三的时候虽然对嵌入式有一定的想法了,但是还是想考个研究生。那个时候保研失败了,对我来说倒也没太多影响,佛系处理,考就是了。

考研

考研考的是本校通信学院的学硕,主要科目是数学一、英语一、政治和两门专业课(信号与系统和模拟电子技术)。

当时想法有两个:
1.毕竟是通信出身的,可能考本校的通信学院优势会比较大一点
2.虽然报考的是通信学院,但是学院里还是有很多老师做的一些项目和计算机相关的,比如图像识别、语义分割、语音识别等等,当然也有老师往Arm板的一些GPU加速的方向走,所以我打算找一个搞软件的老师

是真没想到从我那年开始计算机学院的分数蹭蹭的就往上涨了,这在股票市场简直就是抄底的操作了

稍微说说自己的考研历程吧:一开始复习的是英语和数学,数学的话首先看的是高数,基本上高数在暑假结束前就结束一轮了,英语由于基础好,每天也是划划水背背单词什么的。

到了暑假的时候,开始学线性代数和概率论的知识,虽然这两块的知识比较简单,但随之要开始复习信号与系统、模拟电子技术的时候,时间就开始有点吃不消了。

每天大概十个小时左右的学习时间,要分配给新学习的知识(现代、概率、信号、模电),又要温故而知新(高数、英语),说真的暑假真的是分水岭,因为那个时候
1.没有课,有大量的时间给自己安排,处于一个学习的爆发期
2.由于处于秋招备战的关键时期,如果那个时候分心给秋招的话,可能会顾此失彼

暑假过后基本上吧很多东西都过了一轮了,到了开学的时候,有很多同学选择了放弃考研直接去秋招,这个时候其实蛮考验的就是心态的。这个时候的大忌就是摇摆不定,顾此失彼。我当时就是直接放弃了秋招,直接怼考研。那个时候的考研自习室,人数一再减少,位置上的旧人离开,一去不复返。随着许多小伙伴找到工作,开始讨论自己的工资是多少的时候,我也有在怀疑,如果我做一份简历进入市场,能不能够拿到一份体面的工作。

所以这个时候,个人的意志非常重要了,“选择比努力更重要”,所以当摇摆不定的时候,一定要坚定自己的选择。

后来直接破釜沉舟了,但是由于时间管理的不够好,直接放弃掉了平时的游戏时间和运动时间,每天早上6.30起床,中午不敢回宿舍,怕起不来,在自习室眯一会,然后晚上怼到11点左右再回去。那个时候就是每天跟时间赛跑一样,但是当一个人被逼到绝境的时候,是可以迸发出巨大的能量的。

研一

虽然中间经历了很多波折,最后还是考上了研究生。报考的老师项目非常多,做不过来,参与过一些传统的通信频谱设计,也参加过一个智能物联网项目的开发。
频谱设计就偏理论了,看了很多通信的经典书籍,也去现场实地考察了一下,了解了企业的需求。令人头秃的还是要推公式。物联网这个项目是做智能家居IOT的,我主要负责服务端开发的一些工作,新学了一门Go语言,还参与了数据库的设计。

参加完这两个项目之后就感觉自己可能比较喜欢往一些系统应用的角度去学习,由于参与过服务端开发,所以直接就去怼了后端。

研二

说真的,平时技术沉淀的比较少,不像各个大佬一样有时间系统性的学习一个东西,一脉相承。由于老师平时的横向项目比较多,还做过一些3D建模、手语建模等等,做的东西也是非常杂了。所以有些东西就是感觉emmmmm自己做过,但是你说里头的一些基础原理,我还真不知道,但是我会用。这就好比我会开车,但是我并不知道复活塞式和旋转活塞式有啥子区别。  所以我需要了解一台汽车的运作模式,万一有人要问我。

mysql我推荐两本书,一本叫 《高性能Mysql》 ,一本叫 《Mysql必知必会》

内容涵盖mysql 架构和历史,基准测试和性能剖析,数据库软硬件性能优化,复制、备份和恢复,高可用与高可扩展性,以及云端的mysql和mysql相关工具等方面的内容。每一章都是相对独立的主题.可以学习MySQL的逻辑架构、存储结构、性能优化和创建高性能的索引等等,无论是备战秋招还是日后的学习都是首选书籍。(字节实习时组内必读书籍)

《MySQL必知必会》主要讲述一些基础的sql语句,涉及到增删改查,联合查询,游标,触发器等等,读完这本书对原生的sql语句会有更深刻的了解。这个可能平时用处不会特别多,秋招的话面试问到的概率基本都是写一些select语句。

作为服务端开发工程师,无论是哪种语言都是需要学习分布式理论 推荐这本书,对分布式系统的理论和工程实践有一定的了解


如果是Java型选手,可以选择以下书籍进行学习:
1.《深入理解Java虚拟机》
这本书主要讲了很多关于Java虚拟机的知识,Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。

现在很多面试Java工程师99.99%都会问到虚拟机的知识,例如垃圾回收机制,Java内存模型,堆栈之间的异同,哪些是线程共享的内存区域等等。

2.《Java并发编程的艺术》
服务端高并发是常见的事情,当有多个线程抢占同一个资源的时候,那么需要很好的利用锁机制对临界区进行加锁。这本书比较详细的说了Java语言所有的并发编程基础知识,如果能够很多的阅读下来的话,相信应付秋招也是没啥问题的。并发编程也是服务端的一个常见考点,所以也是比较推荐这本书的。

至于算法方面,我一开始做的是leetcode的题目+剑指offer的题目,一共大概做了有三百多道的水平.

对于数据结构的认识起源于 《大话数据结构》 ,通俗易懂。然后后面都是跟着acwing这个平台去学习,平台是由y总创立的,一个NOIP金牌的选手,讲算法题很有一套

学习就像打拳击,你必须和高水平的人打才有进步。

和Jerry哥聊技术,聊生活


转载:https://blog.csdn.net/kyle_wu_/article/details/110412927
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场