本文转自自公众号:石衫的架构笔记
ID:shishan100
一、先来体验一个真实的面试连环炮
好,闲话不多说,我们进入正题!
本系列文章,我们将会从消息中间件、分布式缓存、分布式搜索、分布式架构、海量数据、NoSQL、高并发、高可用、高性能、数据库、JVM虚拟机等各方面聊一下面试中的高频技术问题。
现在一些中大型互联网公司的面试官,在面试候选人时,一般都会采取连环炮的策略来深挖一个候选人的技术水平。
举个例子,比如说看你简历上写了熟悉消息中间件(MQ技术)。那么可能我们就会有一个类似下面这样的连环炮式发问:
上面仅仅是MQ相关技术问题的一部分,实际上,一个比较好的面试官的问题,就是从技术面、技术点、项目实践几块来抽丝剥茧的发问。
二、技术广度的考察
首先考察候选人技术面的完整性,因为工作中是需要具备一定的技术视野的,不能说光知道消息中间件,但是分布式缓存却一无所知。
类似于以前高考的时候,你语文特别好,结果物理特别差,那也是不太合适的。
所以工程师首先要避免自己的技术短板,尤其是三到五年经验的同学,已经彻底度过了自己人生的职场生涯的初期小白入门菜鸟阶段。
所以,务必在工作三到五年的时候,保证自己的技术绝对没有任何短板,整体技术栈要或多或少都知道一些,不能出现盲区。
比如,我现在问你,你们公司有没有什么业务场景是可以用NoSQL的?现在国内各个公司用NoSQL的技术都有哪些选型?具体NoSQL可以解决什么问题?
如果你一问三不知,这就是典型的技术短板,你至少需要大概知道,每个技术一般在什么情况下用,怎么来用,解决的是什么问题。
因此,上面说的消息中间件、分布式缓存、海量数据、分布式搜索、NoSQL、分布式架构、高并发、高可用、高性能这些技术。并不是说真的要求工作几年的同学都要精通到源码层面。
而是说你工作几年以后,应该有一定的技术广度,开阔的技术视野。
三、底层技术的考察
现在很多互联网大厂都会有基本功的考察,举个例子,Java虚拟机的核心原理、内存模型、垃圾回收、线上FullGC卡顿性能优化、线上OOM内存溢出问题你处理。
Java并发中的volatile、锁优化、AQS源码;
Netty背后的IO、网络相关的知识。
其实这种底层技术,是线上高负载大型系统的架构设计和开发,必须要具备的。
因为底层技术不扎实,很多中间件或其他高阶的技术,都无法深入理解其原理。
而且很多时候,解决线上系统的生产故障,都需要这些技术。因此,底层技术的掌握是一个优秀工程师必须具备的素养。
四、技术深度的考察
此外,我们一定会深入考察候选人平时工作中熟悉的以及常用的一些技术。
举个例子,比如你项目里用了Redis或者是Elasticsearch。
只要你用过了,而且是你某个项目里的核心技术,那么一定会用连环炮式的发问,深入各种细节、底层、生产环境可能遇到的技术挑战。
总之,就是要用压力测试出来你在这块技术水平掌握的到底有多深,实践经验有多强。
一个好的面试官,自己本身技术功底扎实,是可以对一个技术问出一连串的连环炮的,就比如上面的那个消息中间件的连环炮发问。
而且只要面试官在一个技术上的深度超过候选人,那么通过不断加深的发问,是可以考察出来一个候选人在自己最熟悉的技术领域的技术深度的。
举个例子,比如说你对一个技术的掌握是否达到了源码级别?
是否对某个框架,或者是中间件深入的理解底层的源码实现,从源码级别说清楚他的架构原理?
是否对这个技术有过线上的高可用部署,承载过高并发流量的访问?
是否对这个技术在线上生产环境解决过各种各样的复杂技术挑战?
是否基于这个技术落地到你的业务系统中,设计出各种复杂的系统架构?
通过这种连环炮,可以非常好的考察出某个候选人对技术深度的掌握。
技术深度的考察是中大型互联网公司面试官对一个高级/资深的候选人必须考察的。
因为如果一个人工作5年以上,来应聘高级职位的话,那我们绝对是要求他对至少一个技术领域有着较为深入的研究的。
比如说起码你得深入阅读过某个热门技术的核心源码,有一定的技术功底,可以解决一些复杂的线上故障。
技术广度决定了你可以利用各种技术来做项目,但是技术深度决定了你的技术功底。
你未来学新东西有多快,线上系统出了故障你能否快速定位和解决,你能否基于对技术的深刻理解为公司的项目设计和开发出复杂而且优秀的架构出来,这都取决于技术深度。
五、总结 & 预告
小结一下,本文我们用一个面试连环炮,引出了平时中大型互联网公司面试官是如何发问的。
然后从技术广度、底层技术、技术深度几个角度说了一下,我们一般如何考察候选人的技术。
接下来这篇文章:互联网公司的面试官是如何360°无死角考察候选人的?(下篇)
将会从项目经验的考察、系统设计的考察、候选人与岗位的匹配、多轮面试官的协作考察出发。
继续告诉大家互联网公司是如何全方位、无死角的考察候选人的。
知己知彼、百战不殆,面试也是如此。
你只有真正了解了面试官的选拔标准,考察范围,才能更好的进行针对性的准备,成为行走的“offer收割机”。
END
觉得文章不错的,欢迎点在看和转发,长按下图关注公众号 程序员乔戈里,收看更多精彩。