研究生期间就读国内某985计算机技术专业,主要是帮老师开发网站,没有做前后端分离,因此基本是根据任务全栈式开发、维护,期间还有帮老师做过一些大数据相关的项目;实习期则在一家运营交通大数据的公司,因此技术栈全是java生态。之前听说腾讯一般只要c++,没有java岗位,所以一开始也没对进鹅厂报很大希望,但后来逛牛客网的时候看到id为“优秀的张先生”的大佬发了腾讯java岗招聘信息,技术需求也跟我技术栈吻合,便赶紧让同学帮我内推,最后成功在CDG企业发展事业群-金融科技业务上岸。后来发现,CDG主要负责公司广告和金融方向的业务,对大数据需求比较高,很多组用的都是java或python,如果是java技术栈的同学欢迎来CDG,鹅厂也是需要会java的小伙伴哒。
二、 准备阶段
这两年各大公司春招和秋招的时间都在提前,所以准备阶段最好也早点开始。下面是我准备阶段做的工作和大致流程。
1) 信息收集
这个阶段主要是搜集信息,对未来你想从事的岗位所需技术栈有一个大致了解,如果是本科同学且没有去公司实习过的话最好对互联网公司岗位做一个基础调研,比如开发、测试、运维、产品分别是做什么的。
我是2020届毕业生,大概19年二月开始准备春招和秋招,之前有做过大数据方面的工作,因此我选的岗位方向是大数据开发工程师,之后我就去csdn,牛客以及知乎等各个渠道去了解我想从事的岗位在互联网行业中应用和分布的概况,技术栈需求等信息。大数据开发工程师目前大多都是偏java开发,因此技术栈可以分为java开发相关知识和大数据相关知识两部分。其中java开发相关知识包括数据结构、算法设计、操作系统、计算机网络、数据库、java相关知识、设计模式、java新特性等,大数据相关这里不同公司对大数据组件需求不同,基本的Hadoop基本组件、Spark肯定要比较熟悉,其他的比如Kafka是我去年面试的热门,Hive是数仓开发的必考项,Flink、Hbase、ZooKeeper这些如果也能了解就更好了,具体的等面试时候可以再总结,基本的都能掌握进阶的也只是加分项(但其实很多人可能基础知识都没完全掌握,那基本面试第一轮就失去机会了)。
建议搜集完技术栈需求相关信息后建立知识树脑图,目前有许多比较好用的脑图构建工具大家可以上网搜,之后复习完面试完盘点知识树的时候非常好用。
这一阶段大家可以多与同学、学长们交流,逛逛论坛啥的,共享信息,可以事半功倍。技术栈的建立是一个长期的过程,前期可能只是比较简单的技术栈搭建,慢慢地会越来越完善。
2) 复习巩固/学习新知识
信息搜集完,基本的技术栈应该也搭建完了,接下来就是填充知识。不熟悉的知识不建议走捷径直接看面经啥的,直接看书或者技术博客最好,不差这点时间,速成的知识在面试的时候都会还的。时间不够的话排个优先级,数据结构,算法,Java相关,网络、操作系统这些基础的先系统过一遍。
数据结构不用说了,计算机必修,非计算机专业建议一定要先系统地修完再学其他的。
算法的话建议刷LeetCode(算法的复习时间越早越好,这个是贯穿面试始终的大boss),按照专题刷,一开始先从easy开始,自己定进度,最后还是要挑战hard,要有耐心,没时间的话一天一题尽量保证,我当时实习是早上看题目,想想思路,晚上写解答,做完一题一定要看看别人分享的思路,LeetCode的核心就是解法不是结果。
Java相关的可以看《深入理解Java虚拟机》,这是论坛上推荐最多的,让你从底层系统了解Java语言,也是面试比较爱考的,之后还有java高并发设计可以自己参考论坛选择合适自己的方式学习,java一些常用数据结构底层如何实现在有余力的情况下也可以多了解,加分项。设计模式和java新特性也是,找适合自己的学习路径学习即可。
网络这里建议跟书再系统学一遍,这方面知识越牢靠对你未来工作都有很大帮助,不只是为了面试。操作系统也是一样,书本上比较常用的基础知识学完后,除非岗位需求限制windows,不然建议学linux相关知识,有很大助益。
数据库最基本的Mysql原理那些得熟悉,Redis我作为数据开发被问的很少,后端开发的同学比较重要。
之后因为我是大数据开发岗,大数据技术目前更迭非常快,书基本是落后技术的,因此得习惯看官网。
三、 春招&秋招
我那年差不多三月份春招提前批开始,这时候也许大家还没准备好,但不用急,可以先参加一两场面试给自己打个底,不用担心水平太菜被嫌弃,大家都是慢慢成长的,经历几场面试会大致知道面试主要考察哪些方面,自己缺漏在哪里,心里就会更踏实。时间允许的话建议大家都能找个实习,不仅可以提前熟悉下互联网公司工作环境,实习项目也是简历上重要的一环,二轮三轮面试几乎都是围绕你的项目进行全方位考察。大家可以先参加一些面试来练练兵,为自己心仪公司做准备。
开发岗找实习和秋招正式岗流程基本相同,都是投简历-笔试-面试-HR面,到HR面不出意外就是被录取了。大厂会有专门报名网站填写信息,生成电子简历,但自己也需要准备一份简历应对不同的需求。
面试之前一般是笔试筛选,开发岗几乎都是算法题,题数不一定,时间一般为两个小时,有时候会有些选择题、判断题。很多公司都会选择牛客网作为笔试平台,所以考前最好在牛客上刷几题,适应下操作环境。刚开始也许只能做对一两题甚至一题都出不来,但没关系,大家都是这么过来的,重要的是事后复盘,多思考,多做笔记,这才是考察一个人学习能力和未来潜能的时候。许多公司一般就给一次笔试机会,不通过就没下文,腾讯的话是你投简历成功后好像是四次考试机会,而且你是否进面试并由笔试成绩决定,而只是将你的笔试成绩作为参考配上你的简历一起加入人才池,由面试官决定是否发起面试,这点也很符合鹅厂人才多元化、人性化考察的风格。
面试轮数不同公司要求不同,大厂要求会比较高,至少两三轮面试,第一轮为基础面,主要就是岗位方向的语言基础(比如我是Java相关知识),数据结构,网络,操作系统,数据库相关,回答时不用紧张,切忌不懂装懂,不会就说不知道,开放性问题可以大胆表达自己想法,如果能跟面试官互动也是很好的收获和体验。最后面试官如果有问你还有哪些问题,你可以就今天面试情况让面试官给你个评价,许多面试官都会乐意跟你分享他的看法,甚至有些还会提出你目前存在的一些问题,这对你进行面试复盘有很大帮助。前期参加完面试每次面试都应该做个复盘,给自己补缺补漏,最好还能做个心得日记,一个阶段后可以进行盘点,在知识树脑图里进行修改,不断完善自己的技术栈和知识树。二三轮一般就你的项目进行考察,也会考察一些基本知识。算法看面试官安排,每轮都有可能面算法。
秋招提前批大概是六月份就开始了,流程基本与春招差不多,只不过面试时候对项目的考察更多。有实习项目的话秋招会相对轻松,但需要你对自己的项目足够熟悉。我实习项目主要用的是Kafka和Hbase,而Kafka目前在互联网公司用的比较多,所以我面试项目主要也围绕Kafka来提问,我实习时候对这块知识基础打的比较牢,这也对我面试起到了很大的帮助。参加面试多了,不断跟面试官交流和事后复盘,对我们应届生来说也是一个很好的开拓眼界的机会,但前提是你基础打的足够牢,基础不牢建议还是先打基础,面经这种是已经打完基础准备开始大量面试时候来参考交流的。
四、 心态
心态虽然在最后一点,但我觉得在找工作过程中这才是最重要的,不论是构造知识树那段枯燥的日子,还是被算法虐的怀疑人生,还是面试失利时的失落,我们都会产生许多负面情绪,会懈怠,会怀疑自己,这种时候不妨好好休息一下,跟小伙伴互相吐吐槽,加把劲,调整好心态,重新出发。大家这时候都是战友,日后这段经历也将成为美好的回忆。你要相信:“所有的汗水,都有收获;所有的努力,都不会被辜负。”
祝大家都能找到满意的工作,期待大家来CDG-腾讯金融科技,一起见证鹅厂新的征程。
全部评论
(4) 回帖