3

没用Pandas快捷方法,硬核编程的我面试被拒

 1 year ago
source link: https://www.51cto.com/article/720982.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

没用Pandas快捷方法,硬核编程的我面试被拒

作者:机器之心 2022-10-20 15:45:12
代码简洁就是高效?

近日,Reddit 上一位网友 Mogady 分享了自己在一家公司的面试经历。这段经历让他感到沮丧,因为他觉得面试并不是在考察 ML 工作者的实际能力,这是不公平的。我们先来看看他讲述的面试过程。

我有 4 年的 NLP 经验,最近想找一份远程工作,于是我申请了一家公司,该公司声称他们只雇佣 top 3% 的人。当然,没有人知道这个数字是怎么来的。

我申请了两次,第一次通过了编码测试,但没有通过技术面试,因为我没能在 30 分钟内解决 2 个问题。

第一次面试失败之后我反思了自己的弱点,并意识到解题才是工作面试中的关键,于是我在 Leetcode 上刷了一些题,然后又申请面试同一家公司。这次我直接进入了技术面试阶段,他们给我一个数据集,要求我在 30 分钟内让一个 NLP 方法的准确率达到 96%,其间我只能浏览文档,不允许用 StackOverflow 或谷歌搜索。我想这应该是在考察我理解问题的能力——想让我又快又好地处理给定数据。

经过几次迭代,准确率达到 90%,然后时间到了。但我告诉面试官如果我有更多时间,我会怎么做。

第二天面试官给我发了一封拒绝邮件,我要求他们给我一个理由,他们说:「面试成功的人可以在给定的时间内获得更好的性能,因为这些人知道 Pandas 库函数能帮他们快速完成编程。」

但是根据我几年的 NLP 实际工作经验,Pandas 和 Jupyter 通常只用来分析数据。如果你真的在构建一个项目,你可能就想尽可能摆脱 Pandas 库函数。因此,不只用一行代码完成操作并不意味着我的能力不是 top 3%。

如果该公司因此拒绝我,那么我是否可以认为 top 1% 的人甚至不需要编码?他们只需要对各种工具得心应手,问题就能靠工具自己解决了。

如果他们认为从头开始构建项目并不重要,那我注定不会面试成功。

显然,Mogady 对这段面试经历感到非常懊恼,他提出疑惑:「为什么现在所有问题都以解决速度为衡量标准?」

Mogady 的经历引发了网友的诸多讨论。有人表示这很现实:「面试确实会衡量应聘者对行业中常用工具的了解,并将重点放在最常用的工具上。一些公司通常还希望尽快为客户创造价值,而不考虑太多细节。这也会影响他们选择雇用谁。」

图片

但也有人从构建项目的具体问题上分析,认为压缩源代码(例如用一行代码完成操作)不利于项目的长期运行。一行代码编译之后的机器码和几行代码没有差别,而几行有注释的好代码是更佳的选择。

图片

有担任技术主管的数据科学家表示:「使用 Pandas 库函数编写一行代码不是什么重要的事情,更重要的是如何扩展和泛化算法。我会更看重这一点,而不是盲目选择只会加速训练的员工。」

图片

还有人从公司层面看待这个问题:「如果一个公司只考虑 ML 方法的速度,那么他们可能也只是想尽快盈利,而没有长远发展的想法。好的公司在意的是员工分析和研究问题的能力。」所以这样的公司不去也罢,没什么前途。

图片

无论是对公司还是对个人,Mogady 的面试经历都值得我们思考。面对一个实际问题,又快又好地解决问题不是易事。如果要在速度和实际效益上选择一个,你会怎么选?

责任编辑:张燕妮 来源: 机器之心

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK