0. 前言
0.1 风风火火的秋招终于算是告一段落了,总结一下,算是回馈河畔(看了很多前辈的经验帖~~),也算是给自己这几个月做个总结。看了很多经验帖,感觉很细节的东西,比如笔试题/面经资料很多,但是串起来宏观讲的少之又少,尤其是刚开始找工作的师弟/妹,很需要这样的经验,因此全文会更宏观,加上一些小tips,具体的内容还望看完自行寻找,毕竟找工作是一件很“个性化”的事情,需要自己的量身定做。
打算分为“基本背景,求职准备,简历撰写,岗位投递,笔试经验,面试经验,offer选择,两方三方档案报到证户籍”这么几个部分写,畔友们各取所需。
全文比较罗嗦,而且是没有BAT的非科班经验,有些点不适合大佬(比如简历的准备,公司的选择),还望各位批判性接受。
还有些暂时没想到or不方便写的东西,可以留言,能回答的尽量回答。
0.2 一些基本缩略语,可能有些师弟/妹不清楚,我集中在这里写出来
HC:Head Count,人头数(类似游戏里double kill的那种),就是岗位的坑位(很血腥吧)
劝退价:笔试/面试通过,但是各种原因(公司没有HC了/有比你更合适的/不想违意向书当坏人),给一个明显不会去的价格
白菜价/批发价:笔试/面试通过,表现及格,正常档价格
SP:Special Offer,比白菜高一级别,一般是笔试or面试综合成绩优异可以拿,有些也可以申请加面拿sp
大/小sp:明显比白菜高,但是又没有网传的sp那么高,大sp反之
SSP:Super SpecialOffer,比sp再高一级,一般数量比sp少很多
笔试术语:OJ:onlinejudge,也就是在线评测网站;AC:accept,题目测试例全对通过,WA:wrong answer,不正确
1. 基本背景
先介绍一下自己的基本情况和秋招的情况,以备给给位更大的参考价值。
1.1 基本情况
我是机电学院的,找的互联网(数据研发/Java后台混投,没有数据校招岗位就Java后台),也就是非科班,经常面试被问,你是机电的,怎么来搞这个了?秋招转软件的可能有更大的共鸣吧。不过可能底子好一些,因为本科大二开始在星辰工作室一直搞Android(顺便推一波工作室,哈哈),Java写了不少,但是研究生期间一直搞的数据,Android都不会写了,想着不如直接投数据岗位。
1.2 秋招情况
大概是从8月1日开始的,一直到10月底,也就是从开始撰写简历和投递到最后寄出三方,前后历时3个月。按照面试的时间顺序如下:
蚂蚁金服成都数据研发内推笔试三轮面试已挂Flow++北京大数据研发无笔试两轮面试通过sp农行软开成都软件大类统一机考一轮群面通过未参加体检腾讯深圳内推岗位不匹配OPPO地点可选Java后台笔试通过三轮面试通过白菜价VIVO深圳大数据研发笔试通过两轮面试通过sp招银网络成都大数据研发笔试通过三轮面试通过白菜价B站忘了Java后台笔试未通过吉比特深圳Java后台笔试通过一轮面试已挂网易游戏广州Java后台笔试通过三轮面试通过等级未知美团成都Java后台笔试通过三轮面试通过小sp知乎北京数据研发无笔试三轮面试通过ssp华为成都数据研发笔试通过两轮面试通过等级未知字节跳动上海数据研发笔试通过三轮面试通过小sp
因为是数据岗位,最终选择了字节跳动。
2. 求职准备
先啰嗦两句,不得不说,早准备有巨大的优势,由于一些个人原因,8月才开始,发现只有一个月的时间来弄简历/刷题/看面经消化了,所以搞得很被动,一度觉得工作真难找,但是后面就发现,准备稍微充分一点,再加上双985加成,确实已经是easy模式了。如果让我从3月份开始准备的话,结合这几个月的经验,我的安排会是这样:
花一周时间,专心弄好一份简历(简历的经验见下)。
花一周时间,公司筛选,这个其实和高考填志愿差不多,冲击档,正常档,保底档,一定要大量看帖子,搜索,包括不限于河畔/知乎/论坛/牛客/脉脉,但不可全信,要综合考虑,很多离职人员言辞很偏激(投递经验见下)。
拿到满意offer之前持续刷笔试题,大量刷题,注意是持续刷题,直到拿到满意offer前都要保持思维和手感在线,并且最好按照专题(笔试经验见下)。
学习面经,同时相应深入学习频繁出现的知识,因为这些知识不仅面试有用,实战也很重要,而且只刷面经会给人一种硬背的感觉,要变成自己的东西。比如那个分布式的paxos,虽然时间紧张,我还是花了大量时间去弄懂了,事实证明好处还是很多的(面试经验见下)。
如果只有很短的时间准备,我建议面经的学习可以缩水,就是传说中的背吧……其实背多了也多少明白点….
3. 简历撰写
3.1 简历的准备肯定是第一步,因为这是自己对自己的一个总结,总结完了才知道自己的经历和兴趣点到底在哪(或者到底能干嘛),简历是否合理、漂亮的重要性大家应该都心知肚明。有几个小点注意,一个是教育经历,这个成绩好的同学建议写出自己的GPA,也算是个亮点(不好就算了);一个是项目经历,作为应届生,没有大型项目是非常正常的,面试官也会理解,但是这不代表自己DIY的项目不是项目。这里建议把自己的比赛,做的Demo整理一下push到GitHub上,当作自己的项目,不要贪多,最重要的几个写清楚(对了,简历记得放自己的GitHub/Blog地址)。
3.2 至于撰写,建议使用在线的简历模板(我用的是novoresume),好处就是换模板或者改动很容易,坏处就是就那么几个模板,而且自己对模板的控制力很差,容易撞。时间充裕建议自己参照模板制作,根据需要改动,并且以这份为模板,派生多份简历,比如准备了4份,分别是“数据研发,Java后台,机器学习,深度学习”,各有侧重点。随后反复推敲,让别人看一下(结构,错别字),只有别人看才能看出问题。版面一定不能大片留白,填也要填满,要不然给人一种没啥东西的感觉……即使确实写了一个亮点项目。
3.3 简历不要写完就不看了,每次面试完都要根据对方的提问,看看有没有改善的地方,比如面试官总是看不懂你的项目,那说明你的描述是有问题的。这里还有个tip,有自己blog的同学,简历挂上去,发邮件的时候附上一份在线的可以随时预览,也很不错(注意同步更新)。
3.4 很多公司投递是在线填写,不支持上传简历,这时候最好准备一个txt文件,把简历内容分模块粘贴好,填的时候直接粘贴,一来防止出错,二来方便快捷。
4. 岗位投递
像上面说的,定三档,冲击档,正常档,保底档,每个档选3-5个即可,并且注意不要一个档位一次投完,轮着投,这样对每一档的公司,自己可以总结和思考,而且也保有余地。有内推优先走内推通道,省很多事情(比如不用在线填写简历,直接发送即可),而且很多公司内推和秋招不冲突(这个要问清楚),也就是两次机会。内推的话,河畔/牛客有大量信息,自行搜索即可,要是有师兄在想去的公司,优先找师兄,进度也好跟踪。首次的面试最好不要给最想去的公司,因为经验是一个很重要的部分,有时候并不是不知道这个知识,只是不知道怎么回答or怎么完美回答(活生生的例子,我就是第一次给了阿里,事后感觉自己并不是不会啊,哭唧唧)。这个部分并不是很难,也没什么技术含量,但是自己一定要稳住,注意节奏(前期我就有点慌,毕竟大家都有工作了,呜呜呜)。
5. 笔试经验
5.1 笔试环节应该是最“难”和最“容易”的部分了。难就难在,题目可以难到你怀疑人生,也可以让你觉得“道理我都懂,就是没时间写代码”,也可以“测试例就是不能100%AC”;容易是因为,这个部分可以刷题练习,可以快速提升(相比面试),也是一分刷题一分收获的实打实的收益。
5.2 笔试题选择填空题常考:操作系统,数据结构,计算机网络,大题常考,数组,链表,图,动态规划。建议leetcode-cn——探索,按照专题刷,事半功倍,把这个刷完笔试和面试的手撕算法基本无忧。当然时间充裕可以继续刷题库。有一点就是,建议不要用IDE写,一定要保证自己能够在没有IDE的情况下完全不看答案写出来,一般刷个3遍就差不多了,而且要总结归纳,搞明白到底怎么回事,不然面试一紧张很容易忘,但是有思路可以和面试官聊着写,就会轻松一些。刷了专题就可以上牛客网刷企业的真题,这个看自己的意向公司。
5.3 刷题吧少年!刷题不能停,停了就失业!
6. 面试经验
6.1 面试应该是最重头戏的部分,本来我也是打算具体详细写的,但是想了想,网上那么多面经资料(尤其是看准网多如牛毛),我写的未必能更好,而且,时间有点久了,有些记不清楚了。我会在最后贴上自己记录的一些知识点笔记,以供参考和查漏补缺。我其实最想说的是,面试中,运气(包括谁面试你,面试官是否聊得来)占很大的比例,如果没有参加过面试,那么这个比例超出你的想象。因为任何人想提出一个难倒你的问题都太容易了,能让你自己的能力在40-60分钟内让一个陌生人信服,这才是面试的关键。因此如果基础不是差到二分查找都写不出来的地步,那么你的言语、态度、临场发挥才是重点,这就是面试的难点。按照我自己的经验来看,一定要自信,不会的不要强答,但也不要不答,应该把自己的思路说清楚,说不清楚就问能否给些提示。还有迁移到自己会的领域也很重要。比如面试官问我这个用SQL怎么解决,我没什么思路,但是阐述了思想,并且说可以用MapReduce去解决,面试官就让我写mapper和reducer,我写完面试官很满意,感觉比能写出来SQL还满意。所以有时候并不是自己不会,而是没有发挥出来。
6.2 不错的资源:看准网(app免费看),脉脉,牛客网
7.offer选择
7.1 到了这一步说明手里已经有不止一个不错且有竞争力的offer了,但是就算offer再多也只能去一家,选择就很重要了。所有的步骤中,这一步个人因素最大。比如有人就是非成都不去,有人不喜欢加班,有人就是喜欢高薪。但是有个不错的“列表法”推荐给大家。首先列出考虑因素,比如,地点,薪资,发展这些,然后对因素打分,1-10分,先打1和10,其他取中间。然后对每个公司的这些因素打分,1-5分,最后加权。还有,牛客网有个offer对比神器,可以试试。再就是,这一步最好多问问别人,问各种年龄段、社会身份、从事行业的人,他们的意见可能不同,但是视角是很有参考价值的,对自己的选择视野是一种极大的补充。
7.2 接下来我要说的完全是一己之见,看看就好。如果可能,还是推荐第一份工作去大厂,有多大去多大,工作是马拉松不是百米冲,三五年以后指不定自己在哪,因此平台能够给你的眼界是很重要的,而且大公司的规范流程也是对自己成长很不错的约束。但是,凡事都有例外,而且往往富贵险中求,所以,看自己吧。另外就是,公司强不代表你所在的部门or小组强,因此一定问清楚部门,想方设法得知部门的情况,包括不限于是否边缘、发展前景、leader如何。还有想说的是,搞软件还是去北上广深,我问过很多师兄,无一例外都不推荐留成都,少不入蜀还是有道理的,自己的天花板很快到达,容易瓶颈。但是去北上广深这些氛围好,视野广的地方,到时候回跳成都,应该是另一番景象,总之,不是特别的原因,不要贪图眼前的舒适。不过说到底,工作只能自己选,别人说再多都是别人的经验。
8. 两方、三方、档案、报到证、户籍
8.1 两方指的是你&公司的协议,只要内容合理,是受到合同法保护的,也就是违约后违约金是需要赔的(理论上),所以签的时候还是慎重吧,不要随意签订。三方是指你&学校&公司的协议,这个比两方约束力大,更是要慎之又慎,而且毁三方要比两方麻烦。
8.2 档案、报到证、户籍本来想自己写的,后来发现这个学校研究生就业的官网,简直是巨大的宝藏,不说了,没弄懂的少年去看吧。http://yjsjob.uestc.edu.cn/artic ... 0-a41c-2238711ad5c4,这个网站还有上海落户的事项说明,所以要充分利用学校网站资源
洋洋洒洒居然四五千字了,有点虎头蛇尾(我懒,哈哈),不过想说的基本上都说了,最后的最后,祝大家都能找到传说中“钱多事少离家近”的工作,哈哈
附录(一些记录的知识点)
比较乱,想到哪里写到哪里
设计模式:https://design-patterns.readthedocs.io/zh_CN/latest/
Java集合(ArrayList,HashMap源码实现)
SQL:范式,调优,锁,索引(种类&实现&优化)
Tomcat,SpringBoot/MVC
Java锁(各种分类,乐悲观/公平非公平/重入/独享/分段/自旋),多线程,JUC包(重点,并发集合和AQS框架)
数据库ACID
分布式CAP理论
JVM,GC
JDK新版本特性(5,6,7,8,9,10/11)
Java线程池
Java NIO(select/poll/epoll)
topK算法,Hadoop二次排序,Spark单词计数
高并发,负载均衡,配置服务
Redis
经典算法/数据结构:快排,二分,图,树
Kafka(提到的挺多的)
HTTP/HTTPS/TCP/IP:https://github.com/skyline75489/what-happens-when-zh_CN
微服务:网关,熔断,治理,发现
文章转载自电子科技大学官方论坛:清水河畔/就业创业/藏经阁,应作者要求,全文没有改动