一个四非学生的2021暑期实习春招总结

孙锺
• 阅读 2336

此时是2021.4.21,大三下学期的第八周,距离我开始春招正好满一个月。

我现在还是印象非常深刻,非常记得2021.3.22号这天发生了什么。

那天我把项目,一个即时通信系统给写完了,然后把文案发给女朋友,女朋友用figma找了一个简历的模版,然后她写了一个我感觉排版上挺不错的简历。这里十分感谢女朋友。

然后就开始了我长达一个月的春招。一开始只投了一些广州的公司,并且想法还是只投大公司,小公司只拿来练手。

包括位于广州的腾讯微信,虎牙,三七互娱等等。

先说说微信把,比较幸运的是,投了微信没多久就发起了面试,得益于腾讯的制度,腾讯的制度是要么三个工作日内,要么六个工作日内会发起面试。这时的我以为得到一个面试机会是非常容易的,一个月后的我却没想到其实这已经是巅峰了。

微信发起了面试约在了一周后的星期一晚上,平台是腾讯会议。这期间还跟女朋友吵了一架。

我准备了一个星期的面试,这个时候的我主要专注在项目上。这个时候的我还没有想到未来的一个月我会多痛苦。

结果真正发起面试的时候,问的大部分都是八股文。我记得我数据库的部分很多都没有打上来,比如聚集索引,这个名词我从来没有听说过。然后还问了多进程的通信方式,我知道有管道、命名管道、消息队列、共享内存这些,但是一问起底层来我就不知道原理。

最后是两道题,一道题是双向链表插入和删除,这道题比较简单,做出来了但是做的时间比较长;另一道题是给一个完全二叉树,返回节点数,要求时间复杂度小于O(n),这道题没有想出来。

然后其实当时心态真的我也不知道为什么这么乐观😢觉得自己会过,然后第二天下午去腾讯校招官网查进度,挂了。

当时其实是抱着学习的心态去面试的,但是面试挂了,其实说到底还是有点不甘心的把。

之后的我变得非常焦虑,开始各种公司都投。腾讯面完后时间是2021.3.30。也就是说我从四月份才开始海投。

这里就是春招犯的第一个错误了:投的时间太晚了。

春招的战线其实很长,从过年前到四月底。春、秋招又分提前批和正式批。春招因为我亲身经历过,比较了解,一般提前批是一月初到二月中旬这段时间,而正式批是2月中下旬开始,到4月中旬。

这里我给出我第一个建议:尽量早投。当然晚投也有好处,那就是准备会充分一点。

但问题在于,headcount(hc),也就是名额。hc是一定的,有一些岗位,一旦招够人了就不招了。你越晚投递简历,就意味着名额越少。而名额越少,意味着对你的要求也会变高。与此同时,越晚投递,我感觉hr的处理效率也会变慢,不知道对不对。因为你早投的话,hr要处理只有简历,但是你晚投递的话,hr还要面对各种各样的面试安排,入职接待等等。花在看你简历的时间就会变少。

现在想想,如果我二月底三月初就投了,那可能会多一些面试机会。

在我从四月份开始海投之后,我就一直等消息。投了一共四十家公司左右吧,有收到一些笔试的机会,但大部分都石沉大海,连简历被看的机会都没有。

这里我也给出我第二个建议:如果有内推的话,可以尽量找内推

这里要说一下内推这件事,内推怎么看待呢,我觉得是,肯定是有用的,但其实用处没有想象中那么大。首先就算你是内推的,该面试还是面试。大部分公司对于内推,都是免去简历筛选,直通笔试,很少有公司能免笔试。所以其实该走的流程你还是要走。

但是呢,我在四月份才进行海投,这个时间其实已经非常晚了,再加上我的学校其实并不算非常的好,只是一个双非本科。没有内推,导致了很多简历都石沉大海。也不是说有内推就一定有笔试/面试机会把,只能说机会会多一点。而且内推还有个好处就是会优先处理,各种流程上可能会短一些。比如说微软,我3.26号得到了笔试的机会,给了3.26-3.28这三天任两个小时内做完,当天晚上就完成了笔试,然后等到4.12才被发起面试,说4.19面试,笔试到面试中间间隔了三个星期。同时我知道的跟我同批完成笔试的,有一些4.7号就面试了,短短一个星期。

