跳槽天天有,offer哪家强?
小伙伴从年初到现在,大大小小的公司面试了很多,但总没有拿到一个满意的offer,要么是公司太小,要么就是package太低。心念念的字节跳动,连面试机会都没有。
经过前几次的面试失利,终于明白了什么叫基础不牢,地动山摇。面试官随便针对一个知识点深入考察一下,就无法准确回答,就这样,还怎么能通过面试?
小伙伴消失了很久,但是最近收到了他的捷报,成功拿到了蚂蚁的Offer,公司足够大,base还可以,虽然是个P6,但还是可以隐隐感觉到他的满意感。
其实,我还是有点疑惑,他之前的基础很一般,咋就突然拿到了蚂蚁的Offer。
“你最近都干啥了,蚂蚁面试都问你什么了?”
后来得知,这小伙最近这3月居然一直在闭关修炼,把一些基础的源码慢慢都理了一遍
- 最基本的HashMap 和 ConcurrentHashMap
- 线程池的源码实现
- 阻塞队列BlockingQueue相关实现
- ReentrantLock 实现,以及其内部同步器Sync的实现原理
- Future的实现原理
- AtomicXXX是如何运转的
- ...
听他讲完,感觉他把并发包中的相关实现都系统的整理了一遍。
除了JDK中的源码,他还挑了一个自己比较感兴趣的中间件redis,深入的学习了下。
哎,就冲你这个态度,我也想给你Offer。
不过,说到源码,有些同学似乎比较反感,总觉得会写代码就成,为什么一定要去了解源码是怎么实现?
我觉得看源码有如下几个好处:
- 从源码中学习如何性能优化、设计模式等
- 深入源码,才能了解真相
- 了解源码,才能更好的解决问题
- 你懂源码,面试官更懂你
源码怎么读,才比较有效率?
- 从问题出发,带着问题看源码
- 面向debug学源码
- 写写写,做笔记
好了,希望大家都养成阅读源码的好习惯,也希望大家遇到所有源码类面试题都可以轻松搞定。