程序员面试完全指南
春秋季是求职的黄金时期,借这时机分享下程序员面试相关的感悟。
本文立意不仅于面试技巧,而贵在通过梳理面试过程,帮助大家系统地完善技能树,找到更有发展前景的工作平台。一场完整的面试通常包括:简历准备、笔试(或无)、面试。
1 简历准备
好的简历,就已经成功了一半。简历的重要性不仅在展现个人形象,通常还会主导整场面试。 面对海量的求职简历,面试官通常没有过多时间准备针对性的面试问题,这时简历就起着面试 “发言稿” 的作用。一份优秀的简历,主要从两个方面:简历排版及内容。
1.1 简历排版 --层次感、突出重点
简历投递后,通常由HR进行初筛,面对着成百上千的简历,每份简历HR只有几秒钟浏览并判断这份简历是否合适。
那么如何设计简历,导向HR的正向判断呢?
我们先来看一个概念:首因效应,也叫优先效应或第一印象效应。在简历内容上,先看到的内容更容易被记住和重视。分析阅读如下简历的顺序习惯,我们通常由上往下,从左上角开始看,更侧重右边的内容。并按信息类别针对性地阅读。如下箭头阅读侧重的先后顺序。
所以,我们的简历排版可以从以下两方面考虑:
1)层次感:模块化展示个人信息、工作经历、项目经验信息会更有层次感,内容更清晰。
2)突出重点:结合首因效应排版,并可以地将较优秀的方面(如名校学历、重点项目经验)放比较靠前显眼的位置,突出重点。
1.2 简历内容 --经得起推敲、精炼
写简历的第一原则是要对简历内容负责,要经得起推敲。其次是简历要精炼表达。
简历内容主要有个人信息、工作经历(在校/实习经历)、项目经验(专业技能)、自我介绍(或其他):
1.2.1 工作经历 --描述具体而简洁
1)工作经历的时间采取倒叙形式,最近的经历写在前面;
2)工作经验的描述与目标岗位要求(JobDescription)的关键字尽量匹配;
3)工作成果尽量以数据指标来呈现,突出个人业绩;
关于工作经历造假: 对个人而言首先考虑的是造假本质是伤及自尊,只有尊重自己才能走得更踏实更远。其次,大公司或重要职位都有背景调查,可能这是作茧自缚。
1.2.2 项目经验 --简要,结合技能关键字,STAR法则
1)项目经验尽量写重要的项目,不要一味堆砌项目数量。
2)项目描述结合技能关键字可以很形象地展现个人技能。可参考STAR法则来写,内容清晰结果导向。
1.2.3 自我介绍 --有目的性地表达自己
1)自我介绍可以看作对简历的总结,直观地提供给HR、面试官适合目标岗位的印象。
2)篇幅不宜过长,应控制在200字左右,突出自身符合目标岗位要求的卖点(熟练技能,工作年限,项目成果等),要通过数据及成就形象展示。
2 笔试
笔试基本是大厂的必选项。接到面试机会,可以顺带问下是否有笔试,找找相关的笔试题目充分准备。笔试通常有这几种问题类型(具体还需要结合实际工作的侧重点来准备):
对于程序员的笔试,通常算法题的比重及难度会比较大,需要平时多花点时间准备,建议多刷刷leetcode算法题库(leetcode可以分题目类型标签、按频率、易难程度入手)。
3 面试
面试类型可分为两种:
- 经验性面试(了解面试者过去的工作经验,对其未来行为预测);
- 情境性面试(给定一个情景,看应聘者在特定的情景中是如何反应的,以此来鉴别求职者与工作相关的行为技能);
面试流程可能有好几轮(如技术主管、HR、CTO),每轮面试通常从自我介绍、工作经历、项目经验、工作要求与个人规划等方面,不同侧重地展开。
3.1 自我介绍
自我介绍应该是面试中的必考题,它主要有两层含义:给面试官一个缓冲的时间来重新熟悉你的简历;通过自己的总结,直观地提供给HR、面试官适合目标岗位的印象。
一个良好的自我介绍,可以留下很好的第一印象:
-
首先是自然地表述,这也是面试过程基本要求(可以通过模拟面试多演练)。
-
不能照搬简历,回答可以按 我是XX,可加一点个人信息亮点; 相关的经历、技能及成果,要展现有事实支撑的技能;以及将如何胜任工作。
3.2 工作经历及项目经验
工作经历及项目经验相关问题是整场面试的重点,考察方面主要有:
- 从工作经历主要可以了解你的历史的工作情况、公司规模、能力表现、工作稳定性等预判未来的工作表现。
- 从项目经验主要可以考察你是否参加项目,项目参与深度,如何处理问题,技能程度及项目成果。
结合考察要求,可以从如下几方面准备并加以练习:
1)梳理工作项目的完整流程,担任角色,所做的贡献,并关注重要细节、问题点、核心技术以及成果;
2)归纳工作项目过程中的常见问题,给出较完整解决逻辑;
3)重点琢磨项目提及的相关技术的原理、应用场景、优缺点等;
4)刷刷常见的面试题:可以从专业邻域、技术方面、目标公司相关的题库。
3.3 其它
- 薪资
面试初期(特别是技术面)谈及薪资,可以不用显得那么势利,大概给个薪资范围即可。通常到HR面试的时候才是谈薪资待遇的时候。而面试问的当前薪资,隐含的是问你的起步价是多少。
工资不是取决于能力,而是老板对员工的预期。关于面试谈薪资更多是把握一些技巧,但从长远来看议价能力约等于体现的价值及未来价值。从这个角度看,做好职业规划,好好发展资源价值才是核心。
- 有什么问题要问的吗?
面试结束前,通常面试官会问求职者有什么问题要问的。
如果回答没有,一来可能会让面试官产生误解:你对应聘公司、工作岗位没有太大的兴趣。二来可能错过一个很好互动的机会。(虽然面试时我们直接目的是展现自己与职位相符,但面试的本身还是两方相互选择的过程,双方有良好的互动更多的了解,对于后面工作开展也是很有利的。)
值得注意的是,如果没有准备几个好问题,还是不要强问问题。问题可以挑重点的问(如:岗位对个人的要求、工作内容、团队角色、团队项目情况、团队定位与公司架构等等)。
简历模板、数据结构及算法资料:Github链接,公众号阅读原文可访问链接