实习过程中如何备战秋招
备战秋招帖-提供给秋招总结帖子:https://www.nowcoder.com/discuss/960729?source_id=profile_create_nctrack&channel=-1
1、实习回忆录(总结在下面,可以跳过该部分):把该留恋的写下来,帮助过我的我都会铭记。
饭桌上的提醒:
组内氛围:
给我讲述职业方向和规划的同事张:
突然来的领导波:
我的第二任导师丁:
该说再见了
2、实习中我是如何准备秋招的?
-
要多看文档,各个公司都会有类似wiki的文档,一般再上面都会有组内业务的设计方案。看不懂的地方,我都会将疑问记录下来做成一个文档,带着问题去找导师。
-
当导师给你任务之后,都会有一个排期(因为是实习生,排期一般都会给多一天两天的样子),我是抓紧一切时间快速将其完成,假设5天排期2天就做完,剩下的时间偷偷刷算法,看八股文。
-
敢于接手有难度的任务(一般有些难度的东西导师肯定都会询问你能不能做,不要拒绝或者犹豫直接说能,实习生怕啥),因为全是crud秋招面试你说什么,说你crud的需求面试官内心毫无波动,你挂的几率增加或者得到sp、ssp的几率减小。
-
假设导师给的全是crud或者很low的东西怎么办?文档上翻你导师做的东西,肯定能找到你觉得难的部分,然后文档和代码结合着来看(不出意外很多地方都是一头雾水,把所有问题记录下来一起问你的导师,好的导师一般都会全链路带着业务上游和下游给你说一遍,细节的部分还是要自己去看代码),我的同事们告诉我,部门做的东西你要是懂了,这个东西就是你做的了。
-
-
业务分享会,我都会主动的跟着去听,因为可能和自己做的模块有关联,可以帮助我们更好的了解上下游服务。(ps:很有可能出现没有人叫实习生去听的情况,自己去就行了)
-
技术分享会,一定要去听,或多或少我们都可以学到东西。(ps:不论是面试官或者hr问你在公司做了什么学到了什么,你可以说经常参加技术分享会学到了什么内容,不管面试官还是hr从哪方面来度量你我认为这都是一个加分项)
-
自己做的项目和在公司学到的东西总结成文档,方便自己面试前复习。
-
我是回家就想躺着刷手机,所以我学习都是在公司里完成再回去睡觉,作息10107。(这条因人而异)
-
周六周天我也去公司蹭空调蹭水蹭电不想学了就看剧,当然我大部分时间都在刷算法,一天刷一遍top100还是可以的。
-
时刻关注牛客动态,不论是提前批还是正式批,通通都要投递。
-
我的建议就是实习中不能放松自己,时刻为面试做准备。
-
all in实习公司是最智障的做法,每当看到牛客发帖说自己all in没转正成功我都想给他两脚。
-
大部分提前批在7月末就开始了,还没准备好,那是你自己的原因造成的,只能说会错过了n多高薪机会。
-
我个人认为提前批难度和正式批难度一样,完全没感觉出来有哪里不同。
-
-
面试最好是不要让领导发现了,要转正的同学得注意。
- 想转正还是需要一些人情世故的,这个大家自己品。
3、其他
实习第一个需求,设计加实现做了一周,也是我秋招面试和每一个面试官都吹过的牛。
如下有两个计算公式
已知:b = 5; a = 1;
1、d = (a + b) * c;
2、c = (a * b) + d;
需求:
一、如果有循环依赖,给出提示
导师给出思路:
1、spring的解决方式用缓存
我的思路:
1、对于需求一是一个有向图,我们可以使用拓扑排序的方式来做判断是否有环就行。
实现流程:
要点:
-
图的构造采用Map<String, List<String>>领接表的形式进行构造
-
入度表采用Map<String,Integer>进行统计
步骤:
-
遍历所有依赖数据,初始化入度表和邻接表。set集合进行去重,保存映射关系。
-
遍历所有依赖数据,统计节点个数。
-
根据依赖关系,计算所有节点的入度,构造邻接表。
-
所有入度为0的节点全部放入队列中。
-
只要队列不为null,弹出队列首元素,将其相邻节点的入度减1。若减1之后,其入度为0,需要将其压入队尾等待出队。
- 队列为null,判断是否遍历了所有节点,返回结果。
2、对于需求二
-
思路一:复用需求一的代码,假设5行公式,第一次给第1行公式,第二次给第1+2行公式。当返回false就说明出现环了,那么出错的位置就在第2行。(我第一次就用的这个代码给领导看,让我回去再想想)
-
思路二:不让我重复的创建图,那么我只在第一行公式进入就初始化图,后续的公式按照顺序进来之后进行图的拼接就可以了。由于图在判断是否有环的过程中被破坏了,那么我们利用深拷贝将图保存,如果检测正确在将图回溯等待下一个公式进入把图拼接好就行,检测失败直接返回我们记录的行号就可以了。
#暑期实习##实习##春招##秋招##滴滴##Java##校招##情感#