携程2022留用后台开发(等待英语测评结果)
笔试
5月做了一次笔试1.62/2,没有面试的机会
6月做了一次笔试AK(2/2)隔了两个礼拜,约了面试
一面(40mins)
6/22
自我介绍(个人博客、CSDN、公众号,普拉普拉)
用过那些集合(普通集合、同步容器、并发容器)
数组和链表各种的优缺点
ArrayList和CopyOnWriteArrayList区别、性能区别、底层实现区别
聊聊hashMap(我准备说1.7和1.81.7、1.8源码),面试官只让我说了1.8
开始聊红黑树,简单说说红黑树、了解左旋右旋吗?为什么左旋右旋。红插,父节点是黑色的,需要怎么操作。什么时候左旋右旋?意义何在?红黑树的性质?后面基本20mins都在说红黑树(详细到,插入的具体场景)
项目难点?怎么解决
为什么用elasticSearch?底层了解?
看你项目用到了Redis,说说Redis为什么快吧,持久化RDB、AOF了解吗
为什么用Redis(我没说出来,面试官笑着说:为了体验新技术;我说:是的,哈哈哈哈)
重点说了一下建表问题
做了一道题leetcode33. 搜索旋转排序数组(之前做过,面试时候紧张没做出来,和面试官互相瞪了一会,面试官打破了尴尬:行吧,你简单说下思路,我:二分查找,但是需要先恢复它的二段性,普拉普拉)
反问
面试体验:题没做出来,我以为自己都凉了,结果没想到下午收到了二面短信,应该是红黑树抬了我一手,我说的很详细,给面试官说自己之前自己手写过,总之比较幸运
二面(35mins)
6/23
自我介绍
简单说一下项目,你遇到的难点,怎么解决的,为什么要做这个项目,做这个项目的初衷是什么?
简单说一下JVM,需要说出来JVM内存结构、每一部分的作用、为什么会产生双亲委派机制?
并发编程,三个原则、怎么保证的(没有问AQS,问的话就太好了,专门看了AQS的源码)
因为我项目聊到了mysql建表的整体思路,所以面试官问了我,怎么建索引?为什么建索引?应针对那些字段建立索引(我提了B+树,复习地很溜了,他没问我B+树),提出了一张表中如果数据量是千万或者上亿的时候应该怎么处理(读写分离、分库分表、水平分表、垂直分表ShardingJDBC、MyCat)
如果产品经理给你一个需求,你应该怎么解决这个需求(应该先分析这个需求的合理性,然后去选用对应的技术)
反问
二面感受:面试官很和蔼,聊天很放松,不会的问题他会引导我,聊的很融洽,他给我讲了许多技术上的学习方法,面试体验极好
HR面试
约在了6/24
英语测评
6/24下午
答得很不好
- 读句子还行,各别单词ducuol
- 跟读基本没有读上来
- 听力短文,没听明白
- 主题,洪水,之前刚好背了一篇,还可以
- 语法和反义词也还行
英语测评挂不挂人啊,好焦虑啊
求offer
求offer