本文最初发表于 Towards Data Science 博客,InfoQ 中文站翻译并分享。
在这一场史无前例的全球新冠疫情“大流行”中,许多人发现他们的职业生涯受到了影响。这其中就包括一些曾与我共事的数据科学家,他们非常有才华。在我与亲朋好友分享了自己的个人经历,帮助他们在被裁员后找到新工作后,我认为我的个人经历值得公开分享。毕竟,这涉及到的不仅仅是我和我的朋友。任何因这场疫情而被裁员的数据科学家,或者正在积极寻找数据科学相关工作的人,都可以在本文找到与他们相关的信息。我希望本文最终能够给你的求职之路带来一些希望。
被公司认为最优秀员工的我被裁了
2018 年 12 月,我被经理告知,2019 年 1 月我将被裁员。
而就在三个月前,我当时工作的创业公司工程副总裁曾给人事部主管写过一封信,这封信解释了为什么我是公司里最优秀的员工之一,并主张为我加薪。这使得我的薪水增加了 33%。
很自然的,我有了动力,渴望在一个重要的项目上突破下一个里程碑。公司的未来以及自己的前途似乎一片光明。
但就在这个成功的时刻,我却被告知,因受到公司层面的成本削减举措的影响,1 月 15 日我将被裁员。
至少可以说,被迫开始找一份新工作,是一件令人生畏的事。
在浏览了市场上的数据科学职位空缺后,我很快意识到了自己的知识差距。我在 B2B 初创公司所做的工作(混合了入门级数据工程和机器学习)与市场上的许多工作需求完全无关,比如产品感、SQL、统计等等。我只知道这些基本知识,但并不知道要如何填补更高级技能的空白。
然而,在更紧迫的问题面前,即便是这个问题似乎也是次要的,比如我要怎么才能获得面试机会?我只有一年半的初创公司工作经验,而且我没有任何统计学或计算机科学相关的学位。
很快,更多的问题接踵而来。如果我在失去签证身份之前还没找到工作怎么办?如果我找到新工作之前,经济出现下滑怎么办?
尽管我很恐惧,但我别无选择:我必须找到一份新工作。
搜索准备
面对这一艰巨的任务,我需要一些信息来决定下一步的行动。在做了一些研究之后,我意识到,市场上超过一半的数据科学职位是产品驱动型职位(“产品分析”),其余的要么是建模相关的职位、要么是面向数据工程的职位。
我还注意到,除产品分析之外的职位往往有更高的要求。例如,大多数建模相关的职位需要博士学位,而工程职位需要计算机科学背景。显然,不同细分领域的岗位要求差异很大,因此,每个领域的岗位准备工作也会有所不同。
有了这些信息在手,我做出了一个重要的决定:如果为所有领域的岗位都做准备的话,既会让我不知所措,也极可能会降低效率。我需要专注于一个领域。
我之所以选择产品分析是因为,基于我的背景和经验,我在这方面获得面试机会的可能性很高。当然,并不是每个从事数据科学的人都有我这样的具体背景和经验。所以,我总结了大公司三类数据科学岗位的一般要求。
了解这个基本的分类,为我节省了很多时间,我相信,它终将被证明对其他寻找数据科学工作的人也一样有用。但我要补充的是,对于小型初创公司来说,面试可能不会那么结构化,而更多地要求三者兼而有之。
产品分析(占市场约 70%)
要求:具有产品发布实践经验;敏锐的商业头脑;熟练掌握 SQL。
示例:Airbnb 的数据科学家、分析工程师;Lyft 的数据科学家;Facebook 的数据科学家;Google 的产品分析师。
建模(占市场约 20%)
要求:具备机器学习知识(不仅仅是如何使用机器学习,还包括出的数学和理论知识);较强的编码能力。
示例:Lyft 的数据科学家、算法工程师;Airbnb 的数据科学家、算法工程师;Amazon 的应用科学家;Facebook 的研究科学家。
数据工程(占市场约 10%)
要求:具有数据工程技能的端到端数据科学家;具有分布式系统知识;熟悉 MapReduce 和 Spark;具有 Spark 的实践经验;较强的编码能力。
示例:Airbnb 的基金会数据科学家;一些初创公司的数据科学家。
根据我自己的经验,本文的其余部分都是针对那些准备产品分析职位的人“量身定做”的。稍后再来看看我为数据工程职位准备的文章。
求职开始
当我知道自己将要被裁员时,我做的第一件事就是广泛而积极地找其他工作。我用了所有我知道的招聘网站,包括GlassDoor、Indeed和LinkedIn等。我还请求我所有认识的人帮忙推荐。
然而,由于那时已接近年底,因此,直到 2019 年 1 月前,我并没有收到任何回应。
事实证明,请人帮忙推荐比自己申请要有效得多。在发出大约 50 份求职申请后,我只得到了 3 次面试机会;但在 18 次推荐后,我得到了 7 次面试机会。
总的来说,很明显,我在人才市场并不是一个强有力的候选人。
面试概述
尽管每家公司的面试结构各不相同,但多数公司都遵循一个大致框架:
招聘人员简单的电话交流。
1 到 2 轮技术电话面试或 Take-home assignment(带回家的面试作业)。
一场 4~5 小时的现场面试,通常包括 3~4 轮技术面试和招聘经理的行为面试。
在我面试过的公司中,大约有一半(4/10)在技术电话面试之前有 Take-home assignments,或者干脆跳过技术电话面试直接做 Take-home assignments。而这种非常消耗大量的精力。
一般来说,一个 8 小时的 Take-home assignments 会让我在提交后至少要休息半天。正因为如此,我尽了最大努力安排相应的面试时间。尽量在做完 Take-home assignments 的第二天早上没有面试安排。
只要了解基本的结构,就能让你在找新工作的过程中感觉更轻松,能够做到应对自如。
面试之前
在我的面试中,每一个机会对我来说,都是至关重要的。
虽然我知道有些人是通过参加面试来学习的,经历多次面试后会变得更优秀,通常还能为他们面试的最后几家公司获得工作邀请,但我觉得,我不能采取这种方法。
因为我在 2017 年毕业时,我曾发出过 500 份求职申请,但最后只有 4 次面试机会。我没想到 2019 年还会发出更多求职申请。
因此,我的计划是,为每一次面试做好充分的准备。我绝不放过任何机会。
被裁员的一个好处就是,我可以整天为面试而学习。每天我都把要学习的内容安排好,每天重点学习两三件事。从以前的面试中,我已经总结出来,对某一事物或话题具备深刻的理解可以让你在面试中给出更透彻的答案。尤其是在面试的时候,你往往会比平时更加紧张、焦虑,掌握更多的知识会特别有帮助。
在讲述自己的经历时,我不仅想起一个经常听到的误区:没有实际经验,是断无可能获得产品/实验方面的知识的。这种观点,我坚决不认同。虽然我之前并没有任何产品或 A/B 测试的经验,但我相信,这些技能是可以通过阅读、倾听、思考和总结来获得。毕竟,这与我们在学校里接受教育的方式也一样不是?
其实,随着我接触更多的资深数据科学家,我不断了解到,这种做法其实很普遍,即使对于有多年经验的人来说也是如此。你在面试时被问到的内容可能和你以前做的事情完全无关,但你可以通过工作经验之外的方式获得你所需要的知识。
特定科目的准备
下面的六个小节,是我如何为产品分析岗位的面试中出现的具体内容做准备的。
产品感
作为一家初创公司的数据科学家,我主要负责开发和部署机器学习模型,以及编写 Spark 作业。因此,我几乎没有任何产品知识。
当我在GlassDoor上看到一些真正的面试问题时,比如“如何衡量成功?”或者“如何通过当前用户行为来验证新功能?”,我完全不知道要如何处理这类问题。它们对我来说似乎过于抽象、开放。
为了学习产品感,我采取了基本的阅读和总结策略,使用下面列出的资源。所有这些阅读帮助我积累了产品知识。结果,我想出了一个结构化的方法(我自己的“框架”)来回答任何类型的产品问题。然后,我将我的知识和框架用来测试学习任何技能所必需的:实践。我写出了涉及产品感的问题的答案。我将答案大声地说出来(甚至用手机录下自己的声音),并利用录音来微调我的答案。很快,我不仅可以用这种方法“假装”面试,而且我真的知道自己的东西。
资源:
《产品经理面试宝典》(Cracking the PM Interview),Gayle Laakmann McDowell、Jackie Bavaro 著。
《Decode and Conquer》(暂无中文版),Lewis C.Lin 著。
《Case Interview Secrets》(暂无中文版),Victoria Cheng 著。
SQL
我第一次的 SQL 技术电话面试失败了,那是一家我非常感兴趣的公司。
我需要再次练习,所以我花时间研究了 SQL 问题。最终,我能够做到在一天内完成这些问题,而这些问题之前曾花了我整整一个礼拜的时间!老话说得好:“熟能生巧!”
资源:
统计学与概率学
为了准备这些问题,我温习了统计学和概率学的基本知识,并做了一些编码练习。尽管这可能看起来很难(因为这两科目都有很多内容),但对于产品数据科学家来说,面试问题从来都不难。
下面列出的资源都是很好的复习资料。
资源:
可汗学院(Khan Academy)有一门统计学和概率学的入门课程,涵盖了这两个科目的基本知识。
这本统计学的在线书籍涵盖了所有基本的统计推理。
哈佛大学(Harvard)有一门课程:《统计学 110:概率》(Statistics 110: Probability),这是一门介绍概率与实际问题的课程。如果你更喜欢看书而不是听书的话,宾夕法尼亚州立大学(PennState)有一门《概率论入门》(Introduction to Probability Theory)的课程,其中有很多例子。
我还通过对 HackRank 上10 天的统计数据进行编码,以巩固我的理解。
有时候,A/B 测试问题会在统计面试中提出。优达学城(Udacity)有一门很不错的课程,涵盖了 A/B 测试的基础知识,而 Exp Platform 有一门关于这一主题的更为简明的教程。
机器学习
由于没有计算机科学学位,我只能在机器知识有限的情况下开始找工作。我在上一份工作期间,曾学过一些课程,我复习了这些课程的笔记,为面试做准备。然而,尽管现在建模问题变得越来越频繁,但对于产品数据科学家来说,面试问题主要是针对如何应用这些模型,而非基本的数据额和理论知识。
不过,这里有一些有用的资源,有助于在面试前提升机器学习技能。
资源:
首先,我推荐 Andreas Mueller 的这门免费的课程《应用机器学习》(Applied Machine Learning)。
Coursera:《机器学习》(Machine Learning),吴恩达(Andrew Ng)。
优达学城(Udacity):机器学习工程纳米学位(Machine Learning Engineering Nanodegree)。
介绍
有些公司要求求职者要么提交 Take-home assignments,要么提交他们最引以为傲的项目。尽管如此,还是有其他公司在行为面试中询问最有影响力的项目。
然而,无论是什么形式,关键是要让你的演讲有趣并富有挑战性。
这听起来不错,但怎么做到呢?
我的主要建议是通盘考虑所有细节,例如高级目标和成功指标、ETL、建模实现细节、部署、监控和改进。这些小事情加起来,就是一个卓越的演讲,而不是一个大的想法。
下面是一些值得反思的问题,有助你实现理想的演讲效果。
该项目的目标和成功的衡量标准是什么?
你如何决定启动该项目?
你如何知道客户是否从该项目中受益?受益有多少?
你如何进行测试?如何设计 A/B 测试?
最大的挑战是什么?
当你介绍一个项目时,你需要吸引观众对吧?
为了让我的演讲变得有趣,我经常分享有趣的发现和项目中最大的挑战。但是,确保你投入的最好方法是练习。练习,大声练习。我练习向家人演讲,以确保自己已经掌握材料,并能做到轻松交流。如果你能让你认识的人参与进来,那么需要倾听的面试官可能就没有“机会”了。
行为问题
虽然准备技术面试问题很容易,但别忘了行为问题也同样重要。我面试过的所有公司在现场面试中都至少进行了 1 轮行为面试。
这些问题通常可以分为以下三类:
为什么选择我们?/ 你在工作中最看重的是什么?
请做一下自我介绍。/ 你为什么要离开现在的工作?
说说你职业生涯中最大的成功 / 失败 / 挑战。其他版本:告诉我你曾经解决冲突的例子,或者你不得不说服你的经理或产品经理应对某些情况的例子。
行为问题对数据科学家来说非常重要,所以要做好准备。了解一家公司的使命和核心价值观有助于回答上面第一类中的问题。像上面第二类和第三类这样的问题,可以通过讲故事来回答,3 个故事就足以回答所有的行为问题。当你去面试的时候,一定要准备好几个好故事。类似于产品问题,我通过大声地说出来、录音、聆听然后微调答案的方式进行了大量的练习。听故事是确保成功的最好方法。
获得成功的秘诀
现场面试的前一晚通常是一个紧张的、忙碌的夜晚。
为了能够回答产品问题,我总是在复习统计笔记和思考框架的同时,努力学习更多的技术知识。当然,正如我们在学校学到的,没有一样东西是特别有用的。结果在很大程度上取决于在没有一夜的填鸭式学习之前的准备工作量。
所以准备工作是很重要的,但有些规则你可以遵循,以确保你的面试取得成功。
在回答问题之前,一定要把问题弄清楚。通过用自己的话重复问题,确保你理解了别人问你的问题。如果你没搞清楚问题就贸然回答,那就将是一个危险的信号。
组织好所有问题的答案。用要点记下你的思考过程。这一做法向面试官展示了你有一套系统解决问题的方法,有助于面试官以后为你撰写评语。
当你不知道答案时,不要惊慌。如果你不熟悉这个领域,也没有关系。在这种情况下,你可以从做一些假设开始,但要确保沟通你正在做的假设,并询问这些假设是否合理。有时候要求更多的时间是完全没有问题的。如果你想不出任何答案,大脑一片空白怎么办?那就说说你的一个与问题相关的经历。
态度很重要。公司正在寻找一个愿意倾听并能接受不同意见的人。你得表明自己是一个很容易共事的人。要保持谦逊和尊重。倾听并澄清。将你的正能量传递给他人,尽你所能进行一次愉快的交谈。
对公司进行调研。熟悉它的产品。问问自己如何改进产品,以及什么样的指标可以用来衡量这些产品的成功。通过阅读他们的官博,来了解每家公司的数据科学家所做的工作也是很有帮助的。通过这种调研,你才能在面试中进行更深入、最终效果更好的对话。
运用这些规则,以下就是我从现场面试中得到的反馈:
回答产品问题的方式非常结构化。
演讲组织得非常有条理,考虑得很周到。
对我们的产品表现出浓厚的兴趣,并提供了有价值的改进意见。
怎么谈薪资?
在收到口头录用通知后,下一步就是和招聘人员一起敲定薪酬。
我只遵守一条规则:永远要谈判。
但要怎么做呢?
Haseeb Qureshi 有一个非常有用的协商工资指南,我在工作邀请谈判阶段中,虔诚地遵循了这个指南。每一条规则都是如此真实。我和所有给我工作邀请的公司都进行了谈判。工作邀请的平均增幅是 15%,而最高的工作邀请,总价值增加了 25%。谈判很管用,所以不要害怕去尝试谈判!
要点
大量的练习是关键。
失败是生活的一部分,也是求职的一部分,别把失败看得太重。
找到一种适合你的减压方法。
综述
在瘦了近十斤,经历了多次嚎啕大哭(求职是有压力的,承认这一点就好)之后,我终于在被裁员后的两个月内拿到了 4 份工作邀请,其中 3 个来自我做梦都没想过能加入的公司—Twitter、Lyft 和 Airbnb(我最终加入的公司),还有一家医疗初创公司。
在疯狂的两个月结束时,我总共收到了 10 次面试机会、4 次现场面试机会和 4 份工作邀请,这使我的技术电话面试的成功率为 40%,现场面试的成功率为 100%。
我很幸运,在被裁员后,得到了家人和朋友们的大力支持和帮助,这对我在梦寐以求的公司找到一份工作至关重要。
这太难了!具有讽刺意味的是,求职也是一项艰巨的工作,但这一切都是值得的。
我之所以写下这篇文章,是因为我知道我当时是有多么的不知所措。面试要准备的东西实在太多了。我希望本文能让其他需要工作的数据专家更加清楚该怎么准备求职面试。
作者介绍:
Emma Ding,数据科学家,供职于 Airbnb。
原文链接:
评论