跟我一个学校,一个学院,隔壁专业的学妹,春招拿到阿里暑期实习 offer,秋招拿到了阿里、网易、滴滴等大厂 offer,真的很厉害! 看看她的秋招之路,对于马上参加暑期实习、秋招绝对是有帮助的,还有一些技术点(Java相关)、心路历程的分享,写的真好! 下面是作者全文,请仔细认真阅读!
个人背景 首先,我来说明一下我的情况,本人是一个非 985 非 211 非科班的三非辣鸡本科生,本专业是通信工程,刚刚步入大学的时候,我一门心思只想着要好好学习,考上名校的研究生以弥补自己因高考失利没能去名校的遗憾。 但是我也不是很清楚我们专业到底是干什么的,也提不起什么兴趣,然后就有一段很尴尬的时期,就是为了那种不是很确定的、可以感受到的目标坚持,有点儿像一拳打在棉花上使不上劲儿,很迷惘,虽然也不是很明确自己想要什么,但是我还得继续努力呀, 我所能做的就是把目前正在做的事情做到最好,然后在走的过程中找到真正想要的! 编程之路 听学长学姐们说编程蛮重要的,不管是考研复试或者其他,但是我们专业大二的时候才开这门课程而且谣传我们学校的老师教的不咋地,所以就报了一个班,在哪里遇到了我的引路老师“老范”,
于是一入编程深似海,从此假期是路人。 其实选择编程也主要是因为有两点:1、有直系学长学姐选择了这条路,并且拿到了不错的 offer,看起来感觉蛮精彩的。2、对于编程我可以大概的知道自己在干什么,努力的目标比较明确,而且自己写出代码的时候蛮有成就感的,就像打游戏好的人喜欢打游戏,唱歌好听的人喜欢唱歌一样,所以相较自己本专业而言就比较喜欢编程,而且搞技术这也比较适合我的性格。
大一大二的时候主要就是进行了一些基础知识的学习,像 C 语言、数据结构与算法、设计模式、C++基础、硬件组成原理、多媒体、计算机网络、操作系统、软件工程、数据库等(我:这才是大一、大二应该做的) 。 我是选择 java 后台进行深入学习的,所以后期主要攻的是 java。前面学的这些东西都比较散一些,学的时候只是知其然,大二暑假的时候和朋友们一起做了一个电商的小项目,这也是我第一次完整的动手做一个东西,从数据库的设计到框架的选择,整个项目全程参与,虽然技术含量不是很高(因为鄙人是个菜逼啦),但是也收获了很多,做项目的过程中慢慢知其所以然。 当时的自己真的是不够勤快,还总是偷懒,知道要努力拿到一个好 offer,可是这个目标分散到每一天真的不好坚持,人都是有惰性的, 老范曾经说偷懒都会以打脸的方式还回来的 ,鄙人深有体会,所以衷心的奉劝大家,在时间很充裕的时候还是要勤加练习,多动手,大牛都是一行行代码敲出来的, 编程和其他的东西不一样,听懂了看懂了不代表真的会了,自己可以独立做出来东西才算真的会了,正如老话所说,眼过千遍不如手过一遍。从一开始就扎扎实实一步一个脚印来,未来某天你就不会累的像狗一样去把那些补回来。 编程之路漫长,坚持确实不容易,我自己有尝试过一个方法,也不知道对于除我之外的人有没有用,就是把一个大的目标分散成一个个小小的目标,每天给自己一定的工作量,每日三省吾身,早上醒来想一下,我哪些懂的不是很透彻,我今天要把那些搞懂,还要学哪些新东西,中午的时候再想一下我今天的进度咋样了,下午要不要加快一下进度或者适当放松一下,睡觉前再想一下。(我是给自己定了好多个闹钟时时提醒自己,因为我真的不是一个勤快人儿~),这样愧疚感就时时刻刻提醒着我,督促着我。 如果你从进入大学就已经明确要走编程这条路的话,大三下学期就应该出去实习了(大牛们请绕道,我知道有不少人大二暑假就去实习了的~)我在大二暑假的时候只知道大三就要找实习了,但是却不知道要干什么,不知道一份优秀的简历要做成什么样子的,不知道笔试面试要准备些什么,不知道秋招春招的时间,甚至不知道在哪儿投简历,更关键的是我没有一点儿意识到我的时间不多了,丝毫没有危机感(不要嘲笑我,我真的是个辣鸡,这只是一个垃圾的自述而已!可能没有人比我更垃圾的了!),大三的十一假期过后,看到同级的大佬在朋友圈 show 自己的大厂 offer,我才意识到我落后人家辣么多!我的求职之路才真正开始了!!! 我也不知道自己是怎么度过这么尴尬的时期的!!!现在想想依然觉得尴尬!!!!如果你是个软件人,你首先一定要对我们行业的行情了解呀!(说给像曾经的我一样的小伙伴~),你可以去问问自己的学长学姐,可以问问老师,可以 下载牛客网、脉脉这些app,上面有你想知道的一切 (我这个垃圾大三才知道这些app的). 找实习我觉得越早越好,当然这个可能也是因人而异吧,我仅仅发表一下自己的观点,我觉得 所有人说的面试经验什么的都只是仅供参考,真正的面试经验还是要自己多面几次才能真正找到适合自己的。 我本人真的不聪明,可以说蛮笨的,所以笨鸟先飞吧,我大三第一学期就开始找实习了(实习简历可以在实习僧上面投递,也可以在公司官网上面投递,但是大三第一学期这个时间节点大多数是招应届生的,所以官网上面可能就没有投递通道,牛客网上面也有很多内推)大三第一学期投递的实习基本上没有笔试,只要简历筛选通过就可以直接参加面试的。 大三第一学期我投了三家,滴滴,字节跳动和京东(说真的,我现在有些后悔,第一次面试我应该先投一些小公司试试水,然而当时的我不知道,只想到这些公司自己都挺想去的,于是用他们试了水,当时的我并不知道面试会留档!!!是真的会留档!!!(滴滴我不确定,字节跳动和京东应该是有的) 面了这三家我都是一面挂,自己当时还心存侥幸希望自己可以过,但是现在想想当时真他妈傻逼,面试的时候自己总是尬死在那里,空气冷的快结冰了,要么是问的我不会,要么是问的东西我会但是表达的总是不到位,总结下来就是我还需要加深学习!!!三次惨败的面试经历让我痛定思过, 于是寒假在家里大门不出二门不迈窝在房间里没日没夜的补欠下的! 还有就是如果你比较心仪某家公司,千万不要拿它去试水,你可以先投几个小公司面面,找找感觉,然后准备好再面心仪的公司。 知识储备 以下是自己总结的一些比较基础的知识点,可能有些不是特别全,仅供参考!
Java SE: java基本语法,包含基本数据类型、拆装箱机制、String、StringBuffer、StringBuilder,java特性,关键字,面向对象(面向对象思想、平台无关性、类和对象、成员变量和局部变量、匿名对象、封装、继承、多态、构造方法、重写与重载、抽象类与接口、内部类、值传递与引用传递等),集合框架及其源码,线程与线程池(线程创建、状态、状态转换及相关关键字;了解线程池概念、类型、执行过程),java锁,jdk,反射,io、nio和aio,序列化,注解,泛型,克隆,异常
Java并发编程: 并发与并行、线程与进程、线程池、线程安全、锁(乐观锁、悲观锁、CAS、分布式锁、synchronized锁相关的、阻塞、死锁),synchronized、volatile、sleep与wait、wait和notify、notify和notifyAll、ThreadLocal、写一个产生死锁的程序,生产者消费者问题、JUC包
Java EE: spring、mybaties、springmvc、springboot等开源框架及其底层原理和部分源码Servlet
数据库: SQL基础,JDBC基础(数据库、数据库连接池、事务管理、批处理)数据库索引(设计原理与概念、联合索引和二级索引)、数据库锁(数据库行锁)、了解InnoDB、数据库事务(ACID属性)、数据库连接池(概念、优点)、数据库表设计(字段设计、合理冗余)、SQL调优(慢查询、大量查询优化)、SQL97日志(unkdo、redo)、了解内存型数据库Redis、 MyBatis动态SQL语句编写
JVM: jvm内存结构、java内存模型、垃圾回收机制、jvm参数调优、类加载机制等
算法与数据结构: 哈希、树、数组、链表、八大排序、常用的查找、遍历、堆栈、队列等,可以多刷刷面经、LeetCode和剑指offer
设计模式: 常见的几种要熟悉,单例、工厂、代理、装饰、适配器、策略、观察者等(能力强者23种设计模式可以都了解嘀)
计算机网络: 网络分层,tcp/ip的三次握手、四次挥手、滑动窗口机制、滑动窗口下产生的粘包问题及其解决方案、tcp长连接心跳包机制、拥塞控制(慢启动算法和拥塞避免算法),tcp与udp的区别,常用http方法、GET和POST的区别以及http的状态码、https与http的区别、DNS的解析过程(在浏览器中输入www.google.com后执行的全部过程)、cookie与session。
操作系统: 进程线程的基本概念、进程的互斥、同步各种算法(比如生产者消费者、哲学家就餐问题、读写者问题)、死锁的预防、避免(银行家算法)和检测算法、进程的各种调度算法及其特点、进程间通信的方式有哪些、内存管理、文件管理、i/o原理。
Linux: 常用Linux基本命令,正则表达式、linux的文件、熟悉vim使用、$参数替换、编写简单的shell脚本、熟悉大小端模式。
工具: git、maven 个人简历 关于简历部分,得重点说一下,这个是脸面,是敲门砖。可以试想一下你本人就是 hr,每天浏览那么多的简历烦都要烦死了,你想看到什么样的简历?或者怎么样的简历可以瞬间吸引你的目光,你想给他一次机会?我有看过好多学弟学妹的简历,归结起来大概有以下几点常见的错误: 1、太过花哨,2、留白太多,3、措辞不严谨,4、内容没有条理,整片叙述没有重点突出,5、内容不真实。 关于以上这几点,我个人觉得: 首先,第一眼看见一份简历,整个页面很是“好看”,模板占据了大半页简历,再看到一句个人格言(还有些非主流杀马特的)Excuse me?(可能你们想吐槽谁会这么傻逼,.....但是我还真见过.......)自己有看到过一些比较优秀的人的简历,简历的模板都是尽可能简单就简单,个人基本信息不用太多,姓名年龄联系方式就行了,或者再加一个住址,然后背景介绍主要就是自己的求学经历,言简意赅的概括就行。 大概就是在哪个阶段在那个学校学习什么方向(像我这种垃圾,学校不怎么好,在学校也不怎么优秀的人都是一行就过去了),你要是在学校很牛逼,可以加上排名。然后就是一些
专业技能,这部分蛮重要的,最最重要的部分就是你的
项目经历和实习经历,这部分得着重好好写(下面会说怎么写这几部分),再然后就是所获得的证书呀比赛得了什么奖呀之类的荣誉展示,最后就是一个自我评价,这部分主要突出你的优点,主要就是告诉他们为什么选你。 其次,好多人的简历留白太多,习惯性说完一句话就换行,就很容易大面积留白,这样子看起来是挺方便的,但是总是觉得不是很美观,建议可以把几点归结到一起说,尽量避免这种情况。 然后,在写专业技能部分的时候一定得小心了,尤其要合理利用精通、熟悉、掌握、了解和学过这些字眼。你要是写个精通什么东东,那面试官会想,嚯~,可以呀,这口气不小嘛,然后他会天马行空的问你,从浅到深,从深到浅,想到什么问什么,因为他觉得你都会,不怼死你他就不是面试官(我反正没见过谁写什么精通,因为我本人很菜,没接触过什么超神级别的人物,大神们请绕道,不要笑话本菜逼啦~)也不要都是些学过,了解之类的,那面试官会想你这样是觉得我们公司是有多好进呀! 大多数都是用熟悉掌握这些字眼啦,根据自己的实际情况写,还有就是简历
一定不要作假!
不要作假!
不要作假!面试时留的泪都是写简历的时候自己给自己挖的坑,不要把自己不会的东西写上去,要知道面试的时候大多数都是紧扣简历问你的,问哪里不一定,面试时间有限,万一问你简历上的什么东西你不会,面试官才不管你其他的会不会,他一定会以偏概全觉得你不行!很减分的!写在简历上的一定都要会。 最后,写项目经验和实习经历的时候一定要会使用
star 法则,不要满篇叙述没有重点,就写在什么情况下使用什么技术做了什么东西最后结果怎么样就行了,
重点突出你的贡献和一些的技术亮点(面试的时候应该就会自然而然的问到这些,准备项目经验的时候就比较好准备一些,面试官也有的问,不会随便想到什么问什么) 笔试经验 整个求职历程我没有做过几次笔试,就我所做过的笔试来说,感觉大多数都是 LeetCode 和剑指 offer 上面的,再稍微改改,大都是换汤不换药,但是有些大厂不一定按照套路出牌,没事了可以好好刷刷算法题,大多数没啥问题, 春招找实习的大都能通过获得面试机会,秋招就不好说,我觉得可能招的是神仙 (也有可能是我太菜了,哈哈)。 今年秋招我开始的比较晚,每一场笔试我都打起十二分精神,通过率都蛮高的,但是好多都是笔试结束之后就杳无音讯了,我至今都很迷。还有就是笔试还是安分一些吧,千万不要被标记为作弊!!!!不然你会后悔的!!!会后悔的!!后悔的! 春招之路 经过大三寒假的加深学习和刷过数不清的面经以及对自己三次失败面试经历的总结,我满怀希望又略带忐忑的开始了我的春招,以往就是刚过完春节大厂就陆续开始招实习生了,刚过完年我先投了好多小公司,想着先试试水,但是都没什么反应,有一个在蚂蚁金服的直系学长说帮我内推到他的部门,不用简历筛选,直接面试,我的心里还是略有恐惧的,但是机不可失时不再来,生活不像做菜,等什么都准备好了再下锅。 然后我的春招面的第一个公司就是阿里巴巴,总共四轮技术面+一轮hr面,每一面面试之前面试官会给我打电话和我约一个时间,并不会像传的那样面试来的猝不及防(可能也是分面试官吧,我可能也是运气好),我基本上每一面之间间隔都是一个礼拜,给自己留够缓冲的时间(总觉得自己准备的不够~总觉得时间不够用~),每一面我都用尽全力把自己最好的一面表现出来,在阿里一面结束后真的忐忑了许久,直到我学长给我透露我一面过了,我才长舒一口气,终于破了一面挂的魔咒,在得知阿里一面过了的消息之后,好运好像接踵而来,投递的那么多简历终于有了回应,紧接着面了腾讯一面,三七互娱,不再害怕面试,面试过程中像是和老师在聊天一样,整个面试下来感受最多的就是,
越是大厂越是注重基础知识,基础要扎实!
基础要扎实!
基础要扎实! 还有就是面试大都是扣着简历问你的,在简历的基础上可能会扩展一些,一般一面基础面是不会超出这个范围的,除非你的简历上面面试官实在没啥问的,再或者就是你太优秀了,面试官还想看看你有多优秀。
面试之前一定要做好充分的准备,挑一个自己精神状态比较好的时间段,把自己简历上写的东西可能问到的问题都统统准备一下,千万不要打没有做准备的仗, 鄙人就在这个上面栽过跟头,面过大厂之后再面小厂稍微有些松懈,然后自己觉得自己回答的还 ok,但是面试官反手一个挂,就是这样神奇! 二面的时候一般还是会问一些基础知识,还会问一些项目经历,有实习经历就还会问一些实习经历,比一面的面试更加灵活一些,面试的话还有可能让你手撕代码,这种代码一般不难,就是在线上的编译器上没有 debug,不好排查错误,有一些不太容易发现的错误可能不太好排查,有一些面试官会让你运行,有一些面试官只是让你讲一下自己的思路,还有就是常用的包要记住,不要在线上写代码的时候忘了,这样子比较掉分,面试官会觉得你不专业,你的代码量不够。 面试一般开始的时候都会有一个简单的自我介绍,这个时间长度一般在两三分钟内,你可以根据面试官的表情,动作进行判断(如果是视频面试的话),然后选择快速结束自我介绍还是不着急,因为有一些面试官之前看过你的简历,所以对你的情况大致了解,你这样子就可以快速结束介绍,有的面试官可能比较忙一些,就在你自我介绍的时候才看你的简历然后问你,自我介绍也有一定的引导性,好多面试官都会根据你自我介绍时说的东西来提问你,所以不要给自己挖坑,带好节奏。 面试过程中遇到不会的问题可以直接说这块儿你不会,不要不懂装懂浪费时间(遇到你不会的你可以说这部分目前我还了解的不是很多,我下去会把这部分再进行加强巩固的~之类的) 然后不要冷场!不要冷场!不要冷场!不会没有关系,每个人多多少少都有一些知识盲区的,不是非要每一个问题都要对答如流,如果真的是这样那反而觉得有些假了 。如果遇到不会的赶紧跳过去,如果面试官没有立马问你其他的问题,你可以自己说自己对哪里比较熟悉,或者刚刚不会的问题的相近的问题之类的,赶紧转个话题。 一般面试官问完之后都会说一句我想问的问完了,你有什么想要问的吗?这个时候不要傻了吧唧说没有了,你可以问问他关于部门的一些情况,比如部门主要做什么的呀,用到什么技术栈呀,让面试官对你的面试表现做个评价,看看你有哪些可以提升的地方呀之类的。
三面基本上就是大 boss 面试,按照不同面试官的性格问的东西可能略有不同,大多数就是问问项目,问问实习,然后在此基础上扩展一下,可能是你从来没有遇到的问题,比较灵活,再然后还可能问一些无关技术的闲话之类的。Hr面大多数就是性格测试、三观测试、然后和你谈 base 地等,基本上不刷人,如果刷的话,那应该是前面几轮技术面整体打分不是很好。
暑期实习
之前所做的所有努力只是想要拿到一个比较好的 offer,可是没想过自己可以拿到阿里的offer,在春招的努力下,真的拿到了阿里巴巴的 offer,喜悦之后而来的是不知所措,不知道自己下一步该干什么,瞬间失去了目标。也是第一次步入社会到工作岗位上,真的是小白中的小白,什么都不知道。
按照往年的转正率,只要春招进入阿里基本上都可以转正,所有的人见了我都这样说,慢慢地我的我自己心里也这样认为了,就只想着安安分分待到实习结束就好了,于是我没有准备秋招,一点点放松下来(其实如果你实习的时候好好表现,转正也是没问题的,我可能真的是个辣鸡吧,太慢热而且性格比较内向,不是很会表达,所以吃了蛮大的亏的)关于实习怎样才能表现的很好,我个人建议还是多有几次实习经历吧,自己去实习一次,印象更深刻! 前面说过我之前是一个很懒的人,所以真正动手实践几乎没有,项目经验真的少的可怜,理论和动手实操之间存在断层,所以初入公司开始跟进项目的时候有一个很长的适应期,这个倒也还好,一般实习就是增加项目经验的,大厂招实习生的时候对于这方面要求不是特别高,要命的是我自己的性格(可能是习惯吧),总是喜欢自己独立解决问题,除非实在用尽了自己所能想到的解决办法后才会去向别人求助,也比较内向一些,看见老大像老鼠看见猫一样就想躲,见面了因为就只是打声招呼,这样真的很不好!!! 作为一个新人出入职场,一定要多向前辈们取经,他们也都是从小白一路走过来的,我们遇到的问题可能曾经他们也遇见过,要多和他们沟通交流,一定要多沟通交流!一定要多沟通交流!一定要多沟通交流!他们可以帮助我们很快的适应自己的新身份,可以少走很多弯路的。 作为一个学生,刚刚到工作岗位上的时候还是带有很多学生气的,就像我,习惯性的你让我干什么我就干什么,也不知道主动去承担组内的任务需求,不知道自己去管别人要需求,要是想当一个混子的话这样蛮好的,但是我们来实习不就是想要高评级转正嘛,对于实习生的衡量标准无非就是看你实习期间所做的事情,还有你的潜力,所以尽可能的还是要对做需求,要主动承担组内需求,多向师兄老大展示自己的能力。我实习的时候就是吃了这个亏,产出量不多,但是不是因为我不会而是我没有机会做,这就很憋屈,所以还是要好好抓住每一次机会呀 ! 我的秋招最后是以失败结束的,三个多月的相处,真的很喜欢哪里的每一个人,也很感谢哪里的所有人,尤其是带我的师兄和老大,长了不少见识,遇到了很多优秀的人,也成长了很多,走的很匆忙,也没有好好的说声再见,没有当面说过认识你们真的很开心!祝好。 秋招决战 我的秋招开始的是真的晚,九月初才做简历投递,九月份唯一的面试机会就是我学姐帮我内推的美团,阿里转正失败后又尝试着联系其他部门捞一下,但是简历被锁住了也没法再参与校招,本来想着还可以去腾讯,后来被告知春招的笔试被标记作弊(我们一群人春招的时候组团做笔试题,有人没有改代码),腾讯一旦被标记作弊是终生!腾讯也去不了了!所以大家笔试还是不要钻缝子,欠下的总归是要还的,一下子两大互联网巨头都去不了了,瞬间心凉了半截。 面美团的前两面表现非常好,求生欲异常强烈,面试官的评价也超级好,到第三面总监面的时候我有一些害怕,因为在阿里转正答辩的时候面试表现不好,所以心里对于这种大 boss 还是有一些些害怕紧张的,这样的结局就只能是悲剧收场了。 十月中旬,我还是 0 offer,没有笔试也没有面试,身边的人好多都拿到了大厂 offer,而自己真是个垃圾,不管大厂小厂我愣是一个 offer 都没有,每天顶着巨大的压力,不敢出门,怕遇到熟人问我签到哪儿了,也不敢和爸妈说,怕他们担心,依稀记着自己坐在宿舍一边大口吃饭,一边眼泪大滴大滴的掉下来,还把哭声调成了静音,吃完饭后立马收拾好心情继续学,继续准备,迎接也不知道什么时候会来的面试,那一阵子真是度日如年。 但是机会总是留给有准备的人的,后来等来了滴滴和网易的面试,也算是顺利,都斩获了高评级 offer,薪资也还不错,之后又被阿里给捞了,最终也收获了 offer。
所以一直坚持一直努力就对了!所有的辛苦努力是不会被辜负的,可能会晚到,但是一定会到! 最后的最后,面试的时候总是被问到为什么不考研,关于考不考研这个问题,还是根据自己的情况定吧,研究生是要读的,什么时候读可以自己看,我当时以为学软件就不用考研了,当我意识到我错了的时候已经有些晚了,所以才选择先工作的。 ps:关于考研还是就业,我一直都是站在考研的立场,如果你还迷茫,我是非常支持考研的,从长远来看,工作三年真的比读研三年收获大吗?未必,关于读研还是工作之前文章写过,我觉得还不够,打算在写一篇读研 VS 工作,每个人都有自己的想法,做好选择,人生是对自己负责的! 本文作者:不易
留言: 点开我,留言说出你的想法!
推荐阅读: 秋招之战,大学时代的终极之战! 秋招之战,未来三个月的打法指南(解惑秋招核心问题) 秋招之战,简历书写,实习不匹配,时间投递等相关问题! 认真的人 自带光芒