软件开发应届生求职经验(其他专业可参考)

1.前言

最近在帮一些找工作的学弟学妹看简历,从中发现了两个问题:

  • 不知道春招、秋招、校招、社招是什么,从什么时间开始、招什么时候毕业的应届生
  • 不知道怎么写简历

本文从一个前端开发学长的经验出发,谈谈软件开发方向应届生的一些求职经验。个人认为本经验也可供其他专业的应届生进行参考。

2.几种招聘

首先需要介绍春招、秋招、校招、社招是什么。需要提醒的是,由于本科、研究生、博士生、内地院校和境外院校的毕业时间不同,导致相应的招聘时间有所不同,需要求职者根据实际情况提前了解,本文最后一节收集了一些知名企业的招聘官网,可以根据自身实际情况,参考往年的招聘时间。接下来的部分将以国内本科的时间线为主。

2.1.校招

校招即校园招聘,面向的是在校学生,校招比较集中的时间段有三个——春招、秋招和补招。

2.1.1.春招

春招即春季招聘,大部分公司春招集中在二月至五月,其中三月和四月是春招的黄金时间,是为金三银四。春招主要是招暑期实习,通常是招次年毕业的应届生,比如本人是2019年毕业,就参加2018年的春招。以本人为例,我是在2018年4月拿到某厂的实习生录用offer,当年6月去实习,10月考核通过留用,然后2019年毕业之后就直接入职成为打工人。
通常大部分公司的实习生名额会多于最后的留用名额,也就是说想要成为正式员工(毕业之后直接去上班)需要通过一定的竞争(比如转正答辩),但建议有时间的同学一定要参加春招,如果拿到春招offer就去实习,这样即使后面没有留用,再去争取秋招机会时起码比没有实习经验的同学有一定的优势。另外需要注意的是,如果你想通过实习转正,一定要在面试时问清楚有没有实习转正的名额、实习多久能够转正。

2.1.2.秋招

秋招即秋季招聘,大部分公司秋招集中在七月至十月,其中九月十月是秋招的高峰期,是为金九银十。秋招看公司的具体情况,可能是直接发最终的录用offer,也可能是招实习,需要求职者看清招聘要求。秋招通常也是招次年毕业的应届生,比如本人是2019年毕业,就参加2018年的秋招。

2.1.3.补招

如果春招秋招都没有赶上,那后续补招还有机会上车。大部分公司补招通常是当年十一月到次年二月,但补招的数量和质量都不如春招秋招,建议同学们不要把机会压到补招上。

2.2.社招

社招即社会招聘,面向的是已经有一定工作经验的求职者。一年中任何时间段基本上都有公司在进行社招,但岗位比较多的时间段还是和校招的春招秋招时间段一致,集中在金三银四和金九银十附近

2.3.内部推荐

内部推荐简称内推,无论春招秋招、校招社招都有内推。内推通常是找公司内部员工进行推荐,也可以通过一些平台——比如牛客网的内推广场、微信公众号内推军等进行内推。内推的具体政策视公司具体规定而异,比如有些公司是内推免笔试。但总的来说,内推比不内推机会更大一些。

3.如何编写简历

对于没有求职经验的在校生来说,一个非常头疼的问题就是怎么编写简历。就个人经验来看,简历的目的就是为了让人一眼就能看出来这个人具备什么能力。组织简历时可以把自己代入HR或者面试官的角色,如果你是HR或者面试官,你希望看到一份什么样的简历
对于在校生乃至有三年以内工作经验的求职者来说,简历一页A4纸即可,因为太长的简历HR或面试官可能并没有足够的耐心看完,毕竟人家可能一天会处理好几百份简历。基于这样的推论,一份好的简历应该把越重要的内容放在越靠前的位置。那么,在这一页纸的简历中,按照重要程度的优先级,应该展示哪些信息呢?这里有一个填充了具体内容的简历demo(链接: 网盘 提取码: pngk):

结合这个demo,从本人的经验出发,简历中按照顺序应该包含如下七个部分:

3.1.个人信息

最重要的包括姓名、教育背景(学校、专业、学历)、联系方式(通常是手机号码)、求职意向(什么岗位)还有性别和年龄(或出生年月)。如果有博客或者在GitHub上有拿得出手的项目,也可以把链接附上,这是加分项。
如果学校是985或者211,可以在学校后面备注。如果个人在年级中排名靠前,也可以写上专业排名。
其他信息比如照片、现居地地址、邮箱地址等等,如果后续简历有点空也可以拿出来填充空间。
需要注意的是,最重要的信息中没有包括照片。我一直没有把照片放到简历中,一是因为照片占用空间、二是有性别和年龄之后照片其实不太重要,如果认为自己的颜值可以为自己加分的话,可以把照片当做重要信息处理。

3.2.实习经历

