写点什么

资深技术面试官吐槽:我“骄傲”地招了一群“谷歌”程序员

  • 2022-07-14
  • 本文字数:2608 字

    阅读完需:约 9 分钟

资深技术面试官吐槽:我“骄傲”地招了一群“谷歌”程序员

很久以前,我是一名技术面试官,在一家公司负责招聘程序员。我有一套简单、清晰、聪明的招聘计划(虽然这不是我原创的)。首先,候选人需要先回答一大堆问题,然后再做一些编程任务。他们在一张纸上写代码,就像我们在大学里做的那样。


现在回想起来,我发现这个招聘流程真的很有效。我们招的候选人都成为了当地 IT 界有名的专家。他们中超过一半的人很早以前就在各个领域建立了自己的 IT 业务。


但也正是这种辉煌的经历让我开始膨胀了。我决定对招聘计划做出一些改变,我认为这一切都是我个人的成就。我是一个很棒的技术面试官!


改变


我做了一个非常简单的改变——让候选人在电脑上写代码,而不是在纸上。我想:“为什么他们要坐在那里在纸上涂鸦,就好像在古老的修道院里写手稿一样?”我自己已经忘记了在没有 IDE、上下文提示、调试工具的情况下写代码是什么感觉。


于是,我给了候选人一台电脑,并交给他们一个编码任务,让他们在半小时到一小时内完成。等我回来时,就看到了已经完成的解决方案,而且非常棒——代码写得很漂亮,优化得很好。这让我大吃一惊——现在的程序员如此崇拜技术,以至于对他们来说写代码就像呼吸一样!


我录用了这些人。


最初的表现


一开始,一切都很顺利。我对他们的工作生产力进行跟踪,他们掌握新技能的速度连连另我感到吃惊。在过去,新工作的前几个月对新员工来说都是一个挑战——他们能够为学习任务写一些代码,但几乎无法应对真实的工作任务。但对于我招进来的这些人,我没有看到他们有这样的问题。


他们轻松地完成了简单的任务,然后我给他们安排了更复杂的任务——那些需要一年经验的人才能完成的任务。你猜怎么样?他们在没有帮助的情况下完成了这些任务!我既震惊又兴奋。新一代程序员正在成长!


我以为会一直这样。我的意思是,我希望他们的生产力能保持目前的增长速度。但事实是,我想多了!


平台期


3 到 6 个月后,他们的工作生产力进入了平台期。不幸的是,由于新冠疫情的影响,他们都开始远程工作。我也待在家里,仿佛被吓坏了。


时间流逝得飞快,一个月又一个月,但他们的生产力始终没有提升,就好像他们永远无法突破实习生的水平。他们有时会出现生产力极值,但这很容易解释:大量简单、单调、相似的任务。我在跟他们沟通的时候一直抓狂,大喊大叫。


我认为这跟远程工作有关,因为我很难对他们施展我的个人魅力。他们可能是因为缺乏动力,缺乏现场交流,甚至是因为没有人偶尔把他们胖揍一顿。此外,高管们也似乎跟我有同样的看法,问了我诸如此类的问题:“生产力增长停滞是因为远程工作吗?”当然,我回答是的。等我们回到办公室,生产力就会直线上升!


回到办公室


我们在 8 月份回到了办公室。我们有很多事情要做,唯一缺的是时间(在我们远程工作时,很多任务都没有完成)。我看了看绩效——没有增长……该死!我不得不撸起袖子,亲自着手解决这些问题。


我开始为他们提供帮助。解决不了问题?让我来。我会走过来坐在你的椅子上帮你完成任务。你就坐在我旁边看着我怎么做。


然而,他们有很多人,而我只有一个。我意识到这行不通,我必须解决问题的根源。我决定回到源头——技术面试。


重新面试


我不再要求他们在纸上写代码——我只是坐在他们旁边,给他们一个任务,让他们试着去实现。我曾计划进行一系列测试,从最基础的开始,然后逐步提高难度等级,但最后只停留在基本的任务上。


事实证明,只有十分之一的人知道如何使用基本的实体、类型,并知道它们的属性和方法。更糟糕的是,只有 2 到 3 人在使用了内置的辅助工具的情况下才完成了任务。他们就是找不到属性和方法,更不用说使用它们了,他们甚至连最基本的任务都完成不了。


只有一个人敢问我:“可以用谷歌吗?”就在那时,我——这个白痴——终于醒悟了。


“谷歌”程序员


就像有人用一袋面粉砸了我的头,我花了两天时间来消化这种疼痛感。这怎么可能呢?他们在第一次面试时给我看的那些漂亮、优化良好的代码来自网上。最初几个月生产力的爆发式增长是因为他们在网上搜索解决方案。这些家伙给出的神奇答案是在网上找到的。


他们写代码不求甚解,连最基本的结构都不去了解一下。不,他们没有写代码,只是下载了。不,他们甚至连下载都没有,下载代码起码要运行“npm i”之类的命令。他们只是复制粘贴了代码,却不知道为什么要那么写。


这就是让我感到恼怒的地方。我理解你们到网上去弄清楚新技术的工作原理,或者当你们需要使用一些奇特的特性时不希望让不必要的信息造成认知负担。但是,你怎么能无脑地从网上复制粘贴最基本的代码呢?


