步步为营:如何在面试中展现最佳自我

本文用于分享面试的一些流程和技巧,目的在于帮助新人如何打造一份适合自己的简历,在面试的过程中增加获取Offer成功率。

本文导航如下:

1.简历该如何去写?

2.可以投递的平台有哪些?

3.面试的流程是什么样的?

  • 三种形式
  • 三个环节

4.面试方面推荐的资源

简历该如何去写?

对于这个问题,我们首先需要关注几个问题,简历是什么?需要包含哪些内容?哪些内容是需要重点琢磨的?

假设你现在想认识一位姑娘或者帅哥,你该怎么样去获取这个人的信息呢?首先获取这个人的照片,然后获取这个人的社交方式(加微信),通过社交媒体进一步了解(朋友圈),是这样嘛?

那么对于面试来说,简历就是我们的一张名片,通过名片来了解我们的过往经历,以及我们的过往经历是否符合公司招人的预期

那么通常来说,一份简历需要包含这些内容:

  1. 个人信息:包括全名、联系方式(电话号码、电子邮件地址)、居住地等。
  2. 求职目标:明确表达你正在寻找的职位,例如”Java开发工程师”或”Java软件工程师”。
  3. 教育背景:列出你的教育经历,包括就读的学校、专业、学位等信息。如果有相关的证书或培训经历,也可以包括在内。
  4. 工作经历:按照逆时间顺序列出你的工作经历,包括公司名称、所在部门、职位名称以及工作期间。对于每份工作经历,要详细描述你的工作职责和所参与的项目或项目成果,特别是与Java开发相关的经验。
  5. 技能专长:列出你的技能专长,特别是与Java开发相关的技能,比如编程语言(Java、J2EE)、开发框架(Spring、Hibernate)、版本控制(Git)、数据库(MySQL、Oracle)等。
  6. 项目经验:如果有相关的项目经验,尤其是与Java开发相关的项目经验,要详细描述你在项目中扮演的角色、项目目标、所用技术等。
  7. 实习经历(如果适用):如果你有相关的实习经历,也可以列出来,描述你在实习期间所做的工作和所获得的经验。
  8. 其他信息:你可以根据需要添加其他信息,比如个人技能、语言能力、获奖经历等。

对于应届生来说、公司的侧重点在你的个人信息、教育背景、技能专长、实习经历、其他信息上面。

对于有工作经验的人,侧重点在你的个人信息、工作经历、技能专长、项目经验、其他信息上面。学历作为次要条件。

个人信息包含基本的姓名、邮箱、电话、投递岗位意向、当前的状态:是离职还是找工作。对于投递国有单位,可以把政治面貌描述一下,其他的Pass。而且据我的了解在职人士跳槽和离职人士跳槽的情况不太一样。这个我也很不了解,希望有知道的朋友可以解释一下~

对于应届生来说,公司会注重你的学校背景和相关的获奖经历,比如省赛、国赛和你的实习经历。还有你在学校期间的社会活动和产出。技能专长的话会一些通用技能和主流技能就好,因为每个公司的技术栈都不一样,你也不可能所有东西都会,如果你所有的东西都会,那么可能大部分也是浅尝辄止,没有一个是熟悉的。

对于有工作经验来说,你的项目经验和工作经历是公司比较关注的,3年内工作经历多的人,可能意味着不稳定。从公司的角度来说,这不是一个好事,但如果你能解释的清楚,也是可以的。项目经历主要说明你参与了哪些项目,做了哪些事情,有什么样的产出。

技能的描述

