秋招结束了,就写一篇文章来总结一下我的秋招之路。
学习历程
大数据的学习是在2020的4月初开始的,之前一直想学但是导师一直在催改论文。3月份是在复习Java基础。因为之前是学的c语言,Java也用过,但是不多。在4月份正式进入的大数据的框架的学习。下面就分享一下我的整个学习过程。
如果学习大数据的的知识来应付秋招的话,至少需要4个月的时间,因为实验室的原因,我没有去实习,当然这个在后面的秋招中也算是吃了亏的。如果可以实习的话,尽量去实习。
今年的秋招提前批大概在7月份就开始了,所以学习大数据准备秋招的可以合理安排自己的时间。
在学习的过程中,一定要不间断的刷leetcode和剑指offer, leetcode 不用贪多,大概高频的算法题刷200-250道即可,刷3遍应该可以拿下80%的算法题,最好也在牛客上做一做往年的大厂笔试题。(笔试题也很重要,不可轻视)
大数据开发岗位的技术栈的学习
① 如果是科班,肯定学过计算组成原理、操作系统、计算机网络还有数据结构与算法吧,如果不是,那就去看一遍,不需要第一遍看的多懂,有个印象就行,对于计算机的基础架构和网络组成还有基础的数据结构具备一定的思维模型就够了。并且算法刷题是一个比较持久的过程,无论是刷剑指Offer或者力扣开始刷起来,为笔试和面试手撕算法做准备。
② 学习Java学习,首先掌握那些关键字、封装、多态、继承、组合等的概念,对于Java每一个模块的知识都去实操一下,重要的敲代码,很多东西能懂就懂,不懂敲一下代码就过,后面自然会明白。并且尽可能的去熟悉一下JVM的基础内存结构和多线程的编程模型。
③ 数据库的学习,我们需要学习典型的关系型数据库MySQL、非关系型数据库Redis,不需要对数据库深入的研究,在第一层次我们会安装,学会基础的DDL、DML语言操作,基础的SQL语句会编写即可。
④ 进入大数据的学习,从大数据采集层(Flume、Sqoop)、大数据存储层(Hive、Kafka、HDFS)、大数据计算层(MR、Spark、Flink)、还有调度组件Yarn和协调组件Zookeeper,在大数据框架这一块从我的面试经验来看是问的比较深的,问的比较深的框架有 Kafka原理 ,Spark 源码,MR 原理,Yarn原理 (框架这一块是面试的重点也是难点)。Flink是目前大多公司在使用的实时计算框架,这个也需要掌握,其中Hive只要知道常规的操作就可以以及一些表的操作。
Spark 的调优是亮点,这个需要重点掌握(百度问的比较深也比较细,细到一个参数那种)。
学完了这些自己要写一份自己的简历,写简历的原则:简历上面的知识是自己一定要会的,尤其是项目的部分,自己封装的项目的每一个细节都要知道。(这一点很重要)
秋招部分:
在秋招的过程中,多关注牛客网上的动态,可以先选择小厂进行面试,这样是在检验自己学的知识和查漏补缺,后期跟进BAT这些大厂。一般7月中旬开始投,但也有很早公司,比如在2020年6月份vivo公司就开始提前批了,当然它是最早开始的公司。
总结起来就3大块:算法+基础+项目