- 清/北本科,Berkeley PhD New Grad,实习x1
- 投的简历不太数得清了,进入面试流程的有G (offer), W (offer), M (offer), C (offer), A (start-up, offer), A (withdraw), V (start-up, withdraw)。整个过程准备得比较全面,还没有因为面试被拒过。
- 我老公比我大一岁,是做deep learning research的,工作了半年左右,平均每周面试2-3个人。他自己也没有因为面试被拒过 - 有许多的心得是和他讨论+练习中形成的。顺便在此谢谢老公在求职过程中的支持[比心]。
- 求职是一个反馈不多的过程。有幸我在面试C公司的时候,C公司的recruiter打电话给我把我所有的面试反馈都读了一遍(verbatim!)。各个面试官对印象比较一致:觉得我沟通能力很强,编程熟练,统计扎实,对数据库后端了解比较少,对productionization没有什么经验,对公司实际兴趣一般。总体来说,我觉得是个比较公正的评价,和我从其他的公司的recruiter/hiring manager (HM)那边感受到的评价是一致的。大家可以根据这个评价自行判断下面要讲的一些经验对你们是不是适用。
. 1point3acres
想在这里谈谈在各个不同环节(简历+面试+谈判)中如何有效地进行沟通。
我自己总结的三个卖点:Berkeley PhD + 实习x1 + 顶刊的一篇文章。一旦这个结构明确之后,写CV就变得容易很多了。我最后一版CV中,所有的字体都是普通模式,只有这些信息是加粗的,感觉的确有了一目了然的效果。The devil is in the detail. 说个细节,比如一般列举publication都会加粗自己的名字,把杂志的名字设成斜体。但是这样的版式让杂志的名字(真正重要的信息)变得很不醒目,淹没在一长串的共同作者和很长的文章标题中。如果读者没有时间仔细阅读,他们只能形成一个模糊的印象:这个candidate有XX篇publication,而很难对文章质量形成印象。我最后决定把杂志名加粗,并且列在最前;面试的时候许多面试官都注意到了这篇文章,表现出感到impressed,并且问了一些follow up questions。
板式:一般一页,用readable的字体和spacing。不推荐非常modern/stylish的模版。为了好看,这些模版有时候会使用大量的空间和很大的字体标注不重要的信息(比如section title: education, working experience, etc.)而且比较难短时间内快速阅读。许多公司使用OCR软件分析CV,复杂的版式会造成内容无法被辨认。
内容:PhD经常会写,但是我个人觉得不重要的内容:invited talks;teaching;professional/referee service;reference/advisor。最后一点可能大家会看法不同,但我个人认为,公司要雇佣candidate,而不是candidate的老板。与在学术界不同,在这里老板个人能力如何并不是一个特别相关的因素。而且,DS是一个跨学科领域,即便导师在某个领域很有名,别的领域的人也大概率不了解。
很多PhD会写多个(3+)研究项目,我个人觉得没有必要(尤其是未发表的项目)。几乎没有人有能力评价这些未发表项目的质量。我最后选择了merge多个项目讨论一个unified research agenda(My dissertation focuses on ...)。
我不觉得写上述的信息本身有什么负面作用,但是很多的无关信息会稀释有效信息的效力。
#2. Discuss impacts, not findings.
在学术界,一篇文章的核心是“We find that ...”。但在业界,大家一般不关心research finding是什么,而是关心这个过程中反映出来的candidate的能力。最低工资到底会不会提高失业率?不重要,重要的是. Χ
Candidate在做研究项目中展现出或者学习到各种软硬实力(比如用了某个模型;或者和不同学科不同背景的人合作)
Candidate完成了某个非常困难的任务,说明ta能力很强(顶刊publication,etc)
Candidate产生了很大的real world impact,说明ta能力很强(被媒体报导,etc)
在此分享一篇对我帮助很大的文章,讨论如何写CV中的bullet points:My Personal Formula for a Winning Resume (Laszlo Bock, former Google SVP of People Operations)
2. 面试. Waral dи,
面试的技术内容如何准备在此不详细讨论了(可以自成一帖?)推荐两个我觉得很有用的资源:
SQL:pgexercises.com;网上有很多SQL的练习资源,但大都很ad hoc。这个很structured & comprehensive我觉得很好用。-baidu 1point3acres
stats:Mathematical Statistics with Resampling and R;我接触过很多统计的教材,但感觉这本书最practical & 最接近于Google或者其他大厂的DS面试内容。
#1. Provide structured responses.
DS面试的题目有四种类型:background (问CV上的项目和经历);case study(假设我们要...你会怎么做?);coding;behavioral(Tell me a time when you ...)。
不管回答什么样的问题,都千万,千万,千万不要ramble。
想象面试官问这个问题:我们要做XXX产品,你会如何评价产品的成功,并且设计量化的指标?
在mock interview的时候,我的回答是:我们可以测量每天有多少人用这个产品(daily active user),每个人在产品上花多少时间(user engagement),当然,有很多种方法测量engagement,比如我们还可以看用户用了这个产品的多少个feature。当然,这可能存在一些问题,比如有些feature是新的,用户还不知道他们的存在,...
我可以想象,这是the worst answer one can provide。其实回答很多问题的过程中,candidate说什么并不重要(metric并无对错),重要的是candidate能否思路清晰,讲话有条理。比如我觉得比较好的一个回答是:先从三个角度设计指标:user acquisition, user engagement, user retention,然后对于每个大类列举一些相关的指标,最后再讨论每个指标的pro/con,以及如何实现。如果可以在脑海里把对问题的回答想象成一个google doc,一个比较好的结构是:先讲section 1,2,3,再讲1.1,1.2,1.3,再讲1.1.1,1.1.2,etc。我最开始常犯的错误是:先讲section 1,2,然后突然想起2.1,开始讲2.1,然后又突然想起2.1的诸多caveat,开始详细地讨论若干技术细节2.1.1,2.1.2,etc。
当然技术能力很重要,但面试结果不是完全由答题正确率决定的。面试官想看到candidate如何处理工作中可能发生的各种情况,以及如何和别的teammate相处。越到后面,我越觉得面试的目的不是答对所有的题目,而是展示给面试官“I am someone you want to work with.”. From 1point 3acres bbs
#1. Understand the incentives.
. ----
在工资谈判阶段,我个人的体会是:网上有相当多的misinformation,比如认为谈判会造成offer被撤回,比如要对recruiter态度强硬,等等。当然,每个人每个公司的情况都有所不同,但我当时的策略是:寻找权威的信息来源,不过多得把决策依赖于某个论坛上路人甲的偶然经历。理解各种论坛上受关注最多的帖子常常是特别sensational/unusual的,不一定具有代表性。.
在此推荐一个对我非常有帮助的视频,是对一位Google/MSFT recruiter的采访:Google Recruiter Tips On Offer Negotiation, Interviews, And More(by Clément Mihailescu, on YouTube)基于我和老公在offer谈判阶段和大厂recruiter接触的经验(样本量n=7),Amy在这个采访里的回答非常准确、权威、具有代表性。下面的一些内容是基于我/老公个人的经历,以及Amy提供的信息。
caveat:我的谈判过程很顺利,部分原因是有一个offer明显高于其他,所以主要都在match offer。我没有无compete谈判的经验,在此就不误人子弟了。还有一种tricky的情况,就是所有的offer都薪资持平。我谈判时发现,competing offer的薪资并不是谈判唯一的lever。在决定去X公司还是Y公司时,我很诚恳地告诉了recruiter所有我在考虑的因素,以及我对于这两个公司的评价。即便当时在薪资上X > Y,而且我在两边都分享了对方offer的信息,X公司的recruiter还是主动地提出了可以继续加薪资。更多地让recruiter参与决策过程,他们会更愿意/更有激励提升offer,因为他们更能看到自己的effort的直接效果。. 1point3acres.com
..
我有一个小伙伴在谈判时处理过若干offer薪资相似的情况,并且写了非常详细的帖子分享。她使用了一个negotiation service,和我的approach有诸多差别,大家自行判断什么样的策略对自己更适用吧。
My Journey from Econ PhD to Tech — Part 3: Negotiations part 1
My Journey from Econ PhD to Tech — Part 4: Negotiations part 2 + Decision
(By Scarlet Chen on Medium)
#3. Ask Nicely.. 1point3acres.com
我很幸运,遇到的几个recruiter都非常支持我,并且让我感到:They will act in good faith and on my behalf。整个过程中,我们的interaction非常高效&友好。我个人感觉,谈判期间的confrontation,不仅没有必要,而且不利于达成最终的目标。. check 1point3acres for more.
比如,永远,永远,永远不要“强硬地谈判”:.--
I wouldn’t be able to take the offer if ...
I will take an offer from another company if ...
I don’t think this offer is attractive if …
因为这可能会被理解为rejection。