这一部分主要针对已经有实习经验的同学,没有实习经验的同学可以不写。主要内容包括什么时间到什么时间,在哪家公司、什么部门、什么岗位,主要做哪块业务。

3.3.项目经验

这一部分在简历中十分的重要,项目经验主要展示自己做过的项目,可以是在校期间做的,也可以是实习期间做的,2-3个即可,排序上个人感觉技术含量越高的项目排序越靠前。
内容上参考star法则,star法则即情境(situation)、任务(task)、行动(action)、结果(result)四项的缩写,具体到写项目经验上来就是在什么情况下承接了什么任务,为了完成这个任务你采取了哪些行动最终达成什么结果
结合demo,在项目经验上我个人推荐的写法是这样的:

项目名称
字体加粗,方便区分不同项目。项目名称后面可以加上项目的类型,比如是PC端网站还是移动端网站还是小程序或者App,这样就方便面试官对项目有大概的认识。

项目描述
对应star法则的情景,可以包括用户的需求、项目预期实现的目标等能够体现这个项目是要做什么的信息。字数上1-2行即可。

负责内容
对应star法则的任务,主要写你在这个项目中需要完成的工作,比如承担功能设计、技术调研、前端开发、数据库设计、后台开发等等。字数上1-2行即可。

开发过程
对应star法则的行动,主要写你在项目开发中发挥的作用,可以写你为了完成任务采用了什么技术、设计了什么方案、解决了什么问题或者BUG等等。字数上2-3行即可。这部分在整个项目经验中是最重要的部分,但也是最难写的部分。
需要注意的是,开发过程不能只写用了什么技术实现了什么功能,更重要的是你在开发过程中设计了什么方案、解决了什么问题。作为应届生,技术方面往往拉不开太大的差距,既然都来找开发岗了,谁还不会点编程语言、框架之内的,但设计方案、解决问题的能力并不是人人都有。所以相比于所掌握的技术,更重要的是你用掌握的技术做了什么、如何解决开发中的问题等,这样才能体现你的能力。
另外一个情况是,在校做的项目往往比较基础,可能直观感觉上没有什么技术含量,但大部分应届生其实都是这样的。这时就需要复盘一下开发遇到的问题,仔细梳理当时是如何找到解决方案的,或者重新审视项目,找找还能优化的点,设计一些优化方案进去。

最终结果
对应star法则的结果,主要写这个项目最终取得的成绩,比如拿了什么奖、完成了什么目标、得到了什么收获、在各项数据上有什么亮眼表现等等。字数上1-2行即可。这部分其实是整个项目经验中也是比较难写的部分,因为在学校里做的项目,很难有什么大的成就,能得个奖、发个论文就很不错了。所以如果没有拿奖、也没有发论文等,就可以写项目完成后对用户的改变(比如解决了之前一直没有解决的问题、填补了什么空白)、自己获得了什么收获、各方对项目的评价等等,如果项目在诸如用户访问量、各种技术指标上有亮眼的表现,也可以写上去。

项目经验这一块很考验大家的包装能力,不光是项目经验,整个简历就是考验求职者的包装与精简能力。之所以还有一个精简能力,是因为写简历写到最后往往就是删减内容,再平庸的学生,只要找到正确的填充简历的方式,也能写出好几页纸的简历来。但让面试官看好几页的简历不太现实,这就要大家选择哪些信息应该保留、哪些则应该删除。感觉难写不要紧,写多了就有经验了。但要注意,项目经验中写的内容要符合实际情况,比如根本没有做过的项目写上去、根本没有遇到过的问题编上去、根本没有用到的技术写进来,面试官一问就有可能露馅,进而造成不好的影响。

3.4.专业技能

这一部分主要展示自己掌握了哪些配得上岗位要求的技能。在描述时采用形如“熟练使用vue框架”、“熟悉xxx的使用”、“了解xxx的原理”。切记不要随便使用“精通”,比如“精通vue”,这样很容易被面试官挑战。
在组织形式上,可以使用列表组织专业技能,将同一类型的技能写到同一列中。拿前端举例,前端三件套HTML+CSS+JavaScript的掌握程度写一列,所掌握前端框架写一列,所使用的工具写一列,以此类推。数量上4-8列即可。在专业技能的最后,也可以写上自己最近在学习研究的技术,以展示自己热爱学习。

3.5.获奖经历

这一部分主要展示自己在校期间获取的奖项,内容上优先写和专业相关的奖项,比如“ACM铜奖”、“科研立项xxx奖”。其次是个人能力相关的奖项,比如“xxx奖学金”。最后才是诸如公益实践、社团组织颁发的奖项。如果在获奖经历中扮演了比较重要的角色,比如队长、负责人等,可以单独标明出来。

3.6.校园经历

