如何准备数据科学的现场编程面试?
现在,大多数数据科学职位都要求候选人掌握一到两种编程语言,而现场编程是面试过程的一个重要组成部分。以下技巧可以帮助你为下一次面试做准备。如果你想了解更多数据分析相关内容,可以阅读以下这些文章:
微软数据科学家面试,都问什么SQL问题?
六条鲜为人知的SQL技巧,帮你每月省下100小时!
数据分析新工具MindsDB–用SQL预测用户流失
DS数据科学家和DA数据分析师:要学习什么不同内容?
为面试做准备
一定要提前问清楚HR,他们是否有公开的面试指南或编程问题示例。
他们通常会建议候选人解决 leetcode 或hacker rank 的问题。如果你想熟悉基本甚至高级的语法,这些问题将非常有用。除此之外,你还可以去 Glassdoor、blind 或 reddit 上收集尽可能多的面试问题,然后把它们整理成一个文档,然后一一解决。
我记得,大约一年前,在我参加 Meta面试的时候,我从那些参加过Meta面试的人那里收集了大概30个编程问题(包括Python和SQL),我在给自己计时的同时,试着解决所有问题。
我用 jupyter notebook 来写python(当然Pycharm 或其他工具也可以)。Glass door上分享的一些问题写得不太好,但是很容易理解上下文,所以你可以重写。
对于 SQL ,我用 coderpad 进行的练习。Coderpad 有一个免费版本,你可以创建一个小型数据库,然后进行查询操作。
你也可以使用其他工具进行练习,只要你能运行代码。我建议尝试使用 coderpad,因为大多数公司都使用这个工具(或类似的工具,但外观相同)进行实时的编程面试——你可以自己熟悉一下。
现场编程面试期间
不要着急
不要着急解决问题,回想一下问题,花时间讨论面试官提出的问题。确保你了解所询问的内容以及相关数据。这一点非常重要,尤其是当你面试的是数据科学或数据工程职位。
例如,如果面试官要求你按产品创建总销售额表,你有产品价值和订单价值等列,如果你对这些列的理解是正确的,你可以先确认这些数据(即产品价值是包含产品价格,订单价值是否包含产品和其他数据在内的整个订单的价值?)一旦你确认了这些数据,就更容易找到正确的解决方案。
最糟糕的情况:神经紧张,无法集中注意力
如果你感到紧张,就很难集中注意力,分析手头的问题,最糟糕的情况是——你会感到轻微恐慌,从而导致精神障碍。一定要随身携带笔和纸。在面试官提问的时候写下问题(就像做笔记一样)。另外,以要点形式写下关于这个问题的额外信息,帮助你更好地处理信息,让在你陷入沉思时想起来问题是什么。
我习惯随身携带笔和纸,因为我发现,把复杂的问题读两遍,可以帮助我理解这个问题。读完之后,用笔列出我的想法也可以帮助我梳理条理,验证我的解决方法。
把面试官当成你的朋友
把面试官当成你的编程伙伴——你可以随意询问他有关语法的问题。如果你不确定如何处理该问题,可以问面试官有没有相关提示。
面试结束后
面试官经常会问你有没有什么想问的。我通常会准备一两个与职位、使用工具或在面试中提到的我觉得有趣的内容相关的问题。
在你发送感谢电子邮件后,要放松心情,试着吃些你最喜欢的食物,因为你应该为你所有的努力工作得到奖励!
谢谢你的阅读!希望我提到的几个技巧和工具能够帮助你准备现场编程面试,斩获数据科学offer!你还可以订阅我们的YouTube频道,观看大量数据科学相关公开课:https://www.youtube.com/channel/UCa8NLpvi70mHVsW4J_x9OeQ;在LinkedIn上关注我们,扩展你的人际网络!https://www.linkedin.com/company/dataapplab/
原文作者:Kathleen Lara
翻译作者:Lia
美工编辑:过儿
校对审稿:Jiawei Tong
原文链接:https://towardsdatascience.com/how-you-can-prepare-for-your-live-coding-data-scientist-interview-5ae343b97ae5