大数据工程师面试 - 面试前先找到竞争力!
我是大数据欧老师,曾在互联网某大厂任大数据负责人,从业大数据领域近 10 年,全网粉丝 5000+,从很多候选人的面试和咨询中复盘了大数据工程师的面试全流程,如果你有求职大数据工程师的计划,欢迎找我聊一聊!
你的竞争力是什么?
大家读这篇文章之前,不妨思考一下,如果你正打算去面试,你的竞争力是什么?
- 是你 NB 的学历和大厂的经验?
- 是你在某个技术栈上有充足的实力和自信?
- 是你特别能吹牛?
- 是你特别懂电商这个业务?
都对,但是知道你的竞争力之后,你是如何做针对性的准备呢?
面试是一次横向比较
首先我们强调一点,面试的本质就是候选人之间的不同比较(这里不是鼓励内卷),所以你面试能否通过,取决于你和其他的候选人有多大的差异。这个差异,可能体现在:
- 你会的东西别人不会
- 大家都会的东西你更深入
- 大家都会的东西,你做的有特点
五个维度剖析你的竞争力
我们可以把核心竞争力拆解为五个维度:
- 纵向能力:你特有的,需要继续去做强化,突出优势;包括技术广度 / 技术深度 / 业务场景结合力
- 横向能力:通用型能力,需要培养和提升;包括面试沟通力 / 背景和经历
技术广度
如果你是公司里的多面手,对多个技术栈都有使用和了解,那你可能会拥有技术广度的竞争力。
技术广度指的是你在工作中对多个技术栈都有所了解。我们要注意,在很多数据和业务结合的工作岗位上,需要有技术广度的人来做端到端的交付,而这个端到端可能会涉及到很多个组件,所以如果你是个多面手,拥有技术广度的优势,那你面试这类岗位会有非常大的优势。
我们可以看一下左边这份简历,有两个项目,分别是采集监控平台和数仓分析平台。这两个项目都有一个特点,就是涉及到的技术组件非常多,但每一个组件使用的都并不深入。这位同学他能够使用各个组件之间把它们串联起来,并且实现端到端的一个项目的交付,所以说明他对各个组件的了解,至少是使用上是没有问题的。那么我们可以把这位同学的经历当做是拥有技术广度竞争力的一个典型例子,就是对单个组件的了解有限,但是对项目所需要的多个组件以及某个组件的上下游组件有所了解或者有所使用。
这位同学应该怎么做?
- 首先我们的简历上就要明显避免着重去写某一个框架,因为这位同学并不会对某一个框架有很深入的了解。
- 其次,在面前准备的时候,我们要复习好各个组件的知识点,不要在关键内容上掉链子,在面试沟通的时候,当我们讲项目和知识点的时候,我们要讲出我们系统的复杂度和组件之间的串联关系,然后体现自己有组件闭环的能力。
- 面试沟通时,因为这个同学对各个组件都有所了解,所以当面试官问到其他的问题的时候,我们可以采取关联的方法,把面试官的问题引入到我们自己使用的这个组件上,这样就利用好了我们技术广度的优势。
技术深度
如果你是公司里的 xx 大牛,对某个技术栈很擅长,大家有问题都来找你,那你可能拥有技术深度的竞争力。
技术深度指的是你在某一个技术栈上有比较深入的了解和使用,甚至有过修改源码的经历。对于当前大厂类的很多业务,由于它的数据规模、业务复杂度以及需求的多样性,导致他们需要对某个组件了解特别深入的人一起参与,才能够完成现有的复杂需求和大数据量的计算,所以这类能力在大厂会非常受欢迎。
我们来看看左边这份简历,这是一个做基础架构同学,一直是在大数据计算引擎方向上发展,所以他对这方面的了解是非常深入的。这类同学就是典型的有技术深度优势的例子,他因为他长时间专注于某一两个组件,所以他对这些组件的原理是绝大部分都了解的。甚至知道这个组件的痛点,以及很细节的内容。
对于这类的同学,应该怎么做?
- 首先他要去思考什么样的公司需要这样的岗位,以及这个岗位应该是什么样子。比如他的岗位优势,其实在字节、阿里这样的大公司,才会有需要,对于创业公司,你过于精专,反而起不大什么作用。
- 其次,在简历上一定要突出自己的特点,要让别人觉得你对这个东西是绝对的一个专家。比如简历上需要花大量的篇幅来阐述自己的优势点,但是阐述过程要注意,面试官能否读懂这些内容并向你提问,如果面试官看不懂,那就糟糕了。
- 面试的时候尽量引导面试官往你擅长的方向走,当然这里会遇到一个比较大的问题是,面试官可能并不是做这个方向,或者他对这个方向的了解没有你深入。这种情况下,你要抓住反向输出的机会,通过引导把一些很复杂的东西以非常简单的话术告诉给他,这样反向输出能给面试加很多分。
技术 x 业务结合力
什么叫做技术 x 业务结合力?
这类能力是,你在专注于某个业务领域的同时,得到了这个领域的专业知识,并且针对这个业务领域有定制化的架构,常见的有推荐系统、广告计费系统、电商等。以下图中左边这个例子为例,在用户行为数据分析的场景里,它是使用了 Flink 的 cep 模块来完成一个用户行为的时序分析,那在这里面它的亮点就是基于 bitmap 对这个模块进行了一定的重构。重构本身它并不是一个很大的改动,但是它在重构过程中。完成了这个复杂业务场景的实现,并且还拿到了相对应的收益,比如资源成本下降一个数量级等。这就是非常典型的一个业务和技术结合的case。
那什么样的人比较会容易会有这样的竞争力呢?
通常来讲是公司内部复杂业务的工程师负责人,因为只有复杂业务才需要技术的定制化,而定制化过程会产生技术和业务的护城河,也就是候选人的竞争力。
对于这类候选人,应该去重点研究市面上数据和场景结合的岗位,这样才能利用上自己业务的复杂度,并且最好找的岗位业务是能够和自己的业务相关的,这样自己做复杂业务的护城河才能最在面试的时候最大化的体现出来。
面试沟通力
好的沟通力有以下四个表现:
- 掌握主动权:候选人能够引导面试官到自己擅长的方向上来,这样的话优势才能够被最大化体现出来。但实际上,很多候选人面试后一直在抱怨,为什么问的问题总和我的专长无关?
- 简历还原:我们要让面试表现和简历达到同样的效果,甚至让面试表现比简历还优秀。但实际上很多候选人的情况是,简历写的很好,但是面试的时候总是觉得发挥不出来,想不明白是怎么回事。
- 彼此同频:我们要让面试官和候选人是在同一频道上,这样的话两个人说的话才能够互相理解。但真实情况是很多候选人容易把整个面试的节奏带向,面试官听不懂我说的话,我听不懂面试官说的话。
- 错不扣分:我们要让说错了或者不会的,他并不会影响我们最后的面试评价。但我面试很多候选人,一问到他们不会的点,他们就在那儿愣住了不说话,然后把整个面试的节奏带上一个很尴尬的局面。
这个横向能力是上面纵向能力的基础,如果在横向能力就做不好,很容易把上面的一些竞争力优势给打一个折扣。这个能力也是很多候选人所欠缺的,也是他们应该花时间和精力去重点培养的一个能力。
背景和经历
背景和经历指的是你过往的学校、公司、做过的好项目,担任过的职位,以及自己在写的博客、github、开源项目等等。
这一部分属于硬性能力,如果你没有的话,也很难在短时间内快速培养出来,但我们能做的是,在你已有的经历的基础上,借用这个经历把你的面试表现达到最大化。每个人都有这些东西,我们要思考怎么借助这些硬性条件来帮助自己面试,
这里我给大家三个建议:
- 让过往的平台成为你的竞争力。对于很多来自于中大厂公司的候选人,这些平台是面试官通过你简历的非常重要的依据之一。所以你在面试的时候,最好是能输出一些你在前司的体验收获,以及前司的技术项目,当然这里不能泄密,我们挑整体大面儿上的内容去讲一讲。这样也能让面试官感觉到你是一个比较善于总结归纳的人,在你的面试上会有很大的加分。
- 秀一秀你做过的好项目,如果你做过的项目和面试官喜欢聊的话题恰好对口,即使这个项目可能并不是你简历上的重点项目,甚至可能没有写到简历上,我们遇到这样的机会,一定要说出来,让面试官感觉到你在这个方向上是有过思考的,并且这种思考他们一定是需要的。而且面试官可能以为你是临场发挥,那最那这对你的面试帮助就非常大了。
- 你的博客,开源项目,如果有的话,记得在面试前把它整一整,把最好的前几篇放到首页上。这样面试官。如果有时间的话,他可能真的会去看一看你的博客。并且在面试中你也可以侧面说一下你日常是有对技术做总结归纳的。这样也能拿到一个不错的印象分。
带着竞争力自信面试!
学习了上面的思考方法,相信你基于过去工作的复盘,已经对自己有了更深刻的了解。没错,面试想要取得一个好的结果,最最重要的点是了解自己,知道自己的优势在哪里。
期望大家将上面的方法论,作为延续你整个求职历程的思考方式,帮助你在一轮又一轮的面试里,逐步向面试官展现一个最好的自己!
#数据人的面试交流地##面试被问第一学历差时该怎么回答#解决职场真实面试问题,分享同学真实成功案例,欢迎订阅关注!