|
| 1 | +写这篇文章主要是为了回答球友的一个提问,提问如下: |
| 2 | + |
| 3 | +<img src="https://images.zsxq.com/FnQni8YSJnmf0pggEU2v97la8asf?imageMogr2/auto-orient/thumbnail/800x/format/jpg/blur/1x0/quality/75&e=1585670399&token=kIxbL07-8jAj8w1n4s9zv64FuZZNEATmlU_Vm6zD:eWVfRnoHs3OVvuAjN8Ysv29oues=" style="zoom:50%;" /> |
| 4 | + |
| 5 | +刚好自己对这方面有一丁点的见解,所以回答一下这位老哥的问题,如果能够解决他的问题,我也会很高兴。下面仅仅代表个人一件,环境大家批评指正与完善! |
| 6 | + |
| 7 | +先说一下自己的经历,大学的时候我从大二开始学习 Java ,然后学了大半年多的安卓。之后就开始学习 Java 后台,学习完 Java 后台一些常用的知识比如 Java基础、Spring、MyBatis等等之后。因为感觉大数据领域发展也挺不错的,所以就接触了一些大数据方面的知识比如当时大数据领域的霸主 Hadoop 。 |
| 8 | + |
| 9 | +> 我当时学习了很多比较古老的技术比如现在基本不会用的 JSP、Struts2等等。另外,我 |
| 10 | +
|
| 11 | +所以,我当时在找工作之间也纠结过自己到底是投大数据岗位还是Java后台开发岗位。 |
| 12 | + |
| 13 | +主要纠结点如下: |
| 14 | + |
| 15 | +1. **薪资:** 大数据当时的薪资水平高于 Java 后台开发很多; |
| 16 | +2. **前景:** 我个人感觉大数据岗位的发展前景很好; |
| 17 | +3. **个人偏见:** 感觉大数据开发比 Java后台开发听着高大上点(哈哈,当时的我就是这么真实); |
| 18 | + |
| 19 | +不过在我分析了大部分公司的大数据岗位的要求以及自身的优势(Java后台开发的实际经验)之后还是义无反顾的只投递 Java 后台开发岗位。 |
| 20 | + |
| 21 | +先来看一下几家典型的互联网公司对大数据工程师的要求(我找的都是允许应届毕业生投递的岗位): |
| 22 | + |
| 23 | +**SHEIN** |
| 24 | + |
| 25 | +> 很多人可以不了解这家低调的公司,主要原因是因为 SHEIN目前的主要业务是出口跨境电商,用户基本集中在海外。SHEIN 这些年的发展非常不错,总的来说是一家值得去的公司。 |
| 26 | +
|
| 27 | + |
| 28 | + |
| 29 | +SHEIN 的大数据岗位的要求写的还是比较有代代表性的!但是我觉得加上:**有扎实的Java基础、熟悉多线程与JVM相关原理** 这一条可能会更好! |
| 30 | + |
| 31 | +一家公司可能并不具有代表性,我们再来找一家公司的大数据岗位看看。 |
| 32 | + |
| 33 | +**Alibaba** |
| 34 | + |
| 35 | + |
| 36 | + |
| 37 | +说明一下,阿里巴巴大的大数据开发岗位的描述其实挺友好的比如这样描述: |
| 38 | + |
| 39 | +> “如果你有参与过数据处理、分析、挖掘等相关项目更好”、“如果你对Hadoop、Hive、Hbase等分布式平台有一定的理解更好”。 |
| 40 | +
|
| 41 | +实际是这样吗?nonono!我信你个鬼,你个糟老头子坏的很!毕竟这么多人竞争这一个岗位,不会像描述的这么简单。 |
| 42 | + |
| 43 | +如果你对 HDFS、HBase、Hadoop 甚至是 Elasticsearch这些不了解的话,还是会很难入场。 |
| 44 | + |
| 45 | +**总结一下(偏大厂)大数据岗位的对于应届生的基本要求(社招的其实也差不多,对于经验要求会更高):** |
| 46 | + |
| 47 | +1. **算法和数据结构是最基本的(比如手写快排、手撕红黑树)。** |
| 48 | +2. **有扎实的Java基础、熟悉多线程与JVM相关原理。** |
| 49 | +3. **熟练使用 Linux ,熟悉一门脚本语言 shell 或者 Python** |
| 50 | +4. 熟悉Hadoop架构和工作原理、MapReduce编程、HDFS;熟悉Hive,最好有HQL优化经验; |
| 51 | +5. **熟练掌握 Spark 及 Spark Streaming开发,有实际项目研发经验更佳;** |
| 52 | +6. 熟悉 Elasticsearch、Kafka等技术会是加分项; |
| 53 | +7. ...... |
| 54 | + |
| 55 | +所以,总的来说不论是对于 **Java 后台开发还是大数据开发都会要求你的数据结构和算法 Java 基础、多线程、jvm 底层这些掌握的要很好。** 很多人 Java 后台的人转大数据开发很快的原因也是在这里。 |
| 56 | + |
| 57 | +正常一点的大数据面试还是比较有难度的,比如如果你写了你会 Spark 的话,他就会问题你: |
| 58 | + |
| 59 | +1. 什么场景下用的Spark ?解决了什么问题? |
| 60 | +2. Spark 执行机制了解吗? |
| 61 | +3. Spark 内存模型了解吗? |
| 62 | +4. ...... |
| 63 | + |
| 64 | +另外,如果你的简历上写了你会 Spring 这些东西的话,面试官应该也会一并提问。可以看出现在的大数据岗位没有强制性要求你有 web 开发经验,在我那一年的时候,大部分大数据开发岗位都要求你还要有 web 开发经验。 |
| 65 | + |
| 66 | + |
| 67 | + |
| 68 | + |
| 69 | + |
| 70 | + |
| 71 | + |
0 commit comments