V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hakunamatata11
V2EX  ›  推广

我写了个 bug,谷歌面试官却说:你通过了!

  •  
  •   hakunamatata11 · 2020-11-11 18:26:52 +08:00 · 661 次点击
    这是一个创建于 1266 天前的主题,其中的信息可能已经有所发展或是发生改变。

    谷歌的 slow hiring 导致今年岗位放开时间较晚,很多同学最近才陆续拿到 offer 。

    一边有人反馈面试bar 拔高,算法偏难、加试普遍;也有人却说写了个 bug,依然过了面试...

    不少面试者有此疑问:Coding 面试中出现 bug,是不是就凉凉了?

    答案是,**不一定!**最顶尖的工程师也很难在面试中一次性做到 bug free,所以通常面试官不会因为代码出现 bug 就挂掉你的面试。他们往往更注重考查:

    是否能够意识到有 bug

    是否知道如何识别和修正 bug

    我写了个 bug,面试官根本不 care

    Coding 面试实际上就是个示例,主要为了考察求职者的编程能力,所以不要求严格意义上的 bug free

    如果写出 bug,但自己跑过 test case 后改正了,一般也不影响面试通过。

    来源:1024bbs

    再比如这段 Java 代码:

    第 2 行中有一个“大” bug,应该写 add,而不是 insert 。

    但大部分面试官并不会吹毛求疵,他们会通过这个代码示例推测:面试者可能不会使用内置的链表类。这一点,面试官有可能根本不 care 。

    零容忍的 bug,写完直接挂!

    不过有些短板,可能是致命的,直接让你 fail 掉面试。下面这段简单的代码一共出现了 4 个问题:

    1. 如果数组为空,此程序将在第 2 行崩溃。 2. for 循环开始于 i=0,但没有必要,应该在 i=1 开始。 3. for 循环的循环条件为<。长度,每次都要提取数组长度,增加步骤。 4. 第 4 行为>。不好

    这种情况下,面试官可能会认为:面试者会写代码,但不常写(因为问题 3 )。而且连这样一个基础的 for 循环程序也写不好,简直不靠谱!

    以下是面试中的一个真实代码:

    这段代码就不仅仅是粗心的问题了,它根本毫无意义。想通过面试几乎是不可能的!

    面完自我感觉良好?你清醒点吧

    好些人在面试过程中自我感觉良好,但却收到了拒信。他们或许很惊讶:我写的代码“完全正确”怎么会被拒呢?

    来源:1024bbs

    事实上,仅仅有正确度(做出题目)是不够的!

    面试当中,被考察的能力是方方面面的:可能是你的技术知识、代码风格、模块能力、严谨能力等

    虽然你在一个题目上做到了 bug free,但如果你在 coding 过程中不小心暴露了你薄弱的分析能力和 coding 技能,也逃不过面试官的“火眼金睛”。

    如何提升 coding style 和做到 bug free

    在日常 coding 中,培养良好的 coding style 可以帮助你避免面试中不该出现的 bug 。推荐一些资料:

    ##1. Google Style Guides

    谷歌只有一个代码仓库,源代码都放在自行开发的版本管理系统 Piper 中。如此庞大的代码库,没有统一的代码风格,阅读起来是相当困难的。

    因此,内部必须遵循《 Google Style Guides 》,而它的代码风格也被业界默认为标准。

    ##2. 九章算法班 2020 版

    刷题超过 3000 道的令狐冲老师,在《九章算法班》中强调过,想拿到大厂面试的 hire 和 strong hire,良好的代码质量是基本要求。提升 coding style 的途径有:

    • 避免冗余的注释
    • 代码分组
    • 干燥原则
    • 拒绝深度嵌套

    更具体的构建优秀 coding quality,欢迎来试听令狐老师近期新改版的**《《九章算法班戳我即可报名免费试听前四章**~

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1876 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 00:41 · PVG 08:41 · LAX 17:41 · JFK 20:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.