自从下定决心不准备考研,直接找工作开始,已经过了一年多了。这一年里我几乎每一个月都有将自己学到的知识放到CSDN博客上。这一年多的积累,一年多的学习,一年多的努力,终于让我在今年的5月份找到了实习。而这份实习,也是我最初的梦想BAT中的B,ByteDance。
在今年的2月到5月份,这三个月,我的博客几乎停更,一直在努力的找实习,一直在被拒绝。也许公司认为不会SpringMVC 不配找实习吧。导致自己的简历一直被拒绝。但是大厂还是给我了些许机会,字节跳动,腾讯,美团,阿里都邀请我面试。
非常感谢面试初体验交给了字节跳动,虽然第一次失败了。但也让我明白了一个道理:勿在浮沙筑高台 。
第一次倒在了字节三面,非常的难过。那个时候我明白了,高并发不仅仅是一个new Thread,高并发的本质是CPU的调度;网络不仅仅是一个Socket,更是Select , poll , epoll;JVM不仅仅是Class 文件的运行载体,本质上就是一个操作系统。
一切问题要参透本质,才有从山脚到山顶的能力。
3月22号倒在字节三面之后,我就一直在刨析代码真正的底层原理,基本上每一天都在刷题,每一天也要学习新的知识,Redis,分布式原理。
很感谢在4月27日,字节跳动再次给我打了电话,邀请面试,我非常的兴奋,也非常的激动,我知道,这可能是找到暑期实习的最后机会,也是离梦想最近的时候。
我还记得在第二次面试时,面试官给我出了两道算法,第二道还很难,面试官告诉我,你的基础我觉得还不算非常的扎实,所以我希望你能够在算法上能有所争取。也许是日夜刷题的积累,也许是因为运气。面对一道完全陌生的难题,也能够写出来了,所以第二面算是侥幸通过了。
三面四面已经脱离了语言,面试官不断的跟我探讨我的项目(Netty的聊天系统)的架构,如何扩展,如何设计,分布式情况下怎么保证数据的可靠性,项目的构思…哪怕只是面试,就让我学到了很多东西。
由于实习的岗位并不是Java岗位,所以后续的文章估计会以 Python 或者 Golang 为主。
所以会后续,我会保持以前的节奏,
一周一到两篇的语言知识,
每一天都做一道算法题,不论简单或者难,都将它吃透,能写出文章就写出文章;
每隔一天都要学习关于分布式系统的知识
每隔一天学习大数据的相关知识
每一天学习新语言的知识
这一年一直在以Java的路线进行学习,学到的知识远比总结的多,在2月到5月这段时间记了50多篇的笔记,最后总结了一个简单的复习的骨架,希望能对这篇文章的读者有所帮助吧。
后续我会将这段时间的学习到的知识,陆续的总结,发到CSDN,帮助更多的人。
最后,希望所有的读者,都能进入自己心仪的公司,找到心仪的实习岗位。