百科问答小站 logo
百科问答小站 font logo



程序员面试,面试官更注重代码量、项目经验还是操作系统、数据结构这种基础课程?两者比例是五五开还是多少? 第1页

  

user avatar   su-wei-kai 网友的相关建议: 
      

既然你诚心诚意地问了,我就诚心诚意地回答。我在大厂干过几年。面试过的人,没有三百也有两百来号了吧。


先上图为敬。这是国内某厂的评估标准,我就拿这些评估标准来给你简单讲一下,面试官侧重什么。

候选人打分的标准满分是五分,从来不会打五分,一般来说非常优秀的同学会给打四分。必须要三分以上才可以见下一个面试官,嗯,有的时候候选人属于可要可不要比较鸡肋的那种,也会去跟下一个面试官商量一下,是否让他继续面下去。但我个人的习惯是,如果说觉得候选人可要可不要,或者说我比较犹豫的话,我一般是倾向于把他送走。


就你的问题,不能笼统地说面试官侧重代码量,还是基础知识,还是五五开。因为我没法考究你的代码量,但是你的项目经验,代码质量,基础知识这些是在有限的时间内考量出来的,后面我会详细说怎么考量。一般来说,第一面的面试官都会跟你聊一下比较基础的东西,比如进程之间怎么通信?死锁发生的条件是什么?聊完基础的东西之后肯定会有简单的手写算法。


第二个面试官一上来可能就不跟你聊基础的东西了,直接上来就跟你聊两三道技术的算法,接着会让你做一个系统的设计。


等第三面面试官上来时,可能跟第二面面试官差不多,但是他可能会再加一点综合素质的判断,比如你的沟通能力怎么样,对项目的把控能力怎么样?会深入的了解一下你过去做的项目技术难度是怎么样的?您在里面是什么样的角色?比如他可能会问你,你过去的项目有没有延期了?为什么延期了?你怎么处理这些情况?


我说的是一般的流程。有的面试官的也比较调皮,比如说他会问你一些非常基础的概率问题,比如问你一个小木棒砍两刀,形成三个小木棒,它们能组成三角形的概率是多少?还有的人可能会比较喜欢问智力问题,比如说赛马问题,以最少的场数能够,选出跑得最快的五匹马,等等诸如此类。


说到这里,你可能会觉得有的面试官不按常规出牌。但是面试官想考察的点其实是一样的。


首先是技术基本功。技术基本功最好的体现方式就是手写算法。你写代码的过程中,我是能够很清晰的看到你的代码的习惯,你的思路。最后你写完之后是不是自己的test case,还是说马马虎虎的就交卷了,这些细节都能够体现出一个人的工作习惯。


手写算法的时候,一般只要不是太缺德的,面试官上来都会给你热身一下。先出一道比较简单的题,然后再出一个follow up。接着下一道题,可能会难一点。一个小时比较理想的是考三道题,也就是说一道题是20分钟左右。


你看这个过程中对你的基本功,思维方式,还有你的交流能力,已经有一个大体的了解了。


接着是,系统设计能力。这个时候对一个人的能力考察其实是非常全面的,首先会看到你如何去理解需求,如何去界定问题的边界,还会看到你对问题分析的细致程度。接着你可能会谈到接口的设计,这个时候也能够看出你对业务的了解,还有你的工程能力。然后到了大的架构设计的层面,你对不同的组件之间怎么选型,怎么折中?如何保证它的扩展性,可用性,还有它的性能?还真的挺能体现一个人聪不聪明,考虑问题是否周到,还有他的经验怎么样。


你看这么一个系统设计的过程,大概也能够了解到,你的工程能力,沟通能力,业务建模还有设计系统的能力。


最后也会聊一聊,你过去做过的项目,你是在项目里面是什么样的角色?这个问题也分几个层次吧,首先,看你对某一个技术是否会用,在会用的基础上怎么用好,他的最佳实践是怎么样的。在可以用好的前提下,是不是又能够深入的了解它的原理?你看一个项目也是可以聊出很多门道的吧。一般面试官上来会直接问你,你过去做的项目的难度是什么?怎么优化?他们这么问的话一般比较直接,但是核心想考察的点也是我上面说的这些。如果你能碰到我面试你的话,我会先考察比较简单的,,下一个问题跟上一个问题,一般都是有承接关系的,过程比较平滑。面试的人不那么痛苦。


最后给大家看一个面试过程,可以了解到面试官心里想什么



最后

  1. 如果对您有帮助,点赞让更多人看到
  2. 关注 @凯威讲堂 关于学习、升学和就业的问题都可以私信我
  3. 关注公众号「凯威讲堂带你上岸」,第一时间了解内容更新




  

相关话题

  从语言学的角度,为什么拉丁字母比汉字更适合编程语言? 
  数学建模竞赛要不要和喜欢的女生组队? 
  微软内部有哪些类似 Jeff Dean 的大神? 
  软件服务提供商通常会通过什么技术手段限制特定地区的使用? 
  有哪些明明是 bug,却被说成是 feature 的例子? 
  如何判断一个人的技术是否成熟? 
  朋友自杀前把名字改成了nullptr,是什么意思? 
  你遇到过哪些奇葩的变量名? 
  有哪些看起来很简单证明起来却很难的问题? 
  如何反驳“代码混淆只是降低了可读性,安全性并没有得到实质提升”的观点? 

前一个讨论
你见过最让你无语的cos是怎样的?
下一个讨论
目前(2014年5月),哪个云同步盘(不是云盘)最好用?





© 2024-11-09 - tinynew.org. All Rights Reserved.
© 2024-11-09 - tinynew.org. 保留所有权利