前段时间帮项目组面试了一些应届毕业生,在写代码的间隙和这些快毕业的年轻人交流也学到了很多。针对面试中遇到的问题,写一篇文章总结一下如何进行技术面试。
一、简历
简历很重要,排版和文字体现了态度和专业程度,写到上面的项目和技能决定了面试方向。
1、简历排版
排版的基本原则
a) 对齐。简历整体应保持一个对齐样式。
b) 字体和色彩保持一致,最好不要出现三种以上的色彩和字体。
c) 页数为一到二页,大多数好的简历都是一页写完。便于 HR 和技术面试官筛选。
排版 工具 不限,Word、Markdown、网页都可以,推荐使用 Latex,Latex 是出版公司使用的专业排版软件,高度自由、专业大方。其他排版原则可以参考「写给大家看的设计书」。
2、定制化内容
对应于技术岗位要求,不要出现过多非必须的描述。如:学生会干部经历、个人爱好、甚至照片都是非必要的。应该有的是实习经历、项目经历、竞赛经历等。
3、扩展项
简历可以表达的内容有限,又是静态的。可以通过富媒体扩展引入
a) 个人博客网站。个人博客最好是多年有高质量内容更新的,面试官可以通过博客了解到面试者学习关注的方向,对技术问题的思考和总结。推荐使用 WordPress/Github Pages 等工具自己搭建。
b) Github。最好是有高 Star/Fork 的个人项目,体现技术影响力。面试官可以了解到编码风格、软件工程素养。
c) 项目演示 Demo。
二、面试考察项
1、基础知识
最基本的岗位能力要求,包括语言基础、操作系统、计算机网络、数据库、数据结构、软件工程、数据技术等等。至少需要对某一个方向有较深入的研究和思考。
2、聪明程度
这是一个主观又难以量化的指标,当面试官问出一个问题时,他是知道答案的。他可能只是简单看过答案,或者做项目时遇到这个问题,或者刚好思考过这个问题,而对面试者来说可能完全是陌生的。这样来看其实不公平,用一个比较少遇到的问题去考察其他人,这种问题也不能测试出面试者的聪明程度。那如果出的题是从简历里引申出来又稍微有深度和难度的呢。这时就可以看到面试者的应变能力和知识迁移能力。用这两个指标去衡量时会更有效一些。举例:
「看你简历上写的了解 Linux 文件系统,如何在终端里删除一个名字为乱码的文件」,这个题目里有明显提示-Linux 文件系统,面试者也有这个基础能力,他如果能想到文件的 inode 数据结构,再结合管道就可以答出这道题。
「看你项目中提到了协程,怎么去设计一个协程库」,面试者可能没有看过协程源码,但知道基本原理后结合面试官的提示是可以推导答出大概的框架。
3、沟通能力
沟通更多是一种方法。
a) 是否可以做到结论先行。回答问题时,先明确给出答案,再给出推导过程。
b) 是否可以把回答归纳总结为有条理的子项。归纳的过程也是展示思考的过程,原则是子项独立不重复;整体不遗漏。
c) 是否可以把一个其他人不熟悉的概念用简洁易懂的语言向他讲明白。我们可以用这条标准来衡量自己是否真正理解一个概念,那就是把这个概念给完全不懂的人讲清楚。
d) 在传达信息时,是否可以及时调整表述,以确保信息被正确接收到。「项目计划」中提到,作为项目经理,我们必须要记住一个基本前提,就是防止误解是信息发送者而不是接收者沟通职责。
其他沟通方法可以参考「非暴力沟通」。
三、面试官与面试者
管理大师德鲁克说,在组织中的人既是管理者,也是被管理者;既是管理的主体,同时又是客体,都承担双重角色。而面试官与面试者也是这种关系。一方面,面试官承载着这家公司的品牌形象和文化,也在接受面试者的评价和选择。另一方面,面试官极有可能有一天也是要去面试的。那么从这两个方面,作为普通技术人员的面试官应该做些什么?
1、面试官的职责
a) 提前 review 简历,针对提到的技能和项目,定制化一份可以综合评价能力的面试题
b) 平等认真倾听和记录面试者作答,引导面试者展现能力
c) 向面试者介绍公司和项目组在做的事情
d) 面试者有主动寻求建议,应适当给出建设性的答复
2、技术人员出走的能力
面试官作为一个有较多工作经验的普通开发人员,也会有一天转换角色成为面试者。为了适应这个激烈变化的互联网行业,他们应该保持随时出走的能力。开发工程师平时可以关注这些:
a) 提高业务能力和积累高价值的项目经历
b) 维护更新一份自己的简历
c) 学习新的语言和技术,创建自己的项目和产品
d) 积极分享,提高自己在业界的影响力(写公众号、博客、Github、开发者社区)
e) 主动了解业界情况(薪资待遇、发展机会、业务范围)
f) 有机会的话与猎头维持良好的联系
最近公众号更新较少,一些想法记录在这里,一为总结分享,二为自察勉励。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 高频面试考点:Redis中有几百万数据量,如何进行高效访问?
- 消息中间件面试题:如果让你写一个消息队列,该如何进行架构设计?
- 流程篇 | 避免 evalString 进行回调,使用 JSB 进行手动绑定
- 【Cocos Creator】拒绝 evalString 进行回调,使用 JSB 进行手动绑定(流程篇)
- 【技术分享】通过短信进行XSS攻击:在Verizon Message应用中利用文本消息进行攻击
- 用Apache Spark进行大数据处理 - 第六部分: 用Spark GraphX进行图数据分析
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。