快手面经
凉经,发出来攒一下人品
部门:数据平台部
岗位:Java
一面
- 自我介绍
- 个人项目介绍
- 实习选一个最具有挑战性的介绍一下。
- SQL优化
- 详细讲讲SQL优化 (吟唱5分钟)
- 进一步的优化空间
- 缓存异步
- 算法,买卖股票的最佳时机,2分钟秒了
- 面试官说我写太快了,再出一道题😂
- 手写阻塞队列,15分钟
- 取和拿分别加锁元素为空的时候消费者阻塞容量满的时候生产者阻塞
- HashMap底层实现
- 怎么判断两个元素相同:hash值 + equals
- ReentrantLock和synchronized区别
- synchronized锁升级过程
- JVM内存结构,垃圾回收
- 介绍一下g1
- g1和其它垃圾回收器区别(没答好)
- 最大的区别是什么
- CMS和g1区别?
- CMS应用新生代和老年代, 新生代年龄为10的时候转移到老年代有这个操作嘛:CMS一般配合其它回收器使用,CMS一般负责老年代
- MySQL索引底层实现?
- 为什么使用B+树
- 与B树对比 + 与跳表对比
- 再写个题,查找链表倒数第k个元素
- 一开始以为知道链表长度,后续提醒用快慢指针,才知道没有给链表长度
二面
- 自我介绍
- 实习,优化慢SQL
- 简短总结一下
- 实习,空间优化讲解一下
- 什么时候毕业?
- 手里其它offer
- 对工作base地有要求吗?
- Java多线程有用吗?
- 怎么用的
- 如何实现同步代码块
- 乐观锁和悲观锁区别
- 锁消除
- 方法内联
- JVM 内存布局
- 怎么用栈实现方法调用
- ConcurrentHashMap
- 底层实现分段锁
- 手撕
- 消费者生产者模拟->阻塞队列
- 连续子数组最大和
三面
- 面试官迟到,因为跟前一个候选人聊的比较久
- 面试官自我介绍:数据平台部-生产与分析平台负责人,负责大数据的生产,数万亿行的数据加工成核心的数据资产。分析:通过BI平台,分析平台来供用户分析和决策
- 自我介绍
- 实习最好的一段,SQL优化
- 进一步优化思路方案
- 是导师帮助的吗
- 如何给的建议
- 实习,存储、传输带宽优化
- 两段实习带来的影响,跟学校相比的差异性
- 有哪些学校里的知识在工作中用到过的
- 算法:从左下角环形遍历二维数组(面试官中途离开)
- 自己写测试用例
- 面试官提醒加上单行、单列
- 当前找工作目标的公司,进展的怎么样
- 秋招
- 读研打算
HR面
面试官在工位上面的,噪音好多,常规hr问题。
后续
hr面完两个工作日后挂了