关于技能可以从招聘网站的岗位介绍中获取一些关键信息,如果这些关键信息在很多岗位中都出现了,那么说明这个技能具有一定的行业通用性,如果你掌握了就会更有优势。对于技能的描述也要区分“了解”、“熟悉”、“精通”。

  • 了解:“了解”指对某一个技术只是上过课或者看过书,但没有做过实际的项目。通常不建议在简历中列出只是肤浅地了解一点的技能,除非这项技术应聘的职位的确需要。

    比如某学生读本科的时候学过《计算机图形学》这门课程,但一直没有开发过与图形绘制相关的项目,那就只能算是了解。如果他去应聘Autodesk公司,那他可以在简历上提一下他了解图形学。Autodesk是一个开发三维设计软件的公司,有很多职位或多或少都会与图形学有关系,那么了解图形学的总比完全不了解的要适合一些。但如果他是去应聘Oracle,那就没有必要提这一点了,因为开发数据库系统的Oracle公司大部分职位与图形学没有什么关系。

  • 熟悉:如果我们在实际项目中使用某一项技术已经有较长的时间,通过查阅相关的文档可以独立解决大部分问题,我们就熟悉它了。对应届毕业生而言,他毕业设计所用到的技能,可以用“熟悉”;对已经工作过的,在项目开发过程中所用到的技能,也可以用“熟悉”。

  • 精通:如果我们对一项技术使用得得心应手,在项目开发过程中当同学或同事向我们请教这个领域的问题我们都有信心也有能力解决,这个时候我们就可以说自己精通了这项技术。应聘者不要试图在简历中把自己修饰成“高人”而轻易使用“精通”,除非自己能够很轻松地回答这个领域里的绝大多数问题,否则就会适得其反。

项目经验描述

面试官会对照应聘者的简历去详细了解他感兴趣的项目。应聘者在准备简历的时候,建议用STAR模型描述自己经历过的每一个项目。

项目经验-STAR模型

  • Situation:简短的项目背景,比如项目的规模,开发的软件的功能、目标用户等。
  • Task:自己完成的任务。这个要写详细,要让面试官对自己的工作一目了然。在用词上要注意区分“参与”和“负责”:如果只是加入某一个开发团队写了几行代码就用“负责”,那就很危险。面试官看到简历上应聘者“负责”了某个项目,他可能就会问项目的总体框架设计、核心算法、团队合作等问题。这些问题对于只是简单“参与”的人来说,是很难回答的,会让面试官认为你不诚实,印象分会减去很多。
  • Action:为了完成任务自己做了哪些工作,是怎么做的。这里可以详细介绍。做系统设计的,可以介绍系统架构的特点;做软件开发的,可以写基于什么工具在哪个平台下应用于哪些技术;做软件测试的,可以写是手工测试还是自动化测试,是白盒测试还是黑盒测试等。
  • Result:自己的贡献。这方面的信息可以写的具体些,最好能用数字加以说明,如果是参与功能开发,可以说按时完成了多少功能;如果做优化,可以说性能提高的百分比是多少;如果是维护,可以说修改了多少个Bug。

例子:

Winforms是微软.NET中的一个成熟的UI平台(Situation)。本人的工作是在添加少量新功能之外主要负责维护已有的功能(Task)。新的功能主要是让Winforms的控件的风格和Vista、Windows 7的风格保持一致。在维护方面,对于较难的问题我用WinDbg等工具进行调试(Action)。在过去两年中我总共修改了超过200个Bug(Result)。

注意事项

  1. 简历命名建议以:“投递的岗位名称-姓名”的方式去命名,目的就是方便HR区分,并将简历转给相关的负责人确认是否可用以方便通知面试;
  2. 简历应该尽可能清爽,简单,让HR能迅速找到重点;
  3. 内容主次分明,可读性强;
  4. 简历多检查几遍,避免错别字的出现,格式尽可能统一;
  5. 措辞避免假大空,过于假大空会让HR觉得你没有真材实料;
  6. 内容避免包含太多和投递岗位不相关的内容;
  7. 页数不要过多最多两页纸,如果需要说明以附件形式和简历一起投递;
  • 例子(非技术岗)

简历格式-法务

  • 例子(技术岗)

简历格式-技术

简历格式-技术2

可以投递的平台有哪些?

  • 简历编写

简历的编写可以考虑使用超级简历,超级简历是一个集简历模板,智能优化,直推,职位匹配的简历制作工具,帮助求职者快速制作专业简历,直通面试,提高求职效率。

  • 简历投递

目前国内的互联网的招聘平台有很多,主流的有:前程无忧智联招聘BOSS直聘拉勾网。这些平台也可以在线制作简历,也可以导入和解析简历。

我一般是在超级简历上完成简历编写后,导入到简历投递平台进行解析。

  • 简历内推

内部推荐是一个很好的入职渠道,一般都是通过公司在职的人直接帮你把简历递给HR部门,HR部门再和你进一步沟通联系。如果你能顺利入职,对于推荐者来说也会有一部分的推荐奖励,这其实是一个非常好的渠道。对于多数人来说,内部推荐的推荐人一般都是熟人和朋友、或者是朋友的朋友。

