0.背景介绍
回忆起下决心转行,已经快一年的时间了,当然,如果只是想法的话,很多年前就开始了。
简单介绍一些我的情况,我本硕都是某985高校的,非科班,研究生期间接触一些编程相关的项目,除此之外,很多经历可能都和程序员扯不上关系。
今年校招,我收获了一些不错的offer,都是一些软件开发岗。
想总结一下自己的经历,希望能帮助那些今后参与开发岗校招的同学。
1.时间节点
我其实开始准备的时间也不早,大概在今年的1月左右有想法,真正实施也是在开学之后的2、3月份。
早一些准备早好。
·
······3 - 5月······
3月开始陆陆续续有很多大厂开始放出暑期实习的信息,这时候可以准备投递,建议这时候开始收集一些公司的招聘公众号和信息网站。之后各种笔试面试,被毒打之后记得查漏补缺。
·
······6 - 7月······
有实习的话,就好好去实习,没实习的话,就好好刷题看书准备秋招。
·
······8 - 9月······
很多互联网公司提前批很早,如果你还在实习就会发现比较被动,不实习的同学就应该看情况投递了,有内推当然好,没有的话就像我一样,全部硬刚笔试。初期可以多投一些公司,笔试做多了,面得多了,手感和节奏就出来了。
·
······10月······
基本上到10月该有的offer都有了,很多开始签三方了。如果这时候还没有offer的话,可以考虑一些比较晚的企业了,比如银行国企和传统行业。
2.关于暑期实习
我说一下我对暑期实习的看法。
暑期实习的优点:可以争取留用机会,并且秋招的时候简历能更出彩一些,面试的时候也多一些谈资。
暑期实习的缺点:如果无法留用的话,秋招实际的作用可能不会很大,而且由于实习时间的问题,很可能会缩短你秋招复习准备的时间,让秋招初期很被动。而且有些公司暑期实习很坑,这个可以自行了解。
·
暑期实习不是必须的,很多同学可能有各种原因没办法参加暑期实习,其实不去也影响不大。
但是,暑期实习的面试我是强烈建议参加的,因为暑期实习的面试可以作为秋招面试的试水,他们的流程其实差不多的。而且你参加几次被毒打之后,就会明白校招的一些主要考查内容,就会发现自己的很多薄弱方面,然后有针对性地学习。
·
PS:1、你一开始如果真的很菜或者只是想试水,别投太多以后你秋招想去的公司。我当时投暑期实习就是一开始很菜,去投了阿里,面了两回直接被回绝了,不知道是不是因为太菜的缘故有可能进了黑名单,然后我秋招投了之后就没有一点消息了。
2、如果真不打算去某些公司实习,一定要及时拒绝offer。我当时就是得了海康的实习,但是后来没去,估计很可能进了黑名单,秋招再投之后也没了消息。
3、如果你实习完了,千万不要相信任何领导的口头offer,即使他把你吹上天了,没有书面的offer都不稳,还是要认真准备秋招,这个在牛客网上不知道看到多少同学血的教训了。
3.关于刷题及看书学习
刷题我主要是两个渠道,一个是LeetCode,一个是牛客网,这两个渠道的题目我总结有以下特点:
(1)LeetCode:简单题目更偏向于基础,可以用来熟悉数据结构和操作;中等和困难的题目很多都有技巧,要多看评论区大佬的方法,可以拓宽思维。LeetCode的题目,其实大多数比较适合面试的时候问,刷这个主要还是为了应付面试,如果是为了应付笔试,还是建议刷牛客网。
(2)牛客网:牛客网上面有很多往年的各个厂的真题,其实刷这些题目才会比较适合应付笔试。笔试的题目和LeetCode上的题目很大的区别就是很多是实际的应用题目,有些涉及业务技巧,所以还是刷真题比较有帮助。
·
看书的话,需要从几个方面来考虑:
(1)初期学习。大多数人早期都是从编程语言开始学习的,像我一开始学习c++,会去网上看那些视频课程,B站很多,推荐上面的《清华大学C++课程》(一定要找完整版),然后就是《C++ Primer Plus》那本书我看了很多遍。
其实第一遍学习语言,不管是第一遍看书还是第一遍看视频课程,很多东西都感觉一知半解,在学习和使用一段时间之后,一定要回过头来再看一遍,会发现很多问题迎刃而解。
感觉本科时候上的课程其实根本就只学了皮毛,面向对象都没搞清楚,c++的什么继承和多态,完全是后面才明白,所以不要光看那些教材。还有就是c++学好了,其他语言上手很快的,python简单就不说了,特别是java,你会发现和c++就是同一个语系的。
(2)巩固基础。先不说科班那些上过课的人,对于非科班的,真的非常需要找些时间把计算机的本科课本拿来看一遍