引言
在写作这篇文章的时候,我已经提交了离职申请,离职之后,我的研究生实习生涯也就此告一段落了。谨以此文记录一下实习生涯中的付出与收获。
论文啊论文
读研可以说是我学生生涯的最后一个阶段了。
刚刚入学的时候,导师请我们同门吃了一顿饭,吃饭的时候有研二的师兄师姐,还有我们几个青涩的研一同学,师门中唯独缺了研三的师兄。导师告诉我们,研三师兄去北京京东实习了,还告诉我们,只要我们完成论文,就可以去实习。
师兄的经历和导师的保证,在我心里种下了一颗种子,我的目标非常明确,那就是完成论文,然后争取实习机会。确定了目标之后,我很快就投入到了写论文的工作中。
我的研究方向是图像篡改检测,这个方向其实和图像语义分割非常相似,只不过识别的不仅仅是一张图片中的某个类别的物体,取而代之的是篡改的区域。这里我不太想做过多学术讨论,就简单介绍一下写论文的心路历程。
在研一暑假入学前,导师就给我们布置了入门任务,那就是看一篇语义分割的综述论文,然后动手用pytorch复现segnet网络。这里不得不得提一下我导的教育理念,我导完全秉持着“师父领进门修行在个人”的教育方针。这个方针并不适合所有人,但是至少对于我来说是非常有用的。在复现了segnet之后,我对于深度学习和语义分割,甚至包括篡改检测有了一个基本概念。下图就是segnet网络的整体结构,非常简单。
在有了关于研究方向的基本认识后,我导给我指了一条路,那就是去大量阅读图像视觉方面的著名论文。没错,是图像视觉方向,并不止局限于语义分割或者篡改检测,因为科研很多时候是需要从相关甚至不相关领域汲取灵感的。
在这个阶段,我每天都在找论文,读论文,做ppt,开周会汇报。读的论文大致分为两类,第一类是各个领域非常经典的论文,包括语义分割,篡改检测,目标检测等;第二类是这几年顶会的论文,包括CVPR,ECCV等。我现在也不记得我具体读了几篇论文,反正就是读了很多很多,然后渐渐就搞清楚了做科研的方法和套路,你没有听错,科研(或者说写论文也是有套路的),在这里就不细说了。
在完成了原始积累后,我就开始考虑自己的创新点和论文写作了。其实这个过程是最痛苦最漫长的,因为创新点很难找,我尝试了很多个方案都失败了之后,突然有一天灵光乍现,觉得可以在原来单类别篡改检测的基础上进行多篡改检测。这个创新点听起来非常小,但是已经足够我发论文毕业了。当我有这个想法的时候,马上就马不停蹄地开始行动。想要做这个创新点,最大的阻碍就是缺乏数据集,于是我马上下载了PS开始自己做篡改数据集,写第一篇论文的时候大概做了1000张篡改数据集。做数据集的过程是非常痛苦的,每天坚持做几十张,然后我就记得做了很久很久终于做完了。做完了之后就用pytorch编网络模型开始做实验,在模型上也要有创新,我的创新还挺大的。然后效果也不错,于是乎,在所有工作都完成后,顺理成章地完成了第一篇论文。投论文的过程其实挺跌宕起伏的,不过好在最后还是中了。我的第一篇论文的网络结构如下
要是对我的论文感兴趣,可以去知网下下来看看HRDA-Net:面向真实场景的图像多篡改检测与定位算法 - 中国知网
虽然只是EI索引,但我还是感到挺骄傲的哈哈。
实习,开始吧
在完成第一篇论文的投稿之后,我就开始想办法写第二篇论文了,因为我导明确我们要写两篇论文才能出去实习。第二篇论文其实就是在第一篇论文的基础上做更深入的研究,并且网络结构也进行很大程度的改进,导师对于第二篇论文是有野心的,打算投sci,这也导致在写作和实验方案设置方面有点不顺利,大修过好多次,直到现在都没投出去,不过这是后话了。
研二下学期除了一直改进第二篇论文之外,我在实习方面也有很大进展。我大概是从研二上学期结束放寒假那段时间开始找实习。在BOSS上投简历,然后收到了几家面试。其中就有广州永哲信息有限公司和广纳院。前者在我春节后就给我发offer了,并且接受远程实习,这就给我写论文提供了非常大的便利,我可以一边写论文一边实习。接下来我就详细说说我在永哲信息实习的经历。
我在永哲信息的实习是从今年的2月份到6月份,大概实习了4个月,实习岗位是java研发。再次我非常感谢永哲信息的老板保哥给我这个实习机会。公司很小,是个初创公司,主要业务是给别的企业或者政府做软件。
我参与的项目叫商密系统,由于保密协议,我就不介绍具体的项目细节了。这个项目大概就是接收企业发过来的日志,然后根据客户的要求对日志做一些解析,然后提供一些接口查询这些解析结果。项目是单体的springboot+mybatis+mysql架构的,可以算是个入门项目吧。我在公司实习的4个月,真的学到了很多很多,在遇到困难然后解决困难的过程中,积累了非常多的实践经验。
在实习的过程中,我也有在BOSS上继续投简历,找其他的实习,因为我始终觉得远程实习不太正式,有点像兼职的感觉。
期间我面过广纳院,经历了两次面试和一次hr面,最终是通过了面试,不过由于薪资给的有点低,所以还是放弃了。
后来在我师兄的内推下,我投了阿里云的实习岗。可能是因为是内推的原因,面试过程异常顺利。一共有三轮面试,第一轮是我师兄给我打电话告诉我应该怎么准备(一开始我师兄都没想到这就是一面);第二轮是我师兄的组长面的,他表示非常希望我能加入他们团队,然后象征性的问了几个问题,比如前后端分离的项目是怎么传输数据的这类;第三轮是团队老板面,主要问了项目经历,我就答了我在永哲信息的项目经历,最终顺利通关。只可惜最后到hr这里给卡住了,这里的可能原因很多,我也不太想深究,最可能的原因就是今年形势不太好,hc不多。总之,最终就是没能进入阿里云,挺可惜的。对了,这里补充一点,阿里面试前会有笔试,不过这个笔试其实说重要也重要,说不重要也不重要,我当时做了34分,平均分是35分,公司规定,如果笔试低于平均分的话要加一个笔试,不过这个加的笔试也就是走个形式,在线做一个算法题。面试最重要的一般是二面,因为二面的面试官一般就是你入职后的直系领导,他想要你的话hr和老板一般不会卡(当然也有例外,比如我这次)。
京东京东
在6月份的时候,我辞掉了在永哲信息的实习,全身心投入找实习。
这段时间我投了非常非常多的公司,最后拿到了两个offer,第一个是天津锐捷java,第二个是京东侧开。
先说锐捷,这段经历比较奇妙,当时面试的一个领导我是福建老乡,所以很轻松的给我过了,不过我还是辜负了他们,最终拒了这个offer,有舍才有得嘛。
再说京东,我在BOSS上投的是java开发,然后京东的领导招聘侧开的时候也是从java开发里面捞人,我就被捞了,后来就是加微信,用微信面试。一共面了三次,一如既往的,一面是同事面,二面是组长面,三面经理面。由于是测试开发岗,所以问的问题挺简单的,就是问怎么写测试用例。后来我很顺利拿到了offer。
6月底的时候我就来到北京开始实习。京东总部位于北京亦庄经海路地铁站旁,刚下地铁,我就被京东大楼的气势给怔住了,真的挺气派的。
不过我不是在这里上班哈哈,我是在京东总部旁边的凯恩帝上班。
不过在哪里上班其实没什么差别,都是打工嘛。
京东的工作和我的前东家很不一样,京东很大,员工非常多,部门也非常多,整个工作流程非常规范。而且,京东有一个中台部门,专门写中间件的,京东项目里使用的中间件基本都是中台写的。一个需求从提出到上线周期非常长。在前东家我一个下午能搞定的需求,在这边可能要一周甚至两周时间。也正是在京东,我见识到了大厂的工作流,接触到了非常多的岗位和人。虽然我是实习生,但是我的工作和正式工基本是差不多的,有的时候也要承受很多压力。
可以这么说,两个月的实习虽然都没怎么写代码(主要是做测试),但是我真的学到了很多,涨了很多见识。
对了,这边补充一点供大家参考。我觉得如果你想毕业后找工作,不走学术道路的话,实习经历是非常加分的。我自以为能拿到京东侧开offer,很大一部分原因是因为我有java开发的实习经历;后来我们组又来了一个实习生接替我的工作,他也是有java实习经历的。我记得网上有一个段子,说现在找大厂实习的要求就是有实习经历,我现在觉得这在某些情况下也是真的,毕竟现在真的挺卷的233。
尾声
我的研究生实习生涯马上就要画上句号了,实习结束后我要开始准备秋招,并且完成论文。回想起这半年的实习经历,我的感触还是非常多的,期间有非常多的心酸经历没有在文章中展现。不过人嘛,就是要向前看,一味回顾过往也没有什么意义。继续前行,不惧风浪,永远相信美好的事即将发生。加油,奥利给!