首页 > 互联网秋招总结——非科班转行(拿到阿里、腾讯、百度等意向书)
头像
颍川戏志才
编辑于 2020-10-02 21:36
+ 关注

互联网秋招总结——非科班转行(拿到阿里、腾讯、百度等意向书) 内部员工回复

0.自我介绍

先简单介绍一下自己的情况,本科985,硕士科研所。本硕都不是计算机,偏物理方向。今年秋招拿到了阿里、腾讯、百度、快手等互联网公司的后台开发的意向书。想发个帖子记录一下,也希望分享一些自己的经验,希望可以对后面的学弟学妹有所帮助。。目前收到的意向书如下:
阿里巴巴风控                        Java开发
腾讯视频                               C++或者Golang 后台开发
百度                                      ACG商业平台研发部
网易有道                               Java开发
快手国际化                           Java开发
京东商家研发部                   池子排队
小米云平台                          池子排队

1.本科读研OR工作?

这个模块暂时先放着,我暂时先不谈。大家可以在评论区多多讨论。我当时选择了读研,现在看来,有一些后悔。

2.跨专业有没有影响?

肯定是有影响的,我本硕基本跟计算机关系不大,所以面试的时候基本上面试官都会问我一个问题:“你本硕都是学XX专业的,为什么要做计算机呢。”  每次面对灵魂拷问的时候,我一般说:“出于个人兴趣以及考虑到未来职业发展,我对本专业所从事的工作兴趣不大,对互联网相关职业更有兴趣,因此自己在课余时间自学了很多计算机相关的知识。”

3.硕士阶段该如何准备?

根据我身边同学以及我的面试经验来说,一般面试主要是这四个部分,算法、项目、基础、设计题(比较少,但是我今年面试也遇到了一些)。我下面简单分享一下这几个方面的准备情况。

3.1算法

算法现在基本成了互联网笔试面试的必备了。提前批一般没有笔试,但是也有少部分公司有笔试题。正式批投递的时候,几乎都有笔试题。笔试题的成绩也可能会是一些大公司的重要参考指标。准备算法题可以先学习一下基础的数据结构。等了解了基本的数据结构之后,就可以做算法题了。主要做题平台就是剑指Offer、LeetCode。另外还有一些觉得比较有帮助的公众号:labuladong
笔试题和leetcode的套路不太一样,一般还会考虑输入输出,有点类似于ACM的形式,通过故事的形式讲述题目,具体的可以看一下牛客网上面的笔试题目。针对输入输出提前练习一下,我刚开始就没经验,笔试的时候被输入输出卡了好一阵。

3.2项目

投递开发岗位,简历里面如果没有项目(或者不对口的项目,比如图像算法的),面试过程会及其尴尬。我之前是做图像的,简历里面全是跟图像算法相关的,各种图像分类目标检测,面试官可能对这个领域也不是很懂。就会造成面试过程特别尴尬。没办法聊项目,只能聊基础。这体验就很差了。
针对简历里面没有项目的,那么最好赶紧增加一些跟后台相关的项目经验,可以通过实习(上策)、教研室项目(中策)、或者去网上找一个项目跟着做(下策),推荐慕课网,上面有很多不错的项目,而且价格不贵。或者B站上有一些培训班放出来的视频,尚学堂,尚硅谷,黑马之类的。之前看过一些,感觉质量也很不错。尽量避开秒杀、商城这类项目。这类项目普遍反映太多,有点烂大街了。根据目前的招聘要求,基本都会要求分布式微服务,所以在做项目的时候,尽量的找一些微服务相关的项目。
针对简历里面有项目,但是不相关的(主要针对算法转开发),如果确定要做开发,建议如果时间充足,也按照上面的准备。但是如果时间不充足的情况下,就把自己做的跟算法相关的项目里面的工程化的部分着重突出以下。面试的时候毕竟是后台开发的岗位,面试官可能对你的准确率、召回率之类的并不关心,可以着重讲一下项目工程化落地的部分。以我之前的为例,我之前做的项目算法部分主要是做的图像分类和目标检测,后面工程化用到了Flask框架,以及Kafka消息队列。我就着重突出了这部分给面试官讲解,效果还可以,感觉比直接讲算法的指标这些强的多,因为毕竟是面的后台开发。。