你想知道他们说了什么吗?他们说:“这有什么大不了的?”这让我感到痛苦万分,或许修道院才是我的归宿。我消停了一下,不再和他们说话。我蜷缩进了自己的世界里,并开始反思。当然,我知道这与他们无关,我自己才是问题所在。


他们只是在遵循他们自己世界里的法则。是我傻,我没有看到这些法则——我不了解它们,没有意识到它们的严重性。这就是肤浅要付出的代价!


肤浅的代价


在我上大学的第一天,我们聚集在学院的大堂里。一位兼任副院长的老副教授告诉我们:“大学不教你们知识,而是教你们如何自己获得知识。”


我很幸运,我是在 2000 年左右上的大学。我从图片上了解互联网。如果你想了解 C++,那就坐下来,这里有学习 C++的材料。如果你想写一篇关于表面粗糙度测量的论文,就去图书馆看书,然后开始写你的论文。如果你想做一场关于历史的演讲,那就去读期刊吧。是的,你需要一本接一本地读,直到找到需要的文章。


不幸的是,“谷歌”程序员没有那么幸运。他们随时随地都能获得任何信息。他们已经学会了如何快速找到这些信息——无论是卖饼干的商店地址、打折的裤子还是生成查询代码。


书上说:大脑会形成并强化人们经常使用的神经元连接。如果你一直写代码,就会做得越来越好。如果你经常在网上查找信息,就会掌握这项特殊技能。如果你一直从网上复制代码,就会成为这方面的大师。


然而,并不是所有的代码都会被开源出来,所以就会出现平台期。“谷歌”程序员的生产力并不是对编码技能的衡量,而是对从网上复制代码技能的衡量。就像下载速度一样。大约 15 年前,你要看电影必须先下载,而如今,只有老一代人会这么做。


有时候,“谷歌”程序员可能会超过普通的程序员,至少在解决普通标准的任务时是这样。但与此同时,我们也会形成使用基本对象、类型和编程语言构造块的神经元连接。


这对我来说是一件很糟糕的事,可耻的人是我。


另外,请重新面试你的程序员吧!


原文链接:https://pvs-studio.com/en/blog/posts/0952/

2022-07-14 11:471775

评论

发布
暂无评论
发现更多内容

在微前端中,antd icon createFormIconfontCN 的本地化问题

blueju

大前端 antd umijs

区块链农产品质量安全溯源平台--全流程上链

13530558032

智慧政务,区块链电子证照平台的解决方案

13828808769

#区块链#

「免费开源」基于Vue和Quasar的crudapi前端SPA项目实战—环境搭建 (一)

crudapi

Vue nodejs crudapi quasar SPA

Baas是什么?区块链Baas平台开发解决方案带你知晓

源中瑞-龙先生

区块链 开发 解决方案 Baas

浅谈一个优秀的 Android SDK 需要具备哪些要点

神策技术社区

android 数据采集 sdk 神策数据

SARIF在应用过程中对深层次需求的实现

华为云开发者联盟

DevSecOps 元数据 SARIF 软件安全 规则

Python OpenCV 美女换装,图像处理取经之旅第 19 天

梦想橡皮擦

Python OpenCV 4月日更

【LeetCode】删除有序数组中的重复项 IIJava题解

Albert

算法 LeetCode 4月日更

架构实战营 模块一 为何架构设计能力难以提升

9527

图尔兹与达梦数据库达成全面战略合作,共筑国产数据库新生态

BinTools图尔兹

数据库 数据安全 操作数据库

Thrift 学习笔记

U2647

Thrift 4月日更

“智慧旅游”:区块链能否驾驭文旅行业?

电微13828808271

智慧公安

私有依赖的打包与上传

blueju

JavaScript 大前端 npm

第 0 期架构训练营模块 1 作业

架构实战营

京东云智臻链开源两周年,JD Chain领跑国内自研区块链技术

京东科技开发者

区块链

Ubuntu 鼠标手势软件 -- EasyStroke

TroyLiu

Linux ubuntu 效率 快捷键 鼠标手势

生活中的这些难题,数据库开发者可为你解决!

华为云开发者联盟

数据库 开发者 华为云 GaussDB(for Redis) Redis Stream

【架构实战营】第1模块作业

swordman

架构实战营

尤雨溪:Vue 3 将不会支持 IE11 了

清秋

翻译 Vue 4月日更 IE

Kubernetes中的CI/CD

倪朋飞

Kubernetes DevOps CI/CD

区块链医药溯源解决方案--助力药品溯源

13530558032

LiteOS内核源码分析:任务LOS_Schedule

华为云开发者联盟

操作系统 函数 LiteOS 调度 LOS_Schedule

“区块链+电子证照”,推动数字化经济建设

电微13828808271

区块链+ #区块链#

架构实战营模块1作业

季节风myy

Git 技巧11条,离大神又进了一步,嘿嘿

Java小咖秀

git 程序员 开发工具

通俗易懂数仓建模—Inmon范式建模与Kimball维度建模

五分钟学大数据

数据仓库 维度建模 4月日更 范式建模

区块链药品防伪溯源平台搭建,区块链防伪溯源的解决方案

13828808769

#区块链#

「架构实战营」作业#1

高亮

封装一个jQuery的$方法

空城机

JavaScript jquery 大前端 4月日更

Pod 的状态

耳东@Erdong

容器 4月日更

资深技术面试官吐槽:我“骄傲”地招了一群“谷歌”程序员_文化 & 方法_nmivan_InfoQ精选文章