‘壹’ 程序员6条面试技巧
程序员6条面试技巧
第一、基础很重要,不要生疏了
不管应聘什么开发岗位,基础永远是最重要的。it不停地在炒作新概念,昨天是soa,今天是云计算。我们永远不知道明天流行什么,但是只要有踏实的基础,辅以较好的学习能力,要跟上步伐也不会太难。
所以绝大多数公司都会特别看重应聘人员的基础能力,比如编程语言本身的特*、基本的算法和数据结构、进程间通信等等,毕竟这些具体技术问题有客观的*,而且在各具体行业都是相通的。
第二、要关注技术前沿
不管做任何工作,如果只顾着低头做事,而不晓得抬头看天。那么不管做多久,自身的水平总是停留在毕业时的水平。如果基础又忘记了太多,那还不如毕业生。
关注技术前沿,并不是要求跟进每一个新技术,而只需关注目前主流媒体经常宣传的一些新技术、新思想,关注这些技术前沿的动向,并能将他们与自己从事的工作联系起来作一些深入思考,那么这是向面试官宣扬你的学习能力的一种好办法。
第三、小公司比较看重知识的广度
大公司更看重知识的深度。如果你想去一些小公司工作,那么由于他们人少,分工没那么细,所以他们大多喜欢知识面广的应聘者--你会听到更多的“怎么做”。
对于绝野应历镇聘这样的公司,你可以着重培养知识的广度,比如做网站后台开发,最好也能 js、CSS、apache、mysq都懂一些,能独自搭建一套完整的网站,这样去很多小公司难度都不太大。但是由于个人的精力总是有限的,所以要注意不要铺得太开,重点还是在后台开发本身。
第四、良好的简历设计可以为你的应聘加分
社会应聘的简历往往比校园应聘的简历写得随意,因为有工作经验的人往往认为面试官会更看重他的工作经验,而不是简历格式。其实不然。大名数简历只会出现在面试官面前10秒到1分钟不等。这个短短的时间内如何让你脱颖而出?一是简历要突出优势,而不是描述经历。比如出身名校、就职过名企、参与过着名项目、拿过大奖,这些比较客观的优势要重点突出。
第五、要有积极的沟通意识
优秀的面试官会肢宏粗激励应聘者讲他原先工作的内容,并从而评估出应聘者的能力水平。但隔行如隔山,绝大多数面试官会慢慢将问题引向自己熟悉的领域--这往往又是应聘者不太熟悉的领域。这就要求应聘者能积极分析面试官的兴趣点,并将自己相近的特长表现出来。
一种可能的引子是这样:“唔,你问的问题我并没有直接遇到过。但是我做的xxx系统也许跟你的这个问题有些关联你有没有兴趣听一听?”有哪个面试官会回绝你呢?面试管也许会故意问一些模糊的问题来混乱你。
第六,要有良好的表达能力
没有哪个面试官喜欢绪变化,一旦他表现出任何想打断的意愿,立即一句话结束这个话题。有些比较复杂的问题,可以先思考一到二十秒钟,因为一旦开口就没有思考的时间,话多的人不容易收住话题。
跟学校考试不一样,大多数主观问题并不要求应聘者一二三四说得滴水不漏,能说到大部分关键点就是可以的了。另外注意,各种技术术语不要搞混了。搞不清楚的理论概念,不如不说,免得面试官听到个术语就拉出来穷迫猛打,把自己问挂。
‘贰’ 程序员需要掌握哪些面试技巧
一、写好简历是拿高薪offer的敲门砖
一个优秀程序员的思维是缜密细致的,而是否具备这个特质,首先由你的简历去传递。
一份好的简历,一定是简洁明了,逻辑结构清晰,排版顺畅的,最好用PDF格式,兼容性强且不易乱序。
而简历里最重要的内容是你的工作经历和项目经历,这几点需要包括:
效力过哪些公司
做过的行业领域与目前面试行业是否匹配
擅长的技术语言,应用了哪些技术栈
经历的项目复杂度,及在项目中承担什么样的角色(人的变化/技术的变化/环境的变化/不同工作经历相同角色的不同点)
时间节点
关于简历,最好能够针对你要投的公司而重新编辑,突出于这家公司相关性比较大的那部分工作经验,而不是每次都用一份通用简历,这样会大大提高你的面试机会。
二、不打无准备的仗,为你的心仪岗位做好面试准备
1、进行自我定位
参加面试前,先给自己的角色和职位做一个定位。看看我们要应聘的岗位职责还有技能是什么,我在这个领域沉淀了什么。详对自己进行分析总结后,便更容易在面试中自信地表现自己。
2、制定成长目标
基于你之前的工作经历和行业趋势,给自己制定一个至少3年的规划,希望达到的业务能力和岗位是什么?其中包括业务、技术上的提升计划,还有综合能力的提升规划,比如协调能力、沟通能力、执行能力等。
这些问题,除了能给我们选择公司和岗位带来更清晰的指引,还能在面试遇到此类问题时,能够轻松应答。
3、梳理自己的项目经验及处理细节
面试中,最重要的部分肯定是对你过往经验和业务能力的了解,因此,我们需要梳理此前做过的比较有代表性的项目,其中需要包括以下这些信息:项目背景、项目怎么设计的、技术选型和对比、实现的细节、项目最终的效果。
4、了解应聘公司和其核心业务
全面深入地了解对方的公司,包括公司所处领域、核心产品或核心业务有哪些,业务的发展历史,产品目前的形态等等。
面试官向你提的问题很多是基于公司目前实际情况的,毫无准备会的话,你的回答智能涉及到比较浅的层次,而在有所了解的前提下,面试沟通的质量会更高,回答问题才更有针对性。
三、面试过程:从经验细节入手,展现实力
一般公司都有3-4轮面试。
一面是:笔试或HR面,一般都是考察技术基本功,而HR会比较关注你的离职原因、求职动机,这些要提前想清楚,避免回答的时候逻辑混乱。
二面是:技术面试或者项目面试,通过不同项目考核你的技术广度和实践能力。
三面是:综合面,会考察技术以外的其他能力,比如软性技能:逻辑思维、执行、沟通、协调等。
‘叁’ 程序员面试时,怎样跟HR谈薪水
1.在谈判时想办法增加自己的筹码
也就是你在技术面试和管理者的面试过程中一定要表现比较好,这样你就在HR面前得到较高的评级,这样HR这能给你的幅度也会大些。这些都是要在面试之前进行充分的准备,如果你在面试的过程中是别人犹豫的对象,表现也就一般,能够随时找到能够代替你的话,那么HR一般情况下是不会对你进行让步的。记得以前自己刚开始出来工作的时候,我面试一家公司时,HR直接用很强硬地语气对我说“就这个价,你就值这个价”,我就是成为他们可以代替的对象。虽然说我脾气较好,一般情况下比较理性,但是我也只能接受这个价位因为我没有更好的选择。
但在之后的面试过程中,经过我自己不断的学习,我不在接受HR的价位,只接受我自己认为合理的价位。
2.在关键位置上要有自己人
这一点很重要,有自己人在你要面试的公司内部,你就可以获得他们很多的情况,比如这次招聘是否紧急,公司内员工的能力,水平等等,什么是坐地起价,就是别人没有而你有的。有自己人在里面,你才能知道有没有其他比你合适的候选者,没有的话,你才有资格坐地起价。
比方说一个公司找了好久都找不到一个合适的人,但项目已经迫在眉睫了,这个时候你出现了。但是你并不知道你是他们千辛万苦找到的,他们不要你就有可能将项目至于风险中可能会有更大的损失,这个时候你是可以要一个比较高的价位的。但是如果没有人告诉你这个状态的话,你还是会从自身出发,可能觉得自己的表现并不算特别好,会患得患失,脸皮薄的话当然不敢狮子大开口(或者你不明白你为什么在这个时候在这个公司值高价)。
如果没有相关资讯了解对方公司内部对人员的需求情况的话,很多时候你靠的是运气,就是看你前后的面试者(候选人)和你的性价比结果。如果那个时期,只有你一个候选人,那么你的要求不过分,一般都可以满足。当然,HR还是会打击你一下压压价,别人的工作就是要控制人力成本嘛。所以你认为能力不如你的人工资却比你高,一点也不奇怪,你们进入公司的时机不一样。而且就算你认为对方水平不如你的,那只是你个人的看法,他的水平可能真不如你,但在公司的层面,你们可能被划分在同一级别。所以不要太在意,最好就不要去打听。
3.知道自己想要什么
一定要清楚自己想要什么,这个公司能给自己什么。如果这个公司能给的是自己未来需要的,那么它的价值就远远高于它支付给你的薪资。要看清楚自己的价值在哪里,工资最终会是你价值的体现!虽然你可能技术很厉害,但你的价值不一定就很高,能力和价值是两个概念并不能直接划等号。所以,你应该花时间发掘、培训、增长、巩固自己的价值,当你的价值足够高时,自然有公司(或猎头、风投、BOSS等)愿意为你买单。你能解决他们的问题,他们当然乐意帮你解决你生活中关于钱的问题。
所以,不要光向钱看,要向自己的价值看。这一点很重要,在和HR谈判时,不需要太在意自己的技术能力,哪怕前几个阶段表示不好,也把它忘了吧。这时你应该在意的是所应聘的职位能给公司创造的价值,通过这个价值和行业、地域的薪资水平来评估出自己的价值。然后再上浮点吧,这个点多大自己考虑吧。