我是LakeShen,专注大数据技术、互联网科技见解、程序员经验分享。作为一名软件开发工程师,我现在从事的就是大数据方向。结合我当年校招找工作的经历,个人认为,大数据中不同岗位对于编程能力的要求是不一样的,如果你选择的是大数据平台开发或者大数据基础组件开发,这两种岗位会对你的编程能力有一定的要求,如果你选择数据研发(ETL)、大数据分析师(BI)、大数据运维这三种岗位,那么你的代码编程能力就不是那么重要(代码编程能力不是你应聘的硬性条件),更多的是考查你对于数据方面的理解,对于业务和数据中潜藏数据价值的分析,下面我来具体分析大数据需要具备怎样的编程能力。
如果你选择大数据平台开发,首先第一点,你需要掌握一门编程语言,比如Java语言。对于Java语言的基础语法、集合底层原理源码的实现、Java多线程、Java虚拟机等等,如果你希望能够进入到大厂的话,这些知识点你都必须掌握的非常牢固。对于大数据平台开发同学,其工作主要使用Java语言编写用户使用的大数据平台,用到的后端技术主要是Spring Boot。你也需要学习Spring和Spring Boot相关技术、Mybatis、Json使用等等。Spring技术中最基础的技术,AOP(面向切面编程)和IOC(控制反转)。
如果你大数据组件开发,由于大数据很多组件都是使用Java进行编写,你最好也能够有一门自己擅长的语言,同时,由于你是对大数据组件进行开发,你必须对你所选择的大数据组件的原理和源码要有很深的理解,比如你选择Hadoop,你需要了解到Hadoop 的MapReduce原理、HDFS上传数据和下载数据的流程原理、Yarn是如何管理资源的等等。你也需要有一定的大数据组件运维能力,因为你需要保证线上大数据组件的稳定性。
ETL同学、数据分析同学(BI)、大数据运维同学对于代码编程能力的要求没有那么高,ETL同学在应聘的时候,更多的是考查你的SQL语言的使用以及数据仓库方面的理论知识,对业务数据的建模思想。数据分析同学,需要考查你对于数据中隐藏价值的洞察力,同时你的PPT能力也是你的加分项,所以对于数据分析同学,并不是只有计算机专业的同学才能选择,有很多其他专业的同学也可以选择大数据分析。大数据运维同学,可能更多的是考查你Linux命令的使用,你对Linux系统的理解、相关Shell脚本的编写等等,因为现在互联网企业几乎都将服务器安装在Linux系统,你以后做的也主要是对这些机器稳定性运维,所以你需要对Linux系统有很深的理解。
总结总体来说,对于大数据不同的岗位,其对于代码编程能力的要求是不一样的,你可以结合你自己的个人兴趣以及以后的职业发展,来选择适合自己的职业。当然,如果你有时间可以锻炼自己的代码编程能力的话,这对你以后的工作或多或少会有一定的帮助,没准在以后的那一天,你就用上了你的这门技能。
如果我的回答对你有一定帮助的话,希望你能点赞转发或者关注我,你的小小的鼓励,就是我持续分享的动力,感谢。