数据部门岗位一般可以分为 前端开发
/后台开发
/ETL工程师
/算法
等方向
这里简单谈一谈目前在阿里数据部门后台研发要求:
-
计算机基础
- 基本的数据结构和算法需要理解
- 操作系统原理需要理解, 推荐《深入理解计算机系统》
- 编译原理简单了解
-
熟练掌握Java语言
- 对Java语言要深入理解, 推荐看一下《Java核心技术: 卷一》
- 多线程, 并发编程, 推荐《java并发编程实战》
- 对Java虚拟机的运行机制要有一定的理解, 推荐《深入理解java虚拟机》
- Java 8, 推荐看一下: https://github.com/shekhargulati/java8-the-missing-tutorial
- 常用的类库如 apache.commons, guava
-
开发能力
- 深入理解spring-mvc架构
- 熟练使用spring, spring-boot, mybatis等框架和工具: https://spring.io/
- 熟悉掌握常用的设计模式, 这个推荐深入阅读一下: https://github.com/iluwatar/java-design-patterns
- 熟悉数据库表的设计, 调优等
- linux常用命令要了解
- 简单掌握至少一种脚本语言, 如python
- 简单了解Docker
-
对目前的大数据栈的技术有一个比较全面的了解, 深入其中的某一个就非常棒了
- 数据库
- 深入理解常见的数据库的设计架构, 其中用到的数据结构, 算法等
- SQL执行流程和优化, 可以了解一下calcite: https://calcite.apache.org/
- Hadoop技术栈
- Hadoop/Yarn/Zookeeper
- Spark/Spark SQL/Spark Streaming
- Storm/Flink/Beam
- 大数据查询 Presto/Kylin/Druid/Impala, 推荐一本书: 《Druid实时大数据分析》
- 调度 airflow, azkaban, kubernetes, mesos
- 中间件
- 消息中间件 kafka/ rocketMQ, see: https://github.com/apache/incubator-rocketmq
- 缓存中间件 memcached
- 数据库
当然,只要你的学习能力够强,有些技能也是可以延时加载
的.
最后广告时间:
有意向加入阿里大数据做一些有意义的事情的小伙伴请
发送简历至:forrestzhu.zl@alibaba-inc.com
【JAVA开发职位】
职位名称: JAVA资深开发工程师/专家/高级专家
工作年限 : 2年以上
学历要求: 本科 (能力靠谱这就不是问题)
期望层级 : P6/P7/P8