3.3基础

  1. 这个也是重中之重了,感觉也是我们非科班最缺的部分了。我们缺少了计算机学院本科学习的 计算机网络、操作系统、计算机组成原理、数据库等知识。出来混总要还的,要想面试的时候跟科班学生站在同一起跑线,这些课程也是必须要学习的,因此建议有时间的还是把这部分知识好好的补充一下。
  2. Java基础,有关Java语言基础的可以推荐看一下尚学堂的Java基础三百讲(高淇),书籍推荐Java核心卷,涉及到图形的可以略过。
  3. 并发编程:推荐《Java并发编程的艺术》,《Java多线程编程核心技术》。
  4. JVM:这个面试问的也比较多,推荐几本书《深入理解Java虚拟机》。
  5. 数据库:先学会简单的使用,然后重点看看原理,锁、索引、隔离级别等。推荐极客时间丁奇的Mysql45讲。
  6. 框架:Spring、SpringBoot、SpringCloud,Mybatis,Spring推荐看看《Spring实战第四版》,SpringBoot推荐看《SpringBoot编程思想核心篇》B站有个博主“狂神说”,里面也有讲解,简短容易理解。SpringCloud主要是要学习微服务中涉及到的模块。服务注册中心、熔断降级、负载均衡、配置中心,这些知识Dubbo也有对应的模块,最起码得知道这些模块是做什么的,最好的办法还是项目中实战。
  7. 消息中间件:消息队列中间件可以学习一下Kafka或者rocketmq,简单会用是基本,并且更是要深入原理,视频可以看一下尚硅谷,主要教怎么用。想学习原理可以看一下极客时间的 《Kafka核心源码解读》。
  8. 缓存数据库:主要学习redis。redis的内存模型,数据类型,持久化方式,缓存雪崩等之类的问题。

3.4 系统设计

这些我在网易、字节面试的时候遇到过,别的家没有遇到过类似问题。比如:”设计一个朋友圈系统“、”设计一个转账系统“、”设计一个文章评论系统“,主要考察对项目的理解。这些题都比较开放,回答的可以很简单也可以很复杂。这种类型的题只能通过平时多看看一些博客或者公众号来积累积累。

3.5 面经

面试的时候,有的放矢才是最好的,知道常考的一些点,才可以更好的准备面试,因此也需要看一些面经,推荐GitHub上面的 JavaGuide,上面分门别类总结了很多面试常考的问题。以及牛客网上大家分享的面经。

4.秋招大体时间安排

现在秋招的趋势是越来越早了,因此最好这些基础能够在研一就开始学习,越早越好。

4.1日常实习

日常实习有条件实验室建议去参加一下,虽然没有转正机会,但是确实是一个积累项目的好办法,公司的项目一般都比实验室的有含金量。推荐几个找日常实习的好平台,***,Boss直聘。因为日常实习不考虑转正,所以难度会小很多。但是也要把心态放平,因为公司可能并不会把很核心的项目交给实习生,我们去就是能接触一下实际工业界的项目,私下的时候可以多问师兄,了解项目的全貌。千万不要只负责自己的那一块内容,项目背景什么的也要了解到。

4.2 实习生春招

等到研二下学期,大概过完年的时候,2,3月份,各大互联网公司的春招就开始了,这个春招主要是针对研三学生的正式招聘和针对研二学生的实习生招聘,建议可以多参加一下,这时候的实习生大多数都会有转正机会,表现好的可以通过实习生转正拿到秋招的offer。即使可能去不了,但是一些公司比如阿里,会有针对春招实习生的直通车计划,到了秋招的时候可以直通终面。就算最后没能通过实习生面试,也可以通过提前参加面试来积累经验,提前总结自己的面试不足,更好的准备秋招。

4.3 秋招(very very important)

秋招是非常非常重要的。为什么这么说?因为秋招中岗位是最多的,机会也是最大的,所以一定要慎重对待。大多数会集中在6-10月份(对的,你没有看错,就是6月份。。。今年确实出现了一些公司的提前批秋招在6月份的情况),秋招又分提前批和正式批。提前批大多数没有笔试,一般简历通过直接面试,然后提前一步拿offer,我大概是8月上旬开始投递的简历,基本上8月底就全部收到意向书了。9月份的时候,秋招正式批才开始。秋招基本都会有笔试。

4.4 应届生春招(补招)

这个春招是研三下学期,过完年的时候,2,3月份,这个时候部分公司会有一些补录的岗位放出来。但是尽量不要拖到这个时候,到了这个时候不确定性就比较大,而且会是神仙打架一样。竞争会很激烈。还是建议在秋招中就签到合适的offer。

5.总结

楼主是非科班转到的计算机,这其中的酸楚恐怕只有亲身经历之后才会理解。再加上今年就业市场比较严峻,只能说确实很不容易。研究生生活也过的很苦逼,好在最终结果是好的,国庆节回想这一切的时候,又感觉是值得的,想当初读了研究生之后,我天天后悔想退学,当时也尝试以本科生的身份参加了校园招聘,人家根本不认,因为不是应届生了,招聘只针对应届生,这也进一步印证了秋招有多重要。好在我后来缓过神来,根据牛客网的前辈们总结出来的经验开始学习,在这里再次感谢牛客网这个平台。。。今天就想着写一下我的感受,希望能对后面的学弟学妹们有帮助。我大老粗,也讲不出什么大道理,总之就是一句话:“干就完了。"

荀彧 ——写于2020年10月2日

全部评论

(24) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

历年真题 真题热练榜 24小时
技术(软件)/信息技术类
查看全部

近期精华帖

热门推荐