0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一位三年工作经验的工程师告诉你:如何成为一名大数据开发工程师

工程师人生 来源:网络整理 作者:工程师吴畏 2018-06-06 17:31 次阅读

1.关于我

本人现在北京某大型互联网公司高级数据开发工程师一枚,三年工作经验,一年多面试官经验。

2.为啥要写这篇文章?

面试中经常会遇到这种情况:之前专心写web的Java码农突然转型想做大数据了,然后写几个大数据的项目经验跑来面试,结果就是一问三不知,还有好多人只是搭了个Hadoop环境就说自己是搞大数据的,然后来面数据开发,结果肯定悲剧。一般情况下,面试失败的我都会送走,然后针对不同的人给点建议。面试候选人一激动就要加微信,最后的结果就是人没招来几个,微信好友加了不少。这篇文章基本上就是一些经验的汇总。

3.正题

首先,我个人进入大数据行业也纯属偶然,当年实习的时候做的是纯纯的Java开发,后来正式毕业了以后找了份Java开发的工作,本以为和大多数Java猿一样天天搞增删改查了,但是巧的是搞好部门有个做大数据开发的离职了,数据开发缺人手,然后领导就让我顶上了。刚开始什么Hadoop,HDFS也是各种不懂,只会写hive,因为毕竟有SQL基础嘛。再后来发现hive实现一些东西很麻烦,就开始学习spark。网上找的例子,从Wordcount入手,边写简单的例子边看《Hadoop权威指南这本书》,不到一周时间就上手写了一个计算报表数据的作业。后来就不断深入,过程之中觉得《Hadoop权威指南》这本书每一次读都有不同的体会,前前后后应该读了有三四遍吧。
总体感受就是理解了分布式计算的模型,就知道如何写mapreduce了。但是如何进行作业优化以及数据处理过程中遇到的问题如何解决就需要更深入的研究。
前面提到来面试的有应届生也有工作几年的,针对不同的人给一些不同的建议。

3.1 对应届生

个人觉得应届生应该打好基础,大学本科一般都会开设数据结构,算法基础,操作系统,编译原理,计算机网络等课程。这些课程一定要好好学,基础扎实了学其他东西问题都不大,而且好多大公司面试都会问这些东西。如果你准备从事IT行业,这些东西对你会很有帮助。
至于学什么语言,我觉得对大数据行业来说,Java还是比较多。有时间有兴趣的话可以学学scala,这个语言写spark比较棒。
集群环境一定要搭起来。有条件的话可以搭一个小的分布式集群,没条件的可以在自己电脑上装个虚拟机然后搭一个伪分布式的集群。一来能帮助你充分认识Hadoop,而来可以在上面做点实际的东西。你所有踩得坑都是你宝贵的财富。
然后就可以试着写一些数据计算中常见的去重,排序,表关联等操作。
对于我来说,面试应届生就问你的基础,笔试大多是数据结构和算法方面的,如果你基础不错而且有一定的大数据方面的经验,基本上都会过。

3.2 对有工作经验想转行的

主要考察三个方面,一是基础,二是学习能力,三是解决问题的能力。
基础很好考察,给几道笔试题做完基本上就知道什么水平了。
学习能力还是非常重要的,毕竟写Javaweb和写mapreduce还是不一样的。大数据处理技术目前都有好多种,而且企业用的时候也不单单使用一种,再一个行业发展比较快,要时刻学习新的东西并用到实践中。
解决问题的能力在什么时候都比较重要,数据开发中尤为重要,我们同常会遇到很多数据问题,比如说最后产生的报表数据对不上,一般来说一份最终的数据往往来源于很多原始数据,中间又经过了n多处理。要求你对数据敏感,并能把握问题的本质,追根溯源,在尽可能短的时间里解决问题。
基础知识好加强,换工作前两周复习一下就行。学习能力和解决问题的能力就要在平时的工作中多锻炼。
社招的最低要求就上面三点,如果你平日还自学了一些大数据方面的东西,都是很好的加分项。
以上是个人的一些经历和见解,希望能帮到你。当然也不完全正确,如果你认为不妥可以评论开喷,哈哈。
最后祝各位看官都找到称心如意的工作!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1564

    浏览量

    68395
  • 大数据
    +关注

    关注

    64

    文章

    8849

    浏览量

    137179
收藏 人收藏

    评论

    相关推荐

    嵌入式软件工程师如何提升自己?

    嵌入式软件工程师如何提升自己? 作为一名嵌入式软件工程师,在这个充满机遇和挑战的领域里,如何提升自己显得非常重要,它决定了未来的发展方向和成就。接下来,我们
    发表于 06-12 11:20

    嵌入式软件工程师和硬件工程师的区别?

    和通信协议,以及熟练掌握种或多种编程语言和开发工具。 主要负责的任务和领域 嵌入式软件工程师工作涉及到各种任务,主要包括: * 系统设计:包括确定系统功能、分配资源、优化性能等。
    发表于 05-16 11:00

    大厂电子工程师常见面试题#电子工程师 #硬件工程师 #电路知识 #面试题

    电子工程师电路
    安泰小课堂
    发布于 :2024年04月30日 17:33:15

    单片机如何通过代码控制硬件:一名工程师的分享

    今天跟大家聊聊单片机是怎样通过代码来操控硬件的。作为一名单片机工程师,我们平时的工作就像是给单片机编写“指令集”,让它按照我们的意图去驱动各种硬件设备。
    的头像 发表于 03-06 14:46 1327次阅读
    单片机如何通过代码控制硬件:<b class='flag-5'>一名</b><b class='flag-5'>工程师</b>的分享

    优秀电源工程师需要哪些必备技能?

    随着电源市场的不断扩张,开关电源行业飞速发展,企业对电源工程师的需求日益增加,对电源工程师的技能要求也日渐提高,相信没有一位电源工程师会错过让自己变得更优秀的机会。作为
    发表于 01-29 11:29

    【2023电子工程师大会】我和LabVIEW:工程师经验分享pp

    【2023电子工程师大会】我和LabVIEW:工程师经验分享ppt
    发表于 01-03 16:31 14次下载

    优秀电源工程师的必备技能大揭秘!

    随着电源市场的不断扩张,开关电源行业飞速发展,企业对电源工程师的需求日益增加,对电源工程师的技能要求也日渐提高,相信没有一位电源工程师会错过让自己变得更优秀的机会。作为
    的头像 发表于 12-19 08:23 1638次阅读
    优秀电源<b class='flag-5'>工程师</b>的必备技能大揭秘!

    #人工智能 #FPGA 怎么成为个合格的FPGA工程师

    fpga工程师
    明德扬助教小易老师
    发布于 :2023年12月18日 21:19:01

    FPGA工程师需要具备哪些技能?

    ,需要具备系列的技能,才能胜任日益复杂的设计工作。因此,本文将从设计思路、硬件语言、EDA工具、数字信号处理、通信协议、测试验证等多个方面,探讨FPGA工程师需要具备哪些技能。
    发表于 11-09 11:03

    如何成为一名优秀的嵌入式工程师

    如何成为一名优秀的嵌入式工程师?嵌入式学习的第步,首先是C语言。 1.理解内存管理:C语言不同于高级语言,它不会自动管理内存。因此,
    发表于 11-07 15:36