这部分主要写在校期间参加了什么比赛或者社会实践、担任了什么学生干部职位、参加了什么社团等。
内容上也是与专业相关的经历优先,比如参加了“互联网+”比赛、参加了ACM比赛、参加了什么工作室等等,简要的写一下自己在这些经历中的贡献。

3.7.其他内容

其他内容比如自我评价(就几句话简单交代一下自己的性格、优点等)等,主要是当简历写不满时用于填充空间的

在布局上,简历最好不要过于宽松,也不要过于拥挤,比如有些简历上个人信息只有几段话,但却占用了很大的空间。有的则项目经验非常多,写都写不下,只好很密集的挤在一块。这些都是非常不好的实践。每一部分之间最好有比较明显的分隔,方便面试官一眼就能看到那一块是讲什么。在样式上,简历不应该过于花哨,以免喧宾夺主,毕竟简历最重要的部分是内容。
你可能会觉得demo里的简历看起来东西没有多少,但你仔细看就会发现,整体上结构很清晰,你一眼就能看到那一块是讲什么,内容看起来少但信息量却不少。永远要记住,太长太密的简历,没有人会认真看的。至于简历中没有提到的内容,可以在自我介绍中进行补充。后面也会有一节专门讲解如何进行自我介绍。
最后写成的简历,最好转为PDF格式作为电子版简历,因为world文档在不同软件中打开可能会造成样式、布局的改变。同时,现场面试时也应该打印几份纸质简历带在身上,以备面试官需要。

4.笔试面试准备

4.1.准备

一般来说,软件开发的整体应聘流程为1轮笔试+3-4轮面试。建议大家提前准备笔试面试,准备早了容易忘,准备晚了来不及,比如你是明年参加校招,建议今年下半学期或者暑假时就开始准备。准备大致分为看书、刷题和刷面试经验(面经)三个部分。
看书主要看和笔试面试有关的书,这里推荐《剑指offer》。这本书主要内容是程序员面试中经常遇到数据结构和算法,看起来不厚,但内容十分充足,建议能看多少看多少。
刷题可以去牛客网题库刷公司真题,也可以去力扣题库(主要是算法题)上去刷题。不同公司题目涵盖的范围和难度有很大的不同,题目也不一定只和岗位有关,比如前端面试可能有一些后端相关的题目,主要是见过的题多了,自然经验就多了。建议大家有事没事多多刷题,把近两三年知名大厂的题都刷一遍。
面经可以去牛客网面经汇总上看,也可以去各种博客论坛——比如掘金、segmentfault上搜索。

4.2.笔试

春招基本上一定会有笔试环节,秋招不一定有笔试。笔试通常由单选、多选、简答、编程题组成,内容涉及编程、算法等。除了编程题外,其他类型的题有可能有的和技术没有太大关系,反而类似于公务员考试的题目。通常会在公司的平台或者牛客网之内的平台进行网上答题。笔试没有太多的经验,反正提前多刷题就对了。

4.3.面试

4.3.1.自我介绍

面试通常以面试官的一句“请你简单的做一个自我介绍”开始。自我介绍通常时间在3-5分钟不等。根据我个人的经验,有些面试官是不会提前看候选者的简历的,或者候选简历太多,面试官很难记清楚哪个候选者简历里写了什么内容。所以,自我介绍一是让面试官能更好的了解候选人,二是给面试官一点时间再看一下你的简历。
参考正常语速一分钟250字左右,自我介绍能够描述的内容其实也很有限。这就面临和写简历类似的问题——在有限的时间内应该说什么。从个人经验出发,自我介绍可以围绕简历组织,也就是说自我介绍的内容和结构大致上和简历上保持一致,重点是对项目经验的补充。比如个人信息就可以简单的介绍自己叫什么、什么院校、什么专业、什么年级、本科还是研究生即可。专业技能和获奖经历也是如此,均可用两三句话介绍自己会什么、拿过什么奖即可。对项目经验的描述上,也是参考star法则,但对具体细节进行补充。拿demo简历里的第一个项目来说,就可以对开发过程进行信息补充,比如具体的评论互动方案是如何实现的、采用了什么具体的方案视频IE浏览器等。如果时间上还有空余,可以简单介绍一下自己做过的其他项目。
自我介绍最好提前准备,并多次练习以掌控时间、熟悉内容,不要在面试时现想。

4.3.2.面试流程

