用2天面试了10个intern后的一些感想

l
liyya
楼主 (未名空间)

Data Engineer这个职位还比较新,有些公司会和SDE-Data混起来,所以如果投简历的
时候可以看到一下职位简介要求来区分。这里说的数据工程师是指和DS,DA一起同属数据范畴的工种,和SDE负责写数据api和平台等不一样。至于职位数量和sponsor,肯定
比不上SDE的需求,但是我和身边的朋友求职基本没有遇到过不sponsor的问题。然后再给朋友的组里发个招人贴:招BIE,4,5,6都有,还有招Sr DS(L6),有兴趣的姐妹
们欢迎来索要职位。

这篇文章写完有段时间了一直忘了发,正好组长说可以发就和大家分享一下。主要是给大家提供一个新的思路,不用在一个跑道上卷天卷地。如果有什么问题可以在评论里面提问我会回答,如果我有一些新的感想也会在正文里更新,以下是当时写的:

最近我司有一轮集中的在校生远程面试,应聘的职位是2021年的暑期实习生。在
manager 的支持下,有幸花了2天时间,一共面试了10个人,职位是数据工程师Data
Engineer。本来其实还有一个人的,不过最后ta没有出现就没有进行面试。下面来谈谈一些体会和思考。

首先,集中面试是非常累人的,尤其现在因为疫情的关系,面试都是远程进行,45分钟的面试会紧挨着下一场面试,不仅对于候选人,对于面试官也是非常大的心理和生理考验。设想从8点开始不断地面试,到了下午4点进行最后一场面试的时候,其实已经到了极限,如何在密集的面试中给面试官留下深刻的印象就很关键,个人感觉如果在面试一开始的初期,能准备好自我介绍,并在其中保留自己简历的亮点,一方面会有很好的破冰效果,另一方面会帮助面试官设定一个正确的心理预期和定位,让面试顺利地进行下去。一场面试的成功与否,往往取决于初期的印象,一开始的自我介绍就是一个非常好的途径来留下好的印象,这里包括对于岗位的认识,在校/工作经历的匹配还有自我定
位。

虽然今年因为疫情的特殊情况,机会比以往少了不少,但是这次面试下来,感觉还是有很多人的准备不到位。数据工程师的工作要求里面SQL是必不可少的,尤其在我司,SQL更是日常工作中非常重要的工具。给面试官的准则中,就有关于SQL的预期。然而遗憾
的是,有好几个同学在最简单的SQL问题上卡壳,甚至出现了无从下手的困境,即使有
心放宽标准,也无法让这样的候选人通过面试,因为在之后的实际工作中也会无法完成工作的。平心而论,SQL的问题并不是特别的难,只要稍微花一点心思准备一下就完全
可以做出大部分的题,评论难度远低于leetcode上的难度。当然在准备SQL的时候,不
要完全拘泥于提升难度,leetcode上有好几道har的问题即使天天写SQL也未必能够准确写对答案,更重要的是熟悉SQL的概念,了解SQL的基本概念而不是单纯地追求难度会更有助于在面试中回答面试官出其不意的follow up问题。

我司的面试中,Behavior question是最有套路同时也是最好准备的。网上随便一搜
leadership principle就能搜到洋洋洒洒许许多多的文章介绍如何准备,只要稍微认真地看一下有哪几条再想一下每条可以用哪几个小故事来体现就基本可以准备得八九不离十了。“STAR”模型是回答behavior question的万金油,按照这个框架来回答一方面
回答的时候可以做到有条理,另一方面听众也容易抓住重点问follow up问题。其实面
试官在问这类问题的时候,基本都在抓几个重点来判断面试的同学有没有达到
leadership principle的标准,所以在回答的时候巧妙地强调一下自己的想法和
leadership principle的关系可以帮助面试官抓住关键打分,也不至于在前后背景并不是特别清楚的情况下对这个故事模棱两可。讲故事的时候,最好讲一些具体的故事而不是只是泛泛而谈一些做过的“项目”。面试的时间有限,如果太笼统,面试官并没有办法了解前后文也无法对这个故事的实际情况有具体的了解从而无法得到一个准确的预估,反而对候选人不利。

