您的位置:首页 > 互联网

是时候彻底放弃“高分低能”的 Leetcode了:AI 时代的面试需要大变革!

发布时间:2023-10-23 20:25:56  来源:互联网     背景:

声明:本文来自于微信公众号 InfoQ(ID:infoqchina),作者:核子可乐、Tina,授权转载发布。

随着软件开发行业正发生整体转变,我们越来越依赖 Copilot 和 GPT 等 AI 工具来生成代码、提高生产力,所以必然要据此调整对人才的甄选思路。

经验丰富的工程师也会过不了“编程面试”,特别是在没有花时间去复习 Leetcode 习题的情况下。现在很多人已经忘记了最初为什么面试时要做 Leetcode 题。实际上,Leetcode 来源于谷歌的一项面试研究,最初谷歌想确定最聪明的候选人通常也是最擅长算法的。谷歌聘用的重点是智商而非纯粹的编程技能,因此这导致他们的面试主要侧重于算法问题。后来,其他公司也效仿了谷歌的招聘模式,普遍开始问算法编程问题,逐渐整个行业的面试都围绕算法编程,而谷歌最初的研究目的逐渐被大家忽视。

算法虽然重要,但在面试场景下却是可以通过死记硬背的刷题方式来解决的,而且对于大多数软件公司来说,工作很大程度上是写在 CRUD 业务。特别到了现在,Copilot 和其他一些 GPT 编程工具已经被开发者们纳入到日常工作中,过分强调“Leetcode 能力”似乎也有一些不合时宜了。

