阿里 资深Java研发工程师-数据中台 一面总结
9.15 20:30
阿里-数据技术及产品部-资深Java研发工程师-数据中台
时长:1个小时5分钟
面试形式:电话面试
类型:社招(校招?)
1.自我介绍,介绍具体的时间线
2.介绍硕士毕业论文的题目,研究内容,研究方法和当前进度?有考虑用GAN(对抗生成网络)去实现吗?项目中实验的对照组选用什么算法?实验的数据能否获得?
3.简述两段实习经历都做了什么?其中投稿论文是关于什么方面的?
4.介绍裁剪项目中题目背景、遇到难点,所做工作。详细介绍项目中提出的两个核心的算法内容。
5.介绍数仓项目的技术选型、数仓的设计,数据流的设计,数仓的数据来自哪里?Flume和Kafka有什么用?
6.项目中Zookeeper哪里用到?除了Kafka和Hadoop HA,ZK还有哪里用到?除了半数选择机制,知道ZK的工作流程吗?运行中ZK集群中突然leader节点宕机,如何处理?其余节点的状态如何变化?
7.项目中Presto和Druid都用过吗?Presto的工作流程怎么设计的?
8.Presto如果一个节点挂掉了会有什么影响,会恢复部分数据还是全部数据?(后来面试官说不会恢复,单个节点数据失败就失败了)
9.MySQL中InnoDB引擎了解多少?了解多少都说出来。详细说下回表索引什么意思?
10.项目中,MySQL中logBean什么时候生成?
11.MySQL中表越来越大,可以使用什么方法进行优化?(我答了分区。。 他说我说的分区指什么?后来他说是分库和分表,恍然大明白.. )
12.Concurrent包了解多少?ConcurrentHashMap的底层实现和保证线程安全的设计都有哪些?1.7和1.8有哪些设计上的不同?
13.Java高并发了解多少?线程生成方式有哪些?Callable和Runnable有什么区别?为什么使用线程池?线程池的创建方式、三大类型、七大参数、四种拒绝策略都是哪些?
14.若编写的Java程序中出现OOM,如何排查和解决?(我答了排查代码逻辑、JVM的堆内存划分内容、强引用、大量生成字符串对象)
15.死锁会造成OOM吗?
16.最近都看什么技术类的书,有哪些获取新技术的方式
17.会不会SpringBoot?
18.反问问题
ps: 阿里我是8月18号投的正式批,之后做了一次笔试后,一直到9月9号前都没有动静。
后来联系了朋友的朋友把我的简历捞起来了,但是职位推成 社招的资深Java研发工程师,不是一开始投的校招的数据研发工程师。面试官听我自我介绍后,说他那边显示的社招,然后他和我都愣了下,然后他说没事儿,一样面。。
一面整体有点失控,我会的都尽量和面试官沟通了,但是问到Java后端Spring boot等框架和更深层的Java高并发的细节时,我实在说不出来。
后来反问时暗示了是不是岗位有误,我大数据开发的背景还有没有继续面的必要,他说后端和大数据的东西他这里都需要知道,但更偏后端技术栈,大数据端阿里有自己的一套计算框架,Hadoop那些生态是作为客户端处理的。
面试官人非常nice,很耐心的沟通,我回答问题时会有回应,互相有疑惑时也会交流,体验还是挺不错的。
他最后说3天内会出结果,但我感觉应该是凉了... 有点失落,期待了很久的面试,进程这么出乎意料,唉。。