在面试的时候,还有一个比较关键的方面是和面试官进行一定的交流。这里的交流不是那种寒暄,而是通过短时间的交谈后能够和面试官能够建立情绪上的连接(emotional connection),这种连接会在面试结束后做决定的时候起到一个正面的效果。有了这种连接会让交谈变得更容易,氛围也更轻松。面试其实也是一种交谈,一来一往的聊天的效果往往会好过死气沉沉的一问一答。当然这也取决于面试官的风格,如果是压力面试那就是另外一个故事了。

好了说了这么多,下面来谈谈这两天面试以及之后做决定的一些感想。

首先,数据工程师是一个专业设置和职位需求不对口的岗位。为什么这么说呢?来面试的同学里面,基本上一半以上的专业都是data science,剩下的同学有Business
Analytics,Computer Science和Information Science等等。 最近今年,Data
Science站在了风口上,基本上所有的学校都会设置这个专业,甚至有些学校还有本科
设置这个专业的。这股浪潮也造成了非常多的DS专业毕业的学生,对应不那么多的DS岗位。面试的时候看到简历上的经历都是一个接一个相似的DS项目,却都在简单的SQL问
题上卡壳,感觉非常可惜。即使是CS专业,也有不少同学倒在了最简单的数据库和SQL
问题上。至今为止,和数据工程或者商业智能工程师完全对口的专业似乎还没出现,这也造成了毕业生求职这两个岗位时候总会有经历或者技能不匹配的尴尬局面。同时又由于一窝蜂的DS和BA专业设置每年都会有无数多的学生走出校门,却面临对口岗位僧多粥少竞争越来越激烈的局面,尤其DS的职位更偏好Phd而不是学术经历或者工作经历都不
够丰富的硕士或者本科生们。

数据工程师和商业智能工程师虽然并不是一个新兴的岗位,却没有像数据科学一样得到特别的关注和重视,也不是所谓的“二十一世纪最性感的工作”。然而,数据工程和商业智能一直都是维系着数据线的重要一环。有时候甚至觉得一个公司没有了数据科学家,可能并不会影响正常的运营,但是缺少了数据工程师,就没有办法完整地呈现数据,等于闭上了眼睛堵住了耳朵,无法正确地了解业务运转。而数据工程和商业智能所需要的技能,入门的门槛也不是特别高。有对数字的敏感,掌握了解数据库的基础知识,了解最新的云计算在数据系统的应用,能够熟练地使用SQL,会使用数据可视化软件,懂
大数据(Spark为主),会一点编程(Python为主),那基本上就有了敲门砖。在加上
一定相关的项目经历和实习经历,得到面试的机会也不会有太大的困难。其实很多时候研究一下招聘的职位介绍就能知道面试会有哪些相关的考核。以今年的招聘为例:

As a data engineer intern, you will/may:

· Design, implement, and automate deployment of our distributed system for collecting and processing log events from multiple sources

既有CI/CD (git)的要求,可能还会有一些情景问答,如何设计一个系统收集和处理不
同种类的数据,可以了解一下AWS或者其他云平坦的一些产品

· Design data schema and operate internal data warehouses and SQL/NoSQL
database systems

这里的要求是对data pipeline的考核,知道ETL的概念,了解数据库的原理

· Own the design, development, and maintenance of ongoing metrics, reports, analyses, and dashboards to drive key business decisions

对于metrics,KPI,报表,分析和数据可数化的需求。SQL和数据可视化是重点,还有
一点基本的business sense

· Monitor and troubleshoot operational or data issues in the data pipelines

日常维护,检查数据质量等

· Drive architectural plans and implementation for future data storage,
reporting, and analytic solutions

云产品的熟悉程度

· Work collaboratively with Business Analysts, Data Scientists, and other
internal partners to identify opportunities/problems

· Provide assistance to the team with troubleshooting, researching the root cause, and thoroughly resolving defects in the event of a problem

这个招聘广告是统一招聘然后分配给每个组,所以写的职能比较多,覆盖的内容也很多,但是实际面试中因为时间和人手的限制,重点考核的仍然还会是基础的SQL和数据库
,已经非常容易准备也最会被忽视的behavior问题。

以上就是一些最近的感想,希望能对大家的求职有一点启发和帮助。祝大家好运!
F
ForestMonk

好帖!
r
ratzinger

现在能写sql的人越来越少

N年前,整个project都可以写在sql里面,现在都是靠硬件提供速度