在得到一些公司的笔试机会后,我开始有一段时间连续做笔试。这时候我才发现我自己对于算法知识上的缺失。

这里我也给出我第三个建议:尽量早点刷LeetCode

其实我从去年开学10月份左右就开始准备了,会上牛客网看一些面经之类的东西。然后看面经有不懂的地方会去总结。但是等到真正投简历,真正笔试的时候才发现,算法真的很重要。算法这个东西的重要程度,大概是怎样的呢。

首先笔试会考算法,一般是两个小时完成四道题,或者一个小时完成两道题,差不多平均半个小时一道题的样子。然后难度的话,一般四道题的卷子会有一道LeetCode上Easy难度的题,两道Medium的题,一道Hard题;两道题的卷子一般是两道Medium的题,也有一些是一道Medium一道Hard。一般四道题做出来三道左右就比较稳,不过也要看排名,看别人的做题情况。

面试相对来说会简单一些,因为其实面试给你的时间并不是很多,前面会问你一些项目相关的内容和八股文,而面试一般在一个小时以内把,给你做题的时间,可能一道题最多给你三十分钟左右把。面试一般是Easy和Medium居多,少数会出Hard。

刷题时间的话最好提前三个月开始刷题,如果你是打算冲提前批的话,就拿春招来说,想1、2月份就开始投简历的话,那么9月份就制定刷题计划是比较合理的。刷题量的话我也不好说,因为我也没怎么刷题😭(春招犯下的最大错误)。据说能达到Easy题和Medium题能10秒内看出思路就差不多了(一些大佬说的)。

刷题可以在LeetCode上刷,上面的题比较全,然后是针对某个公司针对性的刷题的话,可以看一下CodeTop这个网站,也是我今年春招才知道的一个网站。书籍的话,我看过比较好的是《labuladong的算法小抄》,上面有一些题型的总结,原来作者在LeetCode上的一些题解,作者把他们总结到一起,作为Github上的一个项目,后来这个项目比较火,这个作者就直接出书了。然后还可以看看《剑指Offer》《编程之美》《程序员面试金典》,《剑指Offer》这本书也比较值得推荐,上面的题都比较经典,作者是微软的一个工程师。然后《编程之美》这本书上面也是微软的一些面试题型。《程序员面试金典》这本书就相对来说大本一些(贵很多),上面的题比较多也比较全(这本书也是女朋友给我买的生日礼物)。

刷题顺序据一些大佬说,先从树开始刷,因为跟树相关的题都比较套路。然后一些板块无非就是动态规划、回溯法、二分查找、哈希表、BFS和DFS、数据结构。这一些是重点考察的对象。数据结构无非就是,我前面提到的树,还有栈和队列,链表。少数情况下会考察堆和图。堆和图应该只用掌握基本的算法就行,比如堆就是堆排序,节点如何下沉或者上浮。图就是BFS和DFS,少少数情况下考察Dijkstra算法。

总的来说,在整个面试过程中,算法绝对是非常重要的一环,面试无非就是,算法+八股文+项目。算法要是不行的话,首先笔试关过不了,其次就算笔试过了,或者免去笔试直接得到了面试机会,你前面八股文、项目如果不是回答的非常出色的话,你算法写不出来,还是过不了面试。所以真的要重视算法,尽量在你想投递简历的时间提前三个月开始刷题,并且要有一个长期的刷题计划,比如每天要刷多少道,Easy、Medium、Hard比例是多少,要刷什么类型的题,不要三天打鱼两天晒网。

从3.22号开始投递简历,到今天4.21号,整整一个月时间,我只收到了两家公司的面试。一家是腾讯中的微信,前面有说到,然后另一家是微软。一共是三次面试机会,不多,其中微软是两轮平行面。在面试过程中,我又发现了我对于八股文知识的缺失。

这里我给出我第四个建议:尽量往深处了解