面试的流程是什么样的?

三种形式

面试流程

应聘者首先需要通过公司的简历筛选环节,才有可能得到面试的机会,也说明面试取得了阶段性的成功。

面试一般分为三种形式:电话面试、视频面试、现场面试。

  • 电话面试:以打电话的形式考查应聘者。一般会提前沟通好电话面试的时间,考验应聘者的沟通能力、应变能力和理解问题的能力,你的想法和逻辑怎么形象化的解释和表达清楚让面试官能理解是重点。

  • 视频面试:

    目前经历中就遇到过一次,而且是群面(一个面试官买对好几个应聘者),通过线上出题的形式,对应聘者进行能力考查,在纸上写答案,在答案写完后,通过拍照把答案通过邮件的形式反馈到指定的邮箱。

    也有视频面试会考查编程能力和调试能力,这种需要注意的方面有:思考清楚再编码、好的代码习惯、能够单元测试。

  • 现场面试:被公司邀请去参加现场面试,这种比较多。在目前的面试经历中,大部分简历筛选通过后会直接

三个环节

  • 行为面试环节

行为面试环节包括:自我介绍、应聘者项目经验、应聘者掌握技能、跳槽的原因。整个过程大概在5~10分钟。面试官会注意应聘者的性格特点、深入的去了解简历中列举的项目经历。

对于自我介绍方面在90到120秒左右就好,自我介绍简要讲一下主要学习和工作经历就好,太长了面试官会反感,留下不好的影响。

针对项目经验,应聘者在准备简历的时候也需要准备一到两个问题,防止面试官的突然提问。比如:

  1. 你在该项目中碰到的最大的问题是什么,你是怎么解决的?
  2. 从这个项目中你学到了什么?
  3. 什么时候会和其他团队成员(包括开发成员、测试人员、设计人员、项目经理等)有什么样的冲突,又是如何解决冲突的?

对于项目经验的介绍不必太具体,因为简历上都有写,需要突出的是个人完成的工作及取得的成绩。

面试官会针对简历上的技能进行提问,以此来了解应聘者对于技能的掌握程度。对于简历技能该怎么写请参考【简历该如何去写?】-【技能的描述】章节。对于常见的面试题可以参考【资源推荐】中的内容。

在回答“为什么跳槽”时,不要抱怨和流露出负面的情绪。以免给面试官留下不好的印象,应避免四个原因:

  1. 老板太苛刻:如果面试官就是当前招聘的职位的老板,他听到应聘者抱怨现在的老板苛刻时,他肯定会想要是把这个人招进来,接下来他就会抱怨我也苛刻了。
  2. 同事太难相处:如果应聘者说他周围有很多很难相处的同事,面试官很有可能会觉得这个人他本身就很难相处。
  3. 加班太频繁:对于大部分IT企业来说,加班是家常便饭。如果正在面试的公司也需要经常加班,那等于应聘者说他不想进这家公司。
  4. 工资太低:现在的工资太低的确是大部分人跳槽的真实原因,但不建议在面试的时候对面试官抱怨。面试的目的是拿到offer,我们要尽量给面试官留下好印象。

例子:

我在Autodesk开发的软件Civil 3D是一款面向土木行业的设计软件。如果我想在现在的职位上得到提升,就必须加强土木行业的学习,可我对诸如计算土方量、道路设计等没有太多兴趣,因此出来寻找机会。

我在微软的主要工作是开发和维护.NET的UI平台Winforms。由于Winforms已经非常成熟,不需要添加多少新功能,因此我的大部分工作都是维护和修改BUG。两年下来,调试的能力得到了很大的提高,但长期如此自己的软件开发和设计能力将不能得到提高,因此想出来寻找可以设计和开发系统的职位。同时,我在过去几年里的工作都是开发桌面软件,对网络了解甚少,因此希望下一个工作能与网络相关。众所周知,思科是个网络公司,这里的软件和系统或多或少都离不开网络,因此我对思科的职位很感兴趣。

  • 技术面试环节

对于技术面试,主要会关注应聘者五大方面

应聘者需要具备的素质

  1. 基础知识扎实

