返回信息流白驹过隙,北邮已经待了快7年的时间。从步入大学时光,选择修哪位老师的哪一门课,参与志协、学生会,保研的历程,读研的时光,到最后的择业,一路走来,遇见了很多的帮助和有益的分享。
我把我实习到秋招的心得,也做一些简单的总结,为相似情况的同学提供一丢丢的经验参考吧。
总结主要涉及两块吧,【算法转开发的经历】和【成都就业分享】
先说一下个人情况:
本硕北邮,四川人,实验室期间工作以算法相关的横向项目为主(会涉及部分开发工作),推荐系算法方向,1篇EI(非顶会),1个专利通过初步审核,2个算法相关的竞赛经历。1段中间件开发方向的大厂暑期实习,Java技术栈。
【算法转开发的经历】
首先,为什么要转开发?
自己研一对于这个问题的思考比较多,正式决定基本上是研一下快到暑假了。
原因的话,感觉我自己的数学理论证明偏弱,所做的工作更加实验导向型,实验总会陷入想一个创新点 -> 失败,换下一个创新点的循环,很难在实验前确定是否能有提升。同时,项目或者比赛中性能提升更多体现在数据处理和做特征当中。
从自身体会来说,算法带给我的成就感偏少,这是我转的主要原因。
在选择方向的时候,我比较少考虑卷不卷的问题,感觉自己算法相关的经历也有。但是到秋招还是有点小庆幸的,没有优质论文或者实习作为基础,今年算法确实不容易。
但是每年的情况还是不太一样,尤其互联网变得更快,谁又能说的好明年怎么样呢。也希望大家从自己的角度去思考未来要做什么,不要人云亦云。
需要准备的内容和什么时间点开始准备?
我最早是大三因实验室考核和培训,接触了Java,写过一点小项目。
在研一下实验室承接的一个横向项目是 算法+开发的,实现了一个推荐系统。算法和开发部分我都有涉及。
这个就是我自己前期的情况,我觉得开发的准备,主要也就是4个部分,实习,项目,刷题,基础知识。
实习上,对于开发而言,实习是非常好的选择,日常实习也没有那么的卷。如果各位有条件能提前去实习的,当然很建议了。
如果有了实习经历,就不一定要去准备项目了,实习本身就会有产出相应的成果了。
项目上,这个主要针对没法去日常实习的同学来说的,我没有去额外准备项目,在研二上学期将实验室与企业合作的项目重新用Java的SpringBoot做了重构(第一个版本是python的Flask做的),然后把大三实验室培训期间的小项目写在简历上。这2个项目就组成了我找实习的项目内容。其实我自己一直想在研二上去做一个新的项目来填充简历内容的,实验室一直有别的工作,也由于自己的惰性,就拖沓了下来。
项目的准备上,我提供几个思路,各位可以结合自己的实际情况:
* 参与开源项目。参加开源项目并提交代码成为一名contributor或者commitor。这种途径,我觉得最好的是通过一些开源的活动或者比赛,比如“开源之夏”,腾讯的“犀牛开源计划”这类入手。周围有认识参加过的同学反响很不错,里面的项目导师很多是互联网里挺知名的大牛。也可以直接参加开源项目,通过提issue或者完成他人issue的方式(但我感觉直接参与这个途径有难度,还是得有人带着,可以尝试加社区的群去看看)。
* 网上的项目。比如:“谷粒商城”这类,有一点烂大街,但这种项目其实很完整,自我感觉比我做的项目复杂。如果用于学习我觉得是很好的,只是面试官可能见得比较多,具体在面试中面试官看到了什么心理我不太清楚。但是如果实在没有项目,我觉得可以好好吃透这类的。比较容易速成 有总比没有好吧。(另外这类项目很多,如果觉得被用太多了 可以尝试找冷门的)
深化已有的项目(包装)。大家可能实验室或者别的课程作业,有涉及过开发工作,只是可能项目相对粗糙。其实这种时候可以把自己学到的一些技术栈用进去,或者框架上改一改,比如:把缓存中间件加进去,微服务的架构,考虑一些高并发条件下的优化 等等。这个比较类似于我的经历,我把实验室和公司合作的项目进行了优化。
* 自己写一个项目。我们学校应该有很多做算法的同学,可以尝试把自己的算法写在一个工程项目当中,比如:一个AI平台能够调用各种算法进行训练/推理等。这样就是一个 工程+算法 的项目了。(某种意义上也能算作毕设的一个点)
* 竞赛。参与开发类型的竞赛,比如:阿里天池上有一系列比赛。我觉得作为一份经历或者学习的地方是不错的,尤其是向高分选手学习并吸纳经验是一个很能提升自己的过程。之前看到oceanbase的数据库比赛,还提供了一些学习的资料。
我们学校里自己做的项目通常不会那么复杂庞大,这很正常。在我自己面试经历中,感觉项目只是提供一个让面试官问的入口。比如:我项目中用了mysql数据库、es检索,那面试官经常就会去问这两块的八股。
算法题上, 我研一下刷过一点题,但断断续续的,正式集中刷题是从研二上9月开始。我自己是把 剑指offer和HOT100刷完后,就对着CodeTop的热门题去做的,到我2月份找暑期实习的时候,大概是250-300题。
我简单分享一下我个人刷题上的心得:
1. 刚开始刷题,遇到很多不会的很正常,想了20分钟没有思路可以去看题解了,然后尽可能根据解法思路 回忆着写。如果想1个小时写了一个不优雅的解法,而且写了之后可能身心俱疲也不想再研究官方题解了,我认为帮助并不大。刷题的过程关键是学习怎么做题,不是和自己较劲,学习优秀的题解很有必要。
2. 刷题顺序,我个人比较简单粗暴,就是顺着剑指offer和HOT100的顺序刷的,我周围有同学是按类型刷题我觉得是个很不错的方法(网上一搜有很多)。
3. 做好记录。可以考虑做一个自己的刷题笔记,把有代表性的题去分类做整理。这样每次面试前,直接快速过一下,把每种类型的题都熟悉熟悉。不然到面试的时候,做了那么多题都忘记了。
4. 重复刷题。我自己在做到一定数量后,就很少做新题了,基本上都做以前的题,反复做,强化思路。剑指offer我就认为是一个很值得重复刷的题库。(也不是说把题背下来,而是看到这种题,很快能联想到思路)
笔试的算法题会难一些,面试题leetcode的原题比较多,难度不会那么大,会有出hard的,但是都是常见的hard。
算法题我认为更像一个门槛,功利地说,只要你过了这个门槛,再持续刷题收益不高。所以准备的时候,如果不是爱好的话,不需要一味的刷题,如果时间充裕的话,可以去做做别的。
刷题时间能早一些开始,是比较好的,但注意总结和坚持。
基础知识上,我自己在这一部分的准备还是属于针对面试类型的。我是以Java作为技术栈的,基础知识的准备分了几个部分:Java语言基础,JVM和GC,计算机网络,各种中间件(Mysql,Redis,消息队列,ES),Java框架(Spring,Netty),操作系统等。
语言基础里,我先从11月开始开始看的网课,看了尚硅谷的Java基础课,两倍速,从对象部分开始看的,里面的项目实践都跳过,熟悉的地方也快速过。(看课效率其实不高,想好好打基础可以看,如果纯应付面试我觉得能直接背八股)
接下来我是以简历为导向进行准备的,简历中写了什么内容,要优先进行准备,确保很熟悉。像没有涉及到的部分就可以暂缓,面试中被问到,就说开发过程中没有接触到。
学习途径:JavaGuide,公众号"对线面试官"。网上对着一些问题各种搜,掘金论坛和知乎里的一些帖子质量都挺不错的。看网课的话,b站 尚硅谷、黑马,这两个都挺出名的。
基础知识是学不完的,这是一个持续学习的过程,不要感觉一定要看完了才能去面试。时间不够的情况下,优先将简历上涉及和提到的部分看了。每次面试后,也要多复盘,查漏补缺。
暑期实习和秋招的时间节点?
暑期实习,和日常实习的不同,一般在于 “能否参与转正”。但有的厂不是这样的,日常实习也可以参与转正,需要自行了解。
互联网的暑期实习虽然是在暑假才入职 ,但是通常招聘开始是比较早的。(国企类也有暑期实习,时间点会比较晚,但是我个人实习没有关注国企,不是太清楚时间节点了)
暑期实习的时间,去年最早从12月开始,微软的暑期提前批就开启了,1月份是正式批开始投递(微软年后才开始正式批笔试的)。
国内大厂普遍开启暑期实习招聘的时间是2月底到3月初。
特别提一下,在2月份有一些国内大厂的“提前批”,阿里这个情况很多。这个的“提前批”指的是 不通过系统投递,直接把简历给组内的人,然后进行面试 ,面试通过后再走系统。这个模式给了很多试错的机会,因为不走系统可以同时投递多个小组,也是很好的练手机会。(但听说公司不太支持这个模式,不知道今年还有没有,关注论坛,多投多投!)
秋招的话,也是分了提前批和正式批,秋招的提前批是通过系统投递的。
秋招能投递的时间,和笔试、面试的时间,还挺有差距的。并不是投了就面了(互联网的公司流程会快一点)
我了解到的最早最早的提前批,TPlink在5月份就可以进行投递了(当然不是这么早面试)。
互联网的提前批基本上7月就陆陆续续开始了。不止互联网,很多别的公司这段时间也能开始投递,注意及时关注信息。很多公司提前批和正式批可以重复投,所以想去的公司提前批尽量都投一下。
兵贵神速。最有用的就是早投!无论是多厉害的人,没有HC公司也没法招你进去。早投的优势是非常大的。
秋招招聘信息的获取途径?
* 公众号(直接搜***招聘,以及 高校的就业公众号),这是我获取信息的主要途径
* 牛客上会有人整理合集帖子,列出当前能投递的公司,大小公司都有,比较全
* 论坛
* 年级群一般导员会发招聘信息,但肯定没有那么全,多自己关注(选调,部委宣讲等基本上通过年级群)
* 双选会。线上和线下的双选会我都有参加过,线上基本只是一个投简历的途径,感觉和官网投递差不多。线下的双选会,能够当面和HR做一些交流,甚至简单的面试,个人觉得是可以参加一下的,非毕业年级有空也可以去逛逛。
如果有内推多找内推,把简历定向投到对应的小组
研究生的成绩问题?
我自己上研究生期间就有这样的疑问,研究生成绩重不重要,需不需要刷分。
从我找工作来的角度来看,影响不大,但是高一点总是好的。
互联网的面试基本上是不会问你的成绩。
但是很多企业(尤其是国央企)线上简历填写中,会要求填写 本科研究生期间 平均分 / 排名(北邮研究生阶段无排名),我在一些研究所的面试过程中也被问到过成绩的问题。
所以,成绩不用太过在意,但是也别摆烂,如果研究生成绩分数比较不错,在一些国央企面试中,给面试官观感也会好点,如果比较高,甚至可以主动提一下自己的分数。
---------分割线
【成都就业分享】
折腾了一圈,秋招的时候,回了成都,最后也没有去互联网(命运挺神奇的)。
分享一些成都可投的企业,但是我也不是每个企业都很清楚 氛围待遇如何,就不对此做评价了。可以自行了解或者私聊,然后在实习或秋招期间针对性的关注。(我自己投递的都是技术岗方向的,除了几个银行管培生)
* 互联网类
成都并不是互联网的荒漠,目前各大厂在成都都有一些部门。
蚂蚁金服,规模相对来说是比较大的,投递中 我感觉 业务方向,大数据方向,基础架构方向都有相应的组。算法和开发都有。(薪资相比北京杭州等地不打折,感觉挺香的)
腾讯,企业微信,天美工作室都在成都。(在成都有一栋挺大的楼,看着不错)
阿里、美团、字节跳动、快手、京东、联想、英特尔,深信服,比特大陆也都有组在成都。
总体来说,如果想去成都的互联网,是有地可去的,但是机会相对北京上海杭州等地会少一些,薪资待遇在成都基本上top级别了。
在我自己秋招的过程中,互联网投递其实还是以北京为主,成都只投了蚂蚁金服(有求稳的心理,今年互联网本来也有难度 all in成都怕翻车)。
分享一个我看到的介绍成都互联网的帖子:https://mp.weixin.qq.com/s/3cNok8m1gT26U11Y1UsCNA
* 通信类
华为:华为成研所在成都的规模挺大的,所涉及的部门也很多。2012实验室,ICT部门,华为云,光通信等等。地点在郫县,稍微偏一些。薪资待遇方面同评级会比北京等城市低一些,但是薪资上也属于成都比较不错的(看评级)。
中兴:中兴我面的是软件开发岗,面试官说部门的方向有操作系统和公司的基础软件。中兴可以直接冲蓝剑计划,拿到了的话,薪资还是可观的。
小米:但我印象中成都今年没有招软件类岗位,有通信的。
Oppo:通信类,软件类岗位都有。
运营商:移动、电信、联通。
这些公司基本上软件类,通信类,AI算法类都能投递。
* IC类
成都的IC行业挺发达的,有很多的IC类公司。
比如:联发科、芯原、哲库、海康威视、TPlink、紫光展锐、锐捷网络、新易盛等等。
如果是纯软件类的,嵌入式会有点不太对口,但是IC类的公司里 也会有偏应用软件型的岗位,是可以投递的。
* 金融-软件开发
银行软件开发:招行的招银网络科技、邮储软件开发中心,工行的软件开发中心,交通银行软件开发中心,农行软件开发中心。以及地方银行的软件开发(成都银行 成都农商银行 四川银行 成都农村信用社)。
保险类:人寿研发中心
证券类:东方财富(成都的证券基金公司太少了,基本上都是营业部为主)
金融类的软件面试,其实仿照互联网准备就可以了,大部分都不需要手撕代码(招银网络科技面试中有手撕代码环节),八股问的比较多,项目和实习也都会聊。
* 军工类
军工类的企业和研究所大致有这些:
中国电科:中电29所,中电10所,中电30所
航空工业:中航611所(成都飞机设计研究所),成飞132厂(航空工业成都飞机工业集团)
航天科技/科工:航天七院,航天二院206所,还有一系列航天旗下的公司(川南火工,长征装备制造有限公司等等)
中核工业:核动力研究院
中国物理工程研究院:也就是九院(主体在绵阳,如果接受想去绵阳的话 很香,顶级军工单位)
研究所的待遇不同部门和科室会有比较大的差异,平均来说 中电29所应该是薪资最高的;611所属于航空主机所,平台也比较大。
面试中,我感觉研究所比较关注学历(北邮本硕是过关的),项目/科研有没有对口的,成绩和毕设课题也被问过几次。总体面试难度不高,大部分都聊一聊就过去了,少部分会问八股。
如果想要去的话,可以去听一下对应研究所的宣讲会,宣讲会上会讲所内的业务方向和待遇,面试的时候提一下听了宣讲会,表明对业务领域很感兴趣应该是不错的加分项。
* 其他国央企
天翼云,一汽大众,东方电气(总部在四川的唯一副部级央企),人大金仓(勉强算央企? 做国产数据库的)
欢迎越来越多xdjm来成都呀~
大家觉得成都还有不错的企业可以评论区说一下
这是一条镜像帖。来源:北邮人论坛 / job / #2181816同步于 2023/1/7
Job机器人发帖
秋招小结【算法转开发经历】【成都就业分享】
WSM1998
2023/1/7镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。