- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
从面试官角度讲解程序员面试什么最重要
从面试官角度讲解程序员面试什么最重要
程序员面试一直是社区乐于讨论的热门话题。 自己从06年实习以来 ,先后经历了4家软件公司 ,
全部是外企 ,其中有世界500强的通信企业 ,有从事期权期货交易的欧洲中等规模的金融公司 ,也
有为大型汽车制造商开发A ndro id智能汽车的新兴公司。跨入IT 行业以来 , 在求职过程中经历过多
次面试 ,最近两年也有过多次面试别人的经验。 感觉现在到了对这个问题发表自己看法的时候 ,
这篇文章是 站在面试官角度对于程序员面试问题的一个阶段性反思和经验总结。
目标
相信和不少朋友一样 ,有了几年工作经验成为Senio r后就开始了面试别人的经历。 在最初这个阶
段只是按照自己的想象把”找到基础好的程序员“ ,”找到算法能力优秀的程序员“ ,”找到有A ndro id开
发经验的程序员“等作为面试的目标。但是 ,实际的经历告诉 ,尤其是按“基础好” ,“算法好”这些
目标招到的人最终效果并不好。比如 ,有的面试者基础知识和算法掌握情况不错 ,进程、线程、内
存等概念清晰 ,基本的Hash ,二叉树 ,快速排序等数据结构和算法也比较熟悉 ,但是进公司后在实
际工作中表现得很糟糕。后来 , 才发现原来是 的面试目标出了问题 , 原先的面试方法更像是
大学的算法或操作系统期末考试 ,按照这种方法让许多并不合适的人通过了面试 ,同时也可能错过
了许多合适的人。
后来 , 的反思是 ,从公司的角度讲 ,面试的根本目的是找到” 能够干好工作“的人 ,而“高学历” ,“
算法好” ,“基础好” ,“有经验”这些都是表象而不是根本 ,它们并不能直接和“工作好”划等号。
方法
目标明确了 ,但接下来的问题是假设面试者是一个黑盒系统 ,“工作好”不是直接可观测变量 ,你所
能直接观测的变量是基础、算法、经验、学历、性格、谈吐、年龄等等。所以 ,实际上 ,你只能从“
基础好” ,“算法好”等可以直接观测的量去推测“工作好”的概率 ,这就是一个在“X好“条件下”工作好“的
条件概率问题 :P(工作好 | X好)。
根据这个模型 ,面试所应该考察哪些方面就很明显了 ,那就是选择那种最具有区分性的方面来考察
。比如 ,考察面试者的体型特征没有太大意义 ,因为P(工作好|高) ,P(工作好|矮) ,P(工作好|胖) ,P(
工作好|瘦)的概率都差不多;所以 ,体型特征不具有区分性 ,这不是面试所应该关注的内容。
面试官应当结合职位的要求明确 哪些因素具有比较好的区分性。比如 ,如果要招一名技术门槛比较
高的3D游戏引擎开发工程师 ,面试者A具有3D游戏引擎开发的经验 ,但是在基础知识和算法面试
方面表现一般;面试者B相反 ,基础知识和算法面试表现很好 ,但没有游戏开发经验 ,而你只能选择
其一。你选谁呢?其实 ,这就是两个条件概率问题P(工作好|经验好 ,基础一般 ,算法一般)和P(工
作好|没经验 ,基础好 ,算法好)。这个问题就留给面试官来判断了 ,就 个人而言 ,对于技术门槛较
高需要技术积累的职位 ,经验更加说明问题 ,因此 , 更倾向于面试者A 。
下面 , 再结合自己的经验谈谈对面试中常见方面的看法。
算法
算法是 oogle和MS等大公司面试所重点考察的内容。 个人很喜欢算法 ,曾经参加A CM/ICPC拿
过北京赛区的13名。但是 ,就个人经验来看 , 所接触过的绝大多数开发职位而言 ,算法都不适合
作为考察面试者优劣的主要因素。对于普通的非算法性开发职位 ,考察面试者的算法就相当于考察
他打乒乓球好不好一样 ,与目标“工作好”的相关性太低。就 个人的经验来看 ,差不多P(工作好|算
法好)=50% ,也就是算法面试没有太大的区分性。
甚至 ,还有一种很不好的情况特别多地出现在算法好的面试者身上 , 称之为“只磨刀 ,不砍柴”。什
么意思呢?有类人只对什么A *算法 ,异步编程 ,JV M类加载机制这种纯技术问题感兴趣 ,对实现用
户需求毫无兴趣。这类人看起来有一定的技术能力 ,但是对公司来讲贡献十分有限 ,甚至不如技术
一般但认真负责的人。所以 ,一旦遇到面试者算法好 , 就特别留意考察会不会是这种“只磨刀 ,不
砍柴”的人。
另外 ,虽然 个人不了解 oogle和MS ,但 对于其特别重视考察算法能力的面试策略是持怀疑态
度的。即使在这样的世界级大公司 ,算法虽然重要 ,但可以想象在项目实施过程所遇到的各种各样
问题中 ,算法问题绝大多数时候不会是主要瓶颈 ,没有到那种需要每个人都是算法高手的情况。实
际上 ,绝大多数项目真正难点并不是一两个算法瓶颈 ,
原创力文档


文档评论(0)