面试通常最后一轮是HR面,除HR面之外为技术面。HR面不会问技术问题,通常是了解一下候选者的个人情况,比如性格上是否有明显的缺陷等等,只要面试过程中没有表现出明显的问题,一般都是没有问题的。对于技术面,通常来说技术面第一是同事面,第二面是组长面,如果有第三面则是主管面。如果某轮面试挂掉了,有可能会被其他部门捞起来继续面,那面总面试轮数还会增加。我认识的一个朋友,面鹅厂,挂了又被捞起来,捞起来又被挂,最后总共面了10轮才过。面试可能是现场面试,也有可能是线上面试,视公司具体安排不同。面试时间也视具体情况而定,通常是半个小时到一个半小时左右。
建议大家刚开始找工作时,不要一开始就直接投中意公司或者大公司的简历,提前先拿些小公司练练手,等到中意公司或者大厂开始面试时,自己基本上也有一定经验了,应对起来也会更加从容一些。根据个人校招面试的经验,有一定数量的问题,会在不同公司的面试中反复出现,每次面试时记得记录一下面试的问题,面试结束之后马上去查找对应的答案,弥补自身知识上的欠缺,如果后面也被问到了相通的问题,那回答起来肯定要从容的多。
面试中的问题,通常包括岗位相关技术(比如前端后端)、项目细节、算法、技术方案设计等等,面试过程中也可能会让面试者现场写代码(通常是线上面试线上写代码)。面试官每问到一个问题最好先想一下再回答,一是从脑海里面寻找答案,二是想一下面试官的问题是不是有什么坑、有什么边界情况要考虑的。实在不会的问题就回答不会,面试中有不会的问题很正常,不懂装懂很容易引起面试官的反感。当然,太多的问题不会就要从自身找原因了。需要注意一点,简历上写的内容,最好心里有数,因为面试官很有可能会根据简历上的内容进行提问。比如简历里写了熟悉Vue,那么就有可能会问Vue相关的问题;简历里写了某个项目,就有可能会问项目中某些细节的解决方案等等。算法方面就只能多看书了、多刷算法题了。现场编程往往是某些常见功能的实现,比如前端可能是现场写个防抖函数,这个可以事先准备一下。
面试的最后,通常面试官会问“你还有什么问题要问我”。此时,最好不要直接问面试官自己有没有过这轮面试,因为每轮面试都有不少候选人,没有把所有候选人面完,面试官也不好说谁过没过,而且有时候选人过不过,不只是当轮面试官说了算,他可能还要咨询组内其他人的意见。而且你能不能过这轮面试,面试结束时应该多少从面试官对你的态度上能够看出一些端倪来。所以,此时问这种问题没有任何帮助。就我的经验来说,我一般会分技术面和HR面问不同的问题。
首先是技术面,因为技术面主要是面试官问你,所以最后你问面试官的问题最好不要超过3个,不然会让面试官觉得是我在面试你还是你在面试我。通常情况下,技术面之后我会问以下几个问题:

  • 面试官对我有什么建议:这个问题是每次技术面之后固定问的第一个问题,因为作为应届生,面试官的水平肯定是比你高的,所以面试官对你的一些意见或者建议是十分宝贵的,而且还可以侧面获取一些面试官对你的态度
  • 部门主要的业务和技术栈:这个问题通常在前两轮技术面之后问,主要是了解该部门的工作方向以及所需要的技术,以便后面选择offer时提供参考
  • 后续面试安排:如果你感觉这轮面试有可能会过,那可以再向面试官确认一下后续面试的安排,比如还有几轮面试,大概什么时候会安排下轮面试,以便自己下了之后进行准备
  • 工作节奏:如果你很在意工作时间,比如加班严不严重,那就可以问面试官部门的工作节奏。这个问题最好一面问,因为一面是同事面,二面三面都是领导,再问这个问题有点不合适

然后是HR面,通常情况下HR面不会沟通offer的细节,比如薪资水平,因为毕竟还是在面试流程中。等面试全部通过之后,会有人专门来沟通薪酬的,所以薪酬相关的细节,可以等到后面沟通offer时再谈。我通常会在HR面之后问以下几个问题:

  • 转正流程:如果面试的是实习岗,一定要问清楚实习期是多长、最后有没有转正名额、转正的流程是怎么样的,以便后续选择offer
  • 绩效考核和晋升制度:这个问题是问转正之后的事情,比如一年有几次考核,每次考核分几个等级,每年有几次晋升机会等,尤其要问刚毕业多久才能晋升,因为有的公司要求毕业之后必须工作一段时间才能晋升

5.一些招聘资源

最后是我收集到的一些招聘资源:
阿里巴巴招聘官网
腾讯校招官网
4399校招官网
网易游戏校招
网易校招官网
字节跳动招聘官网
京东校招官网
美团招聘官网
百度招聘官网
搜狐校园招聘官网
搜狐畅游校招官网
三七互娱招聘官网
链家招聘官网
百词斩招聘官网
完美世界校园招聘
58同城校园招聘
苏宁易购招聘官网
七牛云招聘官网
滴滴校招官网
微众银行招聘官网
虎牙招聘官网
哔哩哔哩招聘官网
中华英才网
Boss直聘
拉勾网
实习僧(专门找实习的,可以用来刷经验)
牛客网
leetcode 力扣
前端开发面试题

你可能感兴趣的:(其他,职场和发展,面试)