之前也说到从10月份就开始准备春招,但那段时间主要是看面经来学习,这就导致了一个问题,我了解的东西看似很多,但其实都不是很深入。比如说微信面试官问我,进程的通信方式,我看过面经所以记得有消息队列,共享内存等等,但是面试官一旦深入问我,我就答不上来了。面完微信后去了解才知道,比如消息队列,无非就是内核中的一个链表,每个节点都有一个标识符。再比如,Mysql索引为什么使用B+树而不是B树或者AVL树呢,了解了B+树的底层后才知道说,B+树其实树的高度会矮一些,并且查询效率比较平均。

而我之前呢,是处于一种,知道Mysql索引使用B+树(当然也有哈希索引等等),但是不知道为什么使用B+树这种状态,就了解的比较浅层。而且其实这种深层的了解,本质上也是在学习算法,底层都是数据结构。比如为什么Mysql索引要用树(查范围算法复杂度O(logn)),为什么epoll返回的集合不限长度,只能内存大小有关系(因为返回的是链表的头节点)。

了解一个知识最好把他的底层也了解了,这样面试官问起来才能游刃有余。

前面说了算法,说了八股文,最后再来说说项目。

通常来说,实习生一面会问八股文,然后一面过了在二面才会问项目(然而我两家公司都没过一面Orz)。项目的话,其实我也没啥心得,我感觉写一个自己比较感兴趣的项目会是一个比较好的选择,现在是一些秒杀项目比较火,我感觉也不一定要写这些,我见过别人写过一个RPC的框架,我感觉也是一些比较好的选择。然后二面的话听说一般会问一些项目扩展,比如让你设计一个系统之类的。

说了这么多,最后总结一下我的春招吧。

首先是一开始的方向就不太对,其实10月份那一会就应该开始刷题了,算法这块比较薄弱。然后那段时间主要复习是看面经,主要是一些八股文,但看八股文也不深入,大部分处于就是只了解一个名词的程度。然后项目也是二月份才开始做,也确实是太晚了。

整个春招导致的结果就是,投了40家公司左右,大部分简历投了石沉大海,大概10家左右有笔试机会,只有2家有面试机会,分别是腾讯和微软,腾讯是因为免笔试,严格意义上来说只有微软是过了笔试的。两家公司都是一面挂了,目前处于0offer的状态。

反正我是对暑期实习不抱有任何希望了,死心了,也承认了自己的平庸。目前想法的话是直接准备秋招提前批把,现在是4.21号,秋招提前批大概是6月中旬左右吧,也就是还有大概1个半月的时间学习。这一个半月的话,算法题是要重点练习的。刷题计划还没想好,但肯定会好好刷题的。

虽然这次春招确实失败了,一个offer都没有,但我想这并不是终点。高考是明年的春招,这次顶多是模拟考而已,找到自己的问题并且改正就好了。我还会回来的。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0
Stella981 Stella981
3年前
Linux日志安全分析技巧
0x00前言我正在整理一个项目,收集和汇总了一些应急响应案例(不断更新中)。GitHub地址:https://github.com/Bypass007/EmergencyResponseNotes本文主要介绍Linux日志分析的技巧,更多详细信息请访问Github地址,欢迎Star。0x01日志简介Lin
Wesley13 Wesley13
3年前
mysql查询每个学生的各科成绩,以及总分和平均分
今天看一个mysql教程,看到一个例子,感觉里面的解决方案不是很合理。问题如下:有学生表:!在这里插入图片描述(https://oscimg.oschina.net/oscnet/07b001b0c6cb7e0038a9299e768fc00a0d3.png)成绩表:!在这里插入图片描述(https://oscimg.o
Stella981 Stella981
3年前
Hibernate纯sql查询结果和该sql在数据库直接查询结果不一致
问题:今天在做一个查询的时候发现一个问题,我先在数据库实现了我需要的sql,然后我在代码中代码:selectdistinctd.id,d.name,COALESCE(c.count_num,0),COALESCE(c.count_fix,0),COALESCE(c
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这
孙锺
孙锺
Lv1
仰天大笑出门去,我辈岂是蓬蒿人。
文章
3
粉丝
0
获赞
0