最近技术群的一个问题,引起了我的思考:
今年,还存在金三银四吗?
大家都知道程序员涨薪主要还是要靠跳槽来完成!但是我们都知道,无论是考试,还是求职,这个难度,参加人数是影响难度的一个很大因数(当然特别牛逼的大佬可以忽略这句话)。
每年高考、考研人数都在增加,这求职人数也必然是每年都会增加的,因此,就算完全不出新技术,求职的难度也会越来越大。
3月初参加了大数据开发的远程面试,这次面试的内容除了常规的自我介绍外,还有通过远程视频会议的共享桌面进行一些实际大数据问题的现场考核。
我所遇到的考核有两个题目:
第一个是一套Kafka系统被要求进行异地机房容灾!
第二个是如果对多个数据流进行信息合并和CEP,技术实现方式可以根据我自己的情况来决定!
幸好这半年来我并没有荒废,一直在潜心修炼内功。
第一个问题我用KafkaMirror的技术工具给出了解决方案!
第二个问题我则采用了SparkStreaming设计了三个CEP业务模块!
虽然面试时间有限,我和面试官没有过多做代码层面的交流,不过用Xmind构建的思维导图倒是被面试官评价为思路很清晰,最后也得到了满意的offer!
在和众多猎头的交流中,也感受到了如果不是这半年提前开始学习最新的大数据技术,这次的求职之旅将异常艰辛,所以在此我也想把最近半年的学习思路和具体方法和各位朋友进行分享一下。
简单来说,我们可以把大数据的学习步骤分成如下几个维度:
1、大数据离线大数据报表层
2、实时流大数据分析层
3、机器学习和展现层
我们就按这几个维度来讲工具吧。
1、离线大数据Hadoop/Hive/Mapreduce
这一部分需要掌握大数据生态的各个组件,包括数据ETL的各种转换,并且要熟悉linux相关知识,部分互联网大厂还会使用公有云的云服务,所以会使用云服务器也是必备知识。
2、实时计算和消息流
这一部分需要掌握常见的流计算框架和消息中间件,现在各大互联网大厂在处理实时数据业务时Kafka和Spark已经成为了标配
3、机器学习和关系图谱/推荐引擎方面的知识
现在各大数据运营公司的基本套路都是先广泛收集各类数据,对数据进行分类汇总后,利用关系图谱构建用户画像信息,利用机器学习模型找出潜在因素间的关联性,进而将数据变现成数据服务,利用推荐系统反向引导线上线下业务的开展。包括阿里系,头条系,网易等一线大厂都在使用这一技术。
当然,最后还是要系统化的学习才能直接应用于一线,这里我整理了一张大数据学习思维导图,希望可以帮到你!
(大数据系统学习思维导图)
有了思维导图后,还需要辅助资料以及大牛的指导!
免费分享一下自己收集整理的大数据相关面试题,还有一些大数据技术的实战书籍,需要获取的朋友可以帮忙转发一下文章并关注我,后台私信【资料】即可一并获取。