扎实的基本功是成为优秀程序员的前提条件,因此面试官首要关注的应聘者素质就是是否具备扎实的基础知识。通常基本功在编程面试环节体现在3个方面:编程语言、数据结构和算法。应聘者需要熟练掌握链表、树、栈、队列和哈希表等数据结构,以及它们的操作。应聘者可以在了解各种查找和排序算法的基础上,重点掌握二分查找、归并排序和快速排序,因为很多面试题都只是这些算法的变体而已。谷歌或者百度,还会要求应聘者熟练掌握动态规划和贪婪算法。

  1. 高质量的代码

在面试过程中,面试官总会格外关注边界条件、特殊输入等看似细枝末节但实质至关重要的地方,以考查应聘者是否注重代码质量。技术面试的面试官一般都是程序员,程序员通常没有那么多想法,他们只认一个理:题目做对、做完整了,就让你通过面试;否则失败。所以遇到简单题目却被拒的情况,应聘者应认真反思在思路或者代码中存在哪些漏洞。

  1. 清晰的思路

只有思路清晰,应聘者才有可能在面试过程中解决复杂的问题。有些时候面试官会有意出一些比较复杂的问题,以考查应聘者能否在短时间内形成清晰的思路并解决问题。

  1. 优化效率的能力

当面试官出的题目有多种解法的时候,通常他会期待应聘者最终能够找到最优解。当面试官提示还有更好的解法的时候,应聘者不能放弃思考,而应该努力寻找在时间消耗或者空间消耗上可以优化的地方。

要想优化效率,我们需要熟知各种数据结构的优缺点,选择合适的数据结构解决问题。也要熟悉常用的算法和不同算法之间的优缺点和适用场景。

  1. 优秀的综合能力

在面试过程中,应聘者除了展示自己的编程能力和技术功底之外,还需要展示自己的软技能,诸如自己的沟通能力和学习能力。随着软件系统的规模越来越大,软件开发已经告别了单打独斗的年代,程序员与他人的沟通变得越来越重要。在面试过程中,面试官会观察应聘者在介绍项目经验或者算法思路时是否观点明确、逻辑清晰,并以此判断其沟通能力的强弱。另外,面试官也会从应聘者说话的神态和语气来判断他是否有团队合作的意识。通常面试官不会喜欢高傲或者轻视合作者的人。

  • 应聘者提问环节

在结束面试前的5~10分钟,面试官会给应聘者机会问几个问题,面试官让应聘者问几个问题,主要是想了解他最关心的问题有哪些,因此应聘者至少要问一两个问题,否则面试官就会觉得你对我们公司、职位等都不感兴趣,那你来面试做什么?

对于提问题的建议:

  1. 不要问和自己的职位没有关系的问题;
  2. 不要问薪水。技术面试不是谈薪水的时候,要谈工资要等通过面试之后和HR谈。
  3. 再次是不要立即打听面试结果,比如问“您觉得我能拿到Offer吗”之类的问题。现在大部分公司的面试都有好几轮,最终决定应聘者能不能通过面试,是要把所有面试官的评价综合起来的。

最后推荐问的问题是与招聘的职位或者项目相关的问题。如果这种类型的问题问得很到位,那么面试官就会觉得你对应聘的职位很有兴趣。不过要问好这种类型的问题也不容易,因为首先对应聘的职位或者项目的背景要有一定的了解。我们可以从两方面去了解相关的信息:

一是面试前做足功课,到网上去收集一些相关的信息,做到对公司成立时间、主要业务、职位要求等都了然于胸;二是面试过程中留心面试官说过的话。有不少面试官在面试之前会简单介绍与招聘职位相关的项目,其中会包含其他渠道无法得到的信息,比如项目进展情况等。应聘者可以从中找出一两个点,然后向面试官提问。

资源推荐

书籍:《剑指Offer:名企面试官精讲典型编程题》(何海涛)

公众号:明哥聊求职

刷题App:牛客网

面试题:Java 全栈知识体系

数据结构和算法:Hello,算法

参考

  • 如何写一份有效的技术简历?

结束语

本文主要从应聘者角度总结了简历应该如何去写、投递的平台和面试的流程以及相关对应聘者有帮助的资源。对于面试,细节其实是特别多的。单纯的一两篇文章也不一定能表达清楚。不同行业和岗位对于应聘者的需求也不一样。需要我们多去尝试、多去反思、多去总结。