- 相关推荐
程序员面试技巧和注意事项
求职:程序员应聘时的七大技巧和注意点
第一、基础很重要,不要生疏了。
不管应聘什么开发岗位,基础永远是最重要的。IT业不停地在炒作新概念,昨天是SOA,今天是云计算。我们永远不知道明天流行什么,但是只要有踏实的基础,辅以较好的学习能力,要跟上步伐也不会太难。
所以绝大多数公司都会特别看重应聘人员的基础能力,比如编程语言本身的特性、基本的算法和数据结构、进程间通信等等,毕竟这些具体技术问题有客观的答案,而且在各具体行业都是相通的。
工作三年以上的人,往往都习惯了“拷贝+修改”式的工作,用不到的基础知识基本上都忘掉了,一到应聘的时候就难免眼高手低,总是抓不住机会。
而事实上,技术基础即便是遗忘了,也是可以很快捡起来的。如果你确实忘了很多基础知识,那么参加面试的前夜,花点时间把大学里的课本再翻出来看看吧。似乎很土的方法,但确实是有效的。
第二、要关注技术前沿。
不管做任何工作,如果只顾着低头做事,而不晓得抬头看天。那么不管做多久,自身的水平总是停留在毕业时的水平;如果基础又忘记了太多,那还不如毕业生。
关注技术前沿,并不是要求跟进每一个新技术,而只需关注目前主流媒体经常宣传的一些新技术、新思想。关注这些技术前沿的动向,并能将他们与自己从事的工作联系起来作一些深入思考,那么这是向面试官宣扬你的学习能力的一种好办法。
第三、小公司比较看重知识的广度,大公司更看重知识的深度。
如果你想去一些小公司工作,那么由于他们人少,分工没那么细,所以他们大多喜欢知识面广的应聘者——你会听到更多的“怎么做”。对于应聘这样的公司,你可以着重培养知识的广度,比如做网站后台开发,最好也能js、css、apache、mysql都懂一些,能独自搭建一套完整的网站,这样去很多小公司难度都不太大。但是由于个人的精力总是有限的,所以要注意不要铺得太开,重点还是在后台开发本身。
而大公司由于分工比较明细,所以往往更喜欢考量重点知识面的深度——你会听到更多的“为什么”。所以平常解决问题时,不要光搜索一把解决了就完了,还需要仔细研究各种问题的来龙去脉,并能分析总结,将这些收获系统化、理论化。
当然,广度和深度的需求不是绝对的,一个优秀的开发人员应该对至少一到两个专业领域有着深入的了解,并熟悉其他相关领域,也就是所谓的一专多能。
第四、良好的简历设计可以为你的应聘加分。
社会应聘的简历往往比校园应聘的简历写得随意,因为有工作经验的人往往认为面试官会更看重他的工作经验,而不是简历格式。其实不然。
大多数简历只会出现在面试官面前10秒到1分钟不等。这个短短的时间内,如何让你脱颖而出?这个方面有很多的攻略,我只说重点建议,不解释原因。
一是简历要突出优势,而不是描述经历。比如出身名校、就职过名企、参与过著名项目、拿过大奖,这些比较客观的优势要重点突出。如果你没有UI的功底,那么简单地放大加粗也可以达到效果。当然有些公司只接受文本型简历,那就设法加一些特殊符号吧。
二是技术简历减少模糊化的语句,最好能数字化。例如项目代码量,维护的数据量,网站的访问量,请求平均耗时等等。
三是简历要能结合应聘岗位做一些匹配的修改。撇开招聘网站通用的简历不谈,如果你明确对一个特定公司的特定岗位投出简历,那么你有必要把跟对应岗位无关的内容弱化,并强化跟其业务相关的内容。如果实在行业差别太大,那么表达几句对其行业的见解和兴趣也是可以的。
第五、要有积极的沟通意识。
优秀的面试官会激励应聘者讲他原先工作的内容,并从而评估出应聘者的能力水平。但隔行如隔山,绝大多数面试官会慢慢将问题引向自己熟悉的领域——这往往又是应聘者不太熟悉的领域。这就要求应聘者能积极分析面试官的兴趣点,并将自己相近的特长表现出来。一种可能的引子是这样:“唔,你问的问题我并没有直接遇到过。但是我做的XXX系统也许跟你的这个问题有些关联,你有没有兴趣听一听?”有哪个面试官会回绝你呢?
面试管也许会故意问一些模糊的问题来混乱你。但是不要怕,多问几个问题,定位清楚他的意向再简明扼要地回答一下就好了。
如果跟面试官有了意见冲突,也尽量不要再同一个问题上纠缠。那也许是故意制造的陷阱——看看你的团队意识。应聘者需要明白的是,在面试场合中不要妄图“战胜”面试官,即便是碰上一个期望“战胜”应聘者的面试官。
第六、要有良好的表达能力。
没有哪个面试官喜欢啰啰嗦嗦说了半天还是没说到点子上的应聘者,所以要尽量简明扼要地回答问题,除非面试官确实表现出对具体细节的兴趣。
回答问题时注意面试官的情绪变化,一旦他表现出任何想打断的意愿,立即一句话结束这个话题。
有些比较复杂的问题,可以先思考十到二十秒钟,因为一旦开口就没有思考的时间,话多的人不容易收住话题。
跟学校考试不一样,大多数主观性问题并不要求应聘者一二三四说得滴水不漏,能说到大部分关键点就是可以的了。
另外注意,各种技术术语不要搞混了。搞不清楚的理论概念,不如不说。免得面试官听到个术语就拉出来穷追猛打,把自己问挂。
第七、自信。
大多数做技术的,平时都信心满满,一到应聘的时候却总觉得自己不懂的东西还太多。回答问题时声音太小,或者畏畏缩缩用很多“可能”“也许”“大概”。
这个不一定影响你的录用,但是不自信的表现无疑会影响在跟HR谈薪水时候的议价能力。所以,无论如何,应聘的时候表现得轻松镇定一些,还是很有好处的。
当然,自信和自大之间往往只有一线之差。千万小心,不要过度地表现自信搞成了自大,因为HR往往对这一点非常敏感。
如果你只是要谨慎地表现自信的话,我觉得回答问题时面带微笑就够了。 最后需要特别提醒的是,以上种种其实只不过是应聘时的技巧和注意点而已。职业规划需要有长远的眼光和坚持不懈的学习。台上一分钟,台下十年功。真正的实力还是要在平时工作和学习中进行积累。
程序员面试注意的事项
作为面试官,在面试程序员时,都会关注哪些问题?而程序员应该从哪些方面做好面试的准备?本期话题相信对面试官和程序员都会有所启示。 刘秋伟 深圳市万兴软件有限公司研发总监
与其他岗位相比,程序员相对来说会内向一些,思维也会更严谨、更有个性。企业招聘程序员就是要求他能和团队一起完成既定的开发任务,所以重点从技能水平、学习能力、团队合作及工作心态等几个方面考察程序员。
技术水平是对程序员最基本的要求,很多企业会通过笔试来辅助考察。技能的考察主要看面试者技能匹配度、对技术发展趋势的了解以及自己的职业规划。
1. 你认为自己最擅长的技术是什么?
2. 谈谈你对XX行业/技术发展趋势的看法?对最近XX技术问题发表下你的看法?
3. 在五年的时间内,你有什么样的职业发展规划?
技术快速更替,员工的求知欲和学习能力比他现在的技能更为重要。宁愿招聘一个学习能力很强的员工,也不要一个靠吃老本、不愿学习的员工。
1. 你最近有看哪些书或参加过什么样的培训?有灌技术论坛的习惯吗?
2. 今年有什么学习计划?今年有什么目标?
3. 研究过开源项目吗?有什么收获?
在现在的软件开发中,已经没有所谓的“孤胆英雄”,项目主要靠团队合作来完成,而团队合作能力可以通过考察以往项目,来了解面试者对团队的理解、遇到问题的解决思路等。
1. 你做过哪些项目?最成功的是哪个?为什么?
2. 辛辛苦苦工作半年的项目失败了,你怎么办?
3. 评价下你过去的团队?你喜欢在什么样的团队中工作?
4. 你的业余爱好是什么?
招聘新员工,需要了解面试者对工作的心态和价值取向,并且与他沟通公司的企业文 化。如果你所在企业需要快速发展,有高强度的研发任务,而他想找一份轻松的工作,可能就不是很合适了。
1. 为什么选择离开上一家公司?
2. 有了解过我们公司的产品/服务吗?
3. 你对加班的看法?你家人或朋友抱怨你加班怎么办?
4. 如果在试用期发现你技能不符合要求,该怎么办?
最后,技术人员的有效沟通能力也非常关键,特别是对问题的分析和说明,所以在整个面试过程中你要观察面试者的分析思路,对问题重点的把握以及表达。经常有一些滔滔不绝、 但不知所云的面试者,让人非常头疼!
蒋建华 北方跃龙项目经理,微软最有价值专家(C#MVP)
第2/6页
程 序员的能力分为两种:技术能力和非技术能力。
技术能力包括编码能力、系统分析与设计能力;非技术能力包括写作能力、沟通与协作能力、组织与管理能力等。而 根据程序员的能力水平,可以将程序员分成初级、中级、高级三个级别。因此,在面试过程中我会针对初级、中级、高级程序员三个级别来提出不同的问题。
在技术能力方面,重点考查初级程序员的编程能力、中级程序员编程能力并兼顾系统分析的能力、高级程序员的系统分析与设计能力。在非技术能力方面,重 点考查初级程序员的沟通与协作能力、中级程序员的写作能力(主要指编写技术文档,如需求分析文档、用户手册、部署手册等)、高级程序员的组织与管理能力 (如指导、协助中级程序员进行问题分析和开发)。
在面试时,程序员首先要将自己的技术能力展现出来,以一种交流的心态去面对,不要紧张,要有自信,即使面试失败自己也要下去总结失败的原因,找到技 术弱点加以弥补;其次,面试中遇到不会的问题要讲明自己的思路,因为有些问题不是考你的编程能力,而是逻辑思维的能力;最后,对照程序员能力模型进行自我 分析与评价,做好职业规划,不断学习,提高自己的编程能力和抽象思维能力。
以SQL Server为例,我来分享一下面试时常问的一些技术问题。
1. 聚集索引和非聚集索引有何区别?应该怎样使用?
2. SQL的一张表中有一个自增的ID字段,但是现在不连续,写一条SQL语句取出某个位置到另一位置(如50~60)之间的数据。
3. 如何判断和防止SQL注入?
4. 如何对海量数据进行处理?
第3/6页
第1题考查基础知识;第2题考查SQL语句的编写能力和技巧,属于初级程序员的问题;第3题考查SQLServer的安全性,属于中级程序员的问题;第4题考查SQLServer的性能,属于高级程序员的问题。通过这几个问题可以判断出应聘程序员的数据库水平。
毛颖 法国CAPS公司销售工程师
从个人经历来说,我会对以下五个问题比较感兴趣。
1. 请说出3个你觉得至今都没有算法可以解决的问题。
这是一个开放式问题。从回答中我们可以了解到被面试者的思维方式和思维敏捷度,而这两点是一名优秀程序员不可或缺的。我预料一般有两类回答:第一, 学术类,比如有人会说一些关于寻找质数之类的现在还无法解决的问题;第二,生活类,我比较期待这一类有意思的回答,如果被面试者可以结合一些现在的社会现 象作出回答,也可以从另一个角度反射出其社会属性。
2. 请从技术角度谈一下《黑客帝国》的观后感。
同样又是一个开放式问题,完全没有所谓的标准答案。《黑客帝国》是程序员的必看“教材”,整个故事最精彩的莫过于构思。我觉得能具备这样的构思能力 是程序员的最高境界。那么从技术角度,对于这个构思的框架搭建以及实现等,我想听听程序员的不同理解和实现方法,从侧面了解他们的潜在创造能力和对身边事 物的建模能力。
3. 你比较偏向于把程序员比作翻译、建筑师还是设计师?
问这个问题的目的是看你怎样理解程序员这个职业。一个人对自己职业的认识以及定位将直接决定其在这个职位上的积极性和创造能力。我的答案是程序员既是
第4/6页
翻译,又是建筑师,更应该是设计师。并且随着这三个职业的排序,正是我认为的程序员职业能力升华台阶。
4. 请设计至少两个不同的算法解决将一个蛋糕平均分为6份的问题。
比较实际的专业能力题。这是一个既简单又综合的考验。除了对程序员这个职位的正确认识之外,实际操作能力毕竟是影响今后实际工作的第一要素。这道操作题,考察应聘者对问题的思考,以及分析能力和解决问题的动手能力。
5. 比较一下这两个算法,你觉得哪个更好,依据是什么?
比较算法,还是考察的专业能力,目的是看你怎样判断一个算法的好坏。对这道题,没有接受过专业训练的应聘者应该无法给出全面且科学的分析。并且请他们评论自己设计的算法,也是对自我认识的一种衡量。
李颜杉 某外资人力资源顾问公司猎头顾问
程序员的概念有点宽泛,为更有针对性,我主要分
享对“网络程序员”的观点。简言之,我们主要关注面试者的硬条件、软条件两个方面。
硬条件是指学历、技术经验、语言等能直接呈现的能力。技术是实在的东西,有就有,没有就没有,由不得半点浮夸。
我们比较感兴趣的问题如下。
1. 做过什么:是写代码、设计还是架构?
2. 做成功过什么:是大型的平台吗?其特质如可扩展、高并发、交互式。
第5/6页
3. 擅长做什么:使用的编程语言是哪种?使用经验有几年?
4. Debug的经验,遭遇什么复杂的问题(需例证其复杂性)?
技术面试的后续往往是笔试或上机,比如,在所有你使用过的DesignPattern中,请解释对比其中两种,如CommandPattern和 VisitorPattern(可以文字回答,也可以画图)?DOMparser与SAXparser的区别在哪儿?什么情况下采用DOMparser而 不是SAXparser?大家在面试之前可以Google一下类似的题目。 如果面试外资公司,需要英文达到流利读写的水平。因为项目的完成往往需要协同全球多个国家的同事,如果缺乏英文技能,在外企的发展是比较受限的。计划今后进入外资公司的朋友,一定要加强练习。
软条件是指性格、兴趣、职业规划等非直接呈现的能力。公司对于程序员一般会看重两种性格特质:爱技术、乐分享。
“爱技术”的人才会自发的钻研,不浮躁,也才会在这一行做得长久。对于这点,面试官可能希望了解你工作之外喜欢做什么。我听到过很多分享:经营自己的博客或者技术论坛;尝试新技术、新设备,学习新技术是一种乐趣而不是负担;当然,下次你可以说你平时喜欢阅读《程序员》。
“乐分享”的人才能带动团队整体进步。对于这点,面试官可能希望了解你在团队中是什么角色。有的人可能讲我是Mentor,我们遇到技术问题时要内 部讨论,我往往是能给出solution的人,所有人都解决不了,我们会求助于互联网——说明你不只愿意分享,而且有东西可以分享。
以前曾在面试中听说,程序员是青春饭,3~5年之后一定要转做Manager。我觉得职业发展一定要切合自己的性格,并不是每个人都很享受并善于处 理人事管理。有的资深开发人员转成Manager几年之后,又转回纯技术
(IndividualContributor)。而资深技术人员对于公司是非常 宝贵的财富,不管从受重视程度、薪资福利待遇都是非常有吸引力的。
【程序员面试技巧和注意事项】相关文章:
面试技巧和注意事项05-10
销售面试技巧和注意事项04-22
银行面试技巧和注意事项03-01
hr面试技巧和注意事项05-10
客服面试技巧和注意事项03-30
升职面试技巧和注意事项04-17
司机面试技巧和注意事项04-17
社团面试技巧和注意事项04-17
英文面试技巧和注意事项04-17
应聘面试技巧和注意事项04-17