花时间在 Leetcode 上练习一下常见的面试问题,然后依靠刷题进入大厂,这就是企业在为工程团队招聘新成员时想看到的效果吗?这事也要从正反两面来看:

  • 虽然解决这些复杂的算法问题确实既有益、又有趣,但现实情况是,对于大多数高效开发者来说,我们的大部分编程工作跟这些毫不相干。也就是所谓“面试造火箭,上班打螺丝”。

  • 大多数人在日常解决比较困难的编码问题时,主要会参考 Stack Overflow、技术文档和其他在线资源。我们会跟同行聊天,并将不同的思路写在白板上。而随着 AI 编码工具的爆发式增长,许多开发者已经开始将 Copilot 和 ChatGPT 纳入自己的工作流程。

  • 对于大部分复杂问题,我们可能只需要处理一到两次,之后就能反复使用。所以说编写这种高度抽象的复杂代码不能说没有意义,只能说意义有限。

  • 现在的面试习惯会创造出一种人为的情境,给开发者增添了压力。其实很多朋友都不喜欢在他人的注视下写代码。在现实生活中,也很少有人会给自己的编码任务设置固定的时间。面对难题,我们可能去散会步、跟同事交流、研究算法、先构建个小型实验代码库等。老实说,“心流”状态下的开发工作才是最富成效的,而压力面试显然跟这种状态没有一毛钱关系。

  • 开发者会在自己熟悉的环境中使用自己喜爱的工具进行编码。使用不熟悉的工具反而让人迷失方向,并进一步增加他人注入下做开发的压力和焦虑。

  • 总而言之,这种面试方法可能是在衡量错误的指标,所关注的东西对于候选人有效融入团队基本没什么帮助。

    不仅如此,随着团队越来越依赖 AI 生成的代码(无论是 Copilot 还是 GPT)来提高生产力,如今快速理解代码并在更广泛的应用 / 场景上下文中识别细微缺陷,才是最具价值的关键能力。

    跑马圈地商业模式

    GPT 为 Leetcode 中常见的 N-Queens 问题生成的答案。

    因此现在已经有面试改换了重点,转向了审查代码、而非编写代码。这无疑是个重要启示,让我们意识到代码审查开始成为评估软件工程师的更好方法,而不再是专注于编码练习。

    在面试中强调代码审查的八大理由

    代码审查之所以能够在本质上提高面试效果,主要基于以下几个原因:

  • 在 AI 时代,由 AI 生成的代码往往难以适应性能、安全性和内部最佳实践等实际要求(在受监管的行业中尤其突出)。在依赖这些零散生成的代码时,开发者必须有能力在整体项目上下文内有效评估代码质量、把握潜在风险。

  • 这种方式能更好地反映工程师——特别是高级职务——所从事的日常工作。从长远来看,向同事、特别是初级团队成员提供有效的指导和意见反馈,更有助于提升整体生产力与代码编写质量。

  • 这样可以更好地反映受试者是否具备全面的推理、思考和沟通视角。换句话说,更好地把握受试者加入团队后的整体表现,对其技术经验进行深入剖析。

  • 代码审查在本质上更具协作性,而编写代码则往往是项比较孤立的工作(相信有不少开发者更倾向于在晚间一个人静静编写代码)。代码审查也许更能反映受试者在团队中的工作状态,所以效果可能优于让受试者直接解决技术难题。

  • 代码审查中包含更多主观性因素,很多问题绝不是非黑即白。这就自然提供了更大的讨论和解释空间。由于不存在单一最优解,代码审查还让我们有机会面对更多异常情况。面对5位受试者,我们可以获得5种独特的观点;相比之下,以往的算法问题可能只对应少数几种最佳答案。

  • 这种方式,也让受试者更难通过生成式 AI 或者 Leetcode 刷题的方式作弊。

  • 这种方式更适合评估那些负责理解代码、而非直接编写代码的技术角色,包括工程经理、架构师和技术支持人员等。

  • 这种方式能更好地反映受试者在初入团队后的表现:通过阅读代码来学习现有系统。很明显,考察这方面能力比衡量他们能否解决 N-Queens 问题更有实际意义。

  • 具体策略

    在代码审查中,我们还可以将以下几种策略搭配起来,借此衡量受试者的实际水平。这些策略的共同点在于,都更强调代码审查能力、而非代码编写能力。换言之,重要的不是能否在特定时间之内解决问题,而是能否适应现有代码库中的零散内容和团队遇到的实际挑战。

    “道法自然”

    从实际代码库中提取那些有意义、重要且有趣的部分,将它们作为审查工作的具体场景。比如说数据访问、异常处理、输入处理等等,这些都是审查受试者能否适应现有代码库,以及能否看懂、理解实际代码资产的好办法。

    找出 Bug

    故意引入一些逻辑缺陷或问题,看看受试者能不能顺利发现。比如说要求他们找到并处理最近公司里刚刚修复掉的 bug,看他们能否发现根本原因、打算如何解决该缺陷,他们的方案跟实际修复之间有何不同等。

    重构与重新设计

    可能公司刚刚对某些代码进行了重构,或者正打算进行重构,这时候就可以将重构前的代码作为素材,考察受试者如何看待原有代码、打算用什么策略规划和实施重构。另外,也可以询问受试者能否确定为什么有必要进行重构,并评估他们所提出方法的复杂性。大家可能会惊讶地发现,这绝对是种考察技术能力的全新途径、而且相当有效!

    google pixel 6 pro 中文

    如果受试者表现良好,就基本可以认定他们能够快速融入现有工作流程。

    以性能为导向

    找点最近刚刚做过性能修复的代码,看看受试者能否发现导致一段代码运行缓慢的原因,包括他们能否提出算法、替代设计或修复思路以提高代码性能。

    具体包括应用程序所需执行的现有 SQL DDL 架构及常见自然语言查询。或者删除索引定义,看看受试者能否提出索引或替代设计来提高性能。

    不要询问什么 Big-O 表示法的原理,而应考察受试者能否真正发现数据访问代码中的那些 O(n^2) 代码或 N+1问题!

    关注测试

    选择一段代码并匹配一组代码单元测试,询问这是否涵盖了所有情况?还有哪些情况未能涵盖?如何对单元测试做改进?在即将到来的 AI 生成代码时代,这种判断力往往更加重要:理解领域空间和用例,以及如何编写高覆盖率单元测试(或者评估 AI 生成的单元测试的完整性)将成为一项关键技能。

    安全嗅觉

    选择包含微妙安全缺陷的代码,看看受试者能不能发现这些问题。不要单纯询问什么是 XSS 或者 SQL 注入攻击,而是要看他们能否意识到当前代码缺乏对此类攻击的保护机制。同样的,随着团队越来越多地依赖由 AI 生成的代码,这种从生成代码中发现潜在安全缺陷的能力将变得愈发重要。

    最佳实践

    对于更高层级的职位,则应考察他们能否把握最佳实践,并借此与技术新人 / 直接下属顺畅沟通、传授软件开发经验。拥有这种能力,才是一名好的技术管理者。

    写在最后

    在《平均的终结:如何在崇尚标准化的世界中胜出》一书中,Todd Rose 写道:几乎任何有意义的人类特质、尤其是天赋,总会包含多个维度。问题在于,当我们试图衡量一个人的才能时,却经常诉诸平均值,想要让参差不齐的个体简化为单一维度,例如标准化的考试分数或者工作绩效排名。

    事实上,如果我们选择狭隘的问题解决技能,那么最终得到的就只会是“平均”或者说平庸的候选人。他们只是在简单学习并应付这些考察维度,反而让我们错过许多真正能够提升团队生产力的卓越人才。将代码审查作为面试中的团队技能考察指标,有助于更好地衡量受试者的整体技能水平,避免靠 Leetcode 刷题导致的“高分低能”问题。

    随着软件开发行业正发生整体转变,我们越来越依赖 Copilot 和 GPT 等 AI 工具来生成代码、提高生产力,所以必然要据此调整对人才的甄选思路。机器人就能解决的算法难题,在考察受试者时应当占据更低的比例和权重。相反,未来的核心技能也许是阅读并审查代码是否正确、贯彻最佳实践并保障安全性等能力。

    用代码审查替代 Leetcode 作为面试主体,不仅能帮助团队更好地对受试者做整体分析,更能强调其核心技能和团队协作表现等现实指标,为行业内软件构建范式的整体转变做好准备。


    返回网站首页

    本文评论
    直播电商“大考”在即,品牌和商家如何实现生意爆发式增长?_直播电商的兴起
    声明:本文来自于微信公众号新榜(ID:newrankcn),作者:Bamboo,授权转载发布。一年一度的电商大考就要来了。近日,各大平台纷纷启动招商,亮出压箱底的看家本事,打响了年终大促的发令枪...
    日期:10-01
    特斯拉Model S、Model X售价调整:最高降价7000元「特斯拉model x降价36万」
    特斯拉公司近日宣布,将对Model S和Model X的售价进行调整。具体而言,Model S双电机全轮驱动版的起售价将从698,900元调整为738,900元,而Model S Plaid三电机全轮驱动版的起售价...
    日期:09-02
    顺丰双十一期间速度「顺丰同城双11总单量超1.2亿」
    11 月 15 日消息, 2022 年“双11”大促已落下帷幕,顺丰同城配送总单量超过 1 亿 2 千万单。据悉,双 11 期间顺丰同城商超便利、果蔬生鲜等同城零售品类配送单量同比增长均超过1...
    日期:11-23
    法院认定证据不足:搜狐曝光优酷盗版被判败诉_优酷起诉PP视频
      记者从市一中院获悉,因宣扬优酷雇佣大量网友上传盗版内容,搜狐公司被判在其首页连续道歉3天。   优酷网的经营者——合一信息技术(北京)有限公司(以下简称合一公司)称,2009...
    日期:07-30
    法大大 ca「法大大举办2023年伙伴大会:AI赋能,建设生态2.0」
     “数智‘签’引,聚力共赢——法大大 2023 年伙伴大会” 10 月 13 日在深圳隆重举办。包括腾讯、德勤、PWC、安永、金蝶、致远互联、明源云、蓝凌、玄武、甄零科技、北森、...
    日期:10-20
    我想做充电桩生意「年轻人的充电焦虑,加盟充电桩解不了?」
    声明:本文来自于微信公众号锌刻度(ID:znkedu),作者:李觐麟,授权转载发布。排队、没空位、充不上电、余额不退款……相信不少电车一族都体验过为电奔走的辛酸。新能源车主如何解...
    日期:11-06
    AlphaFold 2最强竞品自拆台!Meta原地解散12人团队,9月或首发ChatGPT平替_alpha fold 2
    新智元报道编辑:桃子 好困【新智元导读】敢与AlphaFold 2叫板,终于做出点成就的ESMFold项目,说不干就不干了。就在今天,Meta解散了用AI预测近6亿蛋白质折叠的团队,以专注商业AI。...
    日期:08-08
    到底都有哪些国产的开源操作系统?「免费开源的操作系统有哪些」
    声明:本文来自于微信公众号 OSC开源社区(ID:oschina2013),作者:OSC开源社区,授权转载发布。老有人说国产的操作系统比用户都多,这里给各位老哥盘点一下国产的开源操作系统,包括但不限...
    日期:10-21
    梭子鱼荣获2019年9月Gartner Peer Insights 邮件安全类“客户之选”称号
      我们很高兴地宣布梭子鱼荣获2019年9月Gartner Peer Insights邮件安全类“客户之选” 称号。该称号对于我们来说有着特别意义,因为它是基于终端用户的反馈,并得到Gartner...
    日期:02-27
    国内成品油零售价将迎今年最大涨幅:加满一箱多花20.5元_国内成品油价格下调加一箱少花9元
    4月17日24时,国内成品油调价窗口将再度开启。受国际油价大幅攀升影响,国内油价也将结束连跌走势,预计本次涨幅可能达到520元每吨,成为2023年以来的最大涨幅。果真如此的话,今年油...
    日期:04-17
    蔚来手机在工信部完成入网,预计今年第三季度发布并交付「蔚来公司什么时候上市」
    IT之家 8 月 4 日消息,备受关注的蔚来手机近日已在工信部完成入网,型号为 N2301,申请单位为蔚来移动科技有限公司,目前暂未公布证件照。iphone 5c 停止更新在此之前,蔚来手机已经...
    日期:08-04
    抖音正式上线双11好物节 跨店每满200元减30元「抖音双十二活动」
    10月31日 消息:今天,抖音正式上线双11好物节。10月31日至11月11日,消费者打开抖音,在顶部商城栏即可进入“抖音双11好物节”专区。抖音商城推出了跨店每满200元减30元的活动,并...
    日期:11-05
    vivo X90s开售 3999元新机皇降临_vivo-x9s
    vivo X90s已经正式开售,8GB 256GB版本的售价为3999元,12GB 256GB版本的售价为4299元,12GB 512GB版本的售价为4699元。更新win11 失败蓝屏小米三款踢脚线取暖器该手机首批搭载了...
    日期:07-07
    斗鱼发布企业社会责任报告,2022年泛知识类内容直播时长超520万小时
    1月6日,斗鱼发布了《2022企业社会责任报告》(以下简称:《报告》)。谷歌人工智能研究院《报告》显示,2022年,斗鱼在打击网络暴力、处理侵权行为、整治违规主播及账号等领域持续发力...
    日期:01-06
    中石油原副总经理徐文荣落马 任职时年薪近百万_中国石油徐文荣调走
    ↑徐文荣。图据中石油网站哈啰假日狂欢节期间app日活突破1500万 增速超40元中国石油天然气集团有限公司原党组副书记、副总经理徐文荣涉嫌严重违纪违法,目前正接受中央纪委国...
    日期:06-25
    版权和稿费_知网去年支付版权费1.56亿,但数字出版稿酬标准尚不明确
    记者/查沁君   “知网为100%国有控股企业。”   据《光明日报》8月11日报道,知网副总经理兼新闻发言人肖宏称,知网下设“两司一社”——《中国学术期刊(光盘版)》电子杂志...
    日期:08-12
    2469元起!vivo S17手机开售_vivos7新款手机报价
    vivo S17已经开售,新品特惠30元,到手价2469元起。该机采用了“水镜云窗”设计,透明的镜头底座与机身结合,提供山海青、花海、玄黑三款配色。其中,“山海青”由“粒子水墨”工艺打...
    日期:06-17
    2023诺贝尔生理学或医学奖揭晓:mRNA疫苗 两人均分734万元_2021诺贝尔生理或医学奖
    快科技10月2日,瑞典卡罗琳医学院宣布,将诺贝尔生理学或医学奖授予Katalin Karik、Drew Weissman,以表彰他们在核苷碱基修饰方面的发现。谷歌被指追踪用户赔50亿美元瑞典卡罗琳...
    日期:10-02
    三星与游戏开发商合作 为其折叠屏手机打造独家定制游戏
    10月9日消息,据外媒报道,包括Epic Games和Krafton在内的游戏开发商已宣布与三星电子合作,为Galaxy Fold折叠屏智能手机打造独家定制游戏。据悉,三星Galaxy Fold于2019年2月正式...
    日期:10-09
    张兰称不再招聘低学历小野孩 认为心态会膨胀_张兰是不是没钱了
    最近,张兰团队前员工发文称因为薪资提成、加班加点等问题而离职并申请劳动仲裁的消息引发关注。报道称,张兰俏生活的运营飞飞发文称自己已于 4 月 3 日离职,并请求了劳动仲裁。...
    日期:04-11