2020年2月底找朋友直推了快手Java研发实习, 第二天HR发来邮件,约了面试。
一面技术面
- 自我介绍
- Spring介绍一下
- 什么是依赖注入和切面编程
- hashmap 和 hashtable区别
- hashmap底层实现
- arraylist和linkedlist区别,优缺点
- 项目中为什么使用mysql
- mysql引擎索引底层实现
- 什么时候加索引
- Java多线程介绍一下
- 线程池参数了解吗
coding: 实现一下链表的反转
二面技术面
面试官上来就做题,当时是美西时间23:00,不知道为什么当天状态特别差,非常疲惫,一道easy题想复杂了,没有做出来。
然后面试官问了一些关于系统设计和ood的题目,说做一个评论的点赞系统,让我考虑一下如何实现。当时没有了解太多关于系统设计的知识,以为实习范畴不会涉及。就从一些多用户并发点赞的技术实现细节回答,答了redis或者memcached缓存来优化数据库查询,redis计数器来记录点赞次数;还说到数据库读写使用乐观锁。
都被面试官否定了,说回答不在点上…
总之感觉面试体验一般,对我申请职位的考察范围与我的技能栈有些出入。那天又是接近凌晨面试,状态真的差,总之个人不太喜欢连着面好几轮,还都在晚上,对留学生不太友好。