飞书办公套件
一面&二面
-
自我介绍
-
HashMap 为什么线程不安全
-
HashTable 并发性能?
-
ConcurrentHashMap 呢?为什么?
-
CAS 为什么性能好
-
CAS 如何实现
-
volatile 是什么,如何实现的?
-
内存屏障是啥?
-
ABA 问题
-
Netty 和 BIO 比性能提高在哪里
-
i++,++i 线程安全问题
-
创建线程的方式有哪些
-
String 为什么线程安全
-
B+ 树特点
-
B+ 树和 B 树区别
-
建立索引需要注意什么
-
为什么不用 AVL
-
MyISAM 和 InnoDB 区别
-
用过哪些持久化框架,MP 你觉得它的优点是什么
-
看你了解过 Spring Cloud,里面有哪些组件
-
CGLib 是如何实现动态代理的?
-
设计模式有哪些?
-
JVM 内存模型
-
垃圾回收算法
-
标记清除,标记复制,标记整理各自特点及优缺点
-
GC Roots 有哪些
-
本地方法栈作用
-
为什么要分新生代老年代
-
一个死循环,里面干一件事儿,不停的创建线程,会出现什么问题?报什么错?
-
git rebase
-
三次握手
做题
-
手写个单例吧(AC)
- 写的静态内部类方式,然后问:是如何保证单例的(JVM)
-
搜索旋转数组(AC)
-
路径总和 II求出一条返回即可(AC)
两面时间有点长了,大致记得是有这些问题,不过有点混乱了,可能还会有遗漏,所以就直接整理到一块,不过基本也都答出来了,所以两次最后问面试官自己表现如
何,都是反馈知识面比较广,还挺扎实的,所以也就给过了。
三面(leader)
- 吃个枣哈哈哈哈哈(上来就对我笑)
- 讲讲 B+ 树(一二面问过了)
- 什么时候适合建立索引
- Redis 数据结构
- 在完美做的那个项目用到Redis干什么了
- 自己做的哪些事情
- 有遇到哪些比较困难的点
- 如何解决的
- Redis 为什么快
- Redis 六种内存淘汰策略
- 做俩题吧(我:俩!? 他:先一个一个来吧哈哈哈,其实这俩是一个系列的)
- 买卖股票的最佳时机(紧张想复杂了,直接暴力做了个 O(N2) 的 QAQ)
- 买卖股票的最佳时机 II(不会,摆烂。。。)
在练动态规划题的时候注意到过股票问题,但偏偏一点没碰,所以紧张了,导致第一题就想复杂了,而且第二题直接贪心更容易理解,面试的时候没有刷过贪心相关
的算法,所以说,苍天饶过谁(下来恶补了二十道贪心)
飞书企业应用
一面
- 自我介绍
- 有哪些垃圾回收器
- 浏览器访问百度流程
- 常见的 HTTP 状态码有哪些。分别代表什么含义?
- 用过哪些集合类,哪些是线程安全的
- RDB和AOF
- HashMap 的存储结构是怎样的
- JMM 是什么
- 一个数组和链表,长度以及保存的内容完全一致,都通过循环遍历,谁更快
- 介绍一下我们团队哈,我们是…
- 交换链表中的节点(AC)
说实话哈,不是我走后门,剩下的一些都是前面问过的,没有太深,因为面试官他说他好久没写 Java 了哈哈哈,所以这里就不重复贴了)
二面(leader)
-
上一轮那个 小X 给你介绍了我们的部门吧?我再介绍一下吧。
-
访问字节官网,如何保证你访问的就是字节的官网,而不是被篡改的假网站?
-
HTTPS 和 HTTP 区别
-
对称加密和非对称加密?
-
获取到对方公钥如何确保是正确的?
-
来写题吧,咱们主要也是考验代码功底
-
输入 num 和 n,将十进制 num 转换为 n 进制,力扣原题只找到了一对一转的,没有一对 N 的(AC)
-
有效的括号(AC)
最后给我说,三面是交叉面,周末多刷刷题,算法是一个敲门砖,祝我好运,小声 BB,这样的 leader 给我来一打
三面(交叉)
- 你是达州人?哈哈我老家在你隔壁安康
- 那来做个题吧( what??)
- 接雨水(AC)
- 看你做挺快,代码这块我这边过关了,咱再做一个吧,再看看你代码水平
- 0~9 的环,从 0 出发,N 步后走回 0,有多少走法?
- 又是动态规划,在面试官的各种暗示下,含泪写出来
- 好,看看简历哦,你这项目还挺多哈,我就问问 MySQL 吧,你说为什么 MySQL 索引用 B+ 树,有什么特点?
- 那我想用二叉树,可以吗?
- 那我还不死心,我要用 Hash
- 为什么不用跳表啊?
- 什么是幻读?
- 如何解决幻读的?
- MVCC 解决的是啥问题?
- 看你写的 RPC 框架用到了 Zookeeper 是吧,你知道他如何保证主从节点的数据一致性的吗?
- 我看你还读过 Jenkins 源码,你们项目用 Jenkins 干啥?
- 然后进入聊天模式,我开始吹我以前看过的 Hudson 和 Jenkins 的八卦历史,和 Jenkins 的插件开发
- 最后开始互吹模式。。(省略若干字)。。期待你来公司请我喝奶茶哈,来了应该是隔壁 XXX 的团队。。。
回顾这三轮面试,可能我在办公套件那边面试评价应该挺全了,难度个人感觉要下降了一点点,问的也要少一点点
校招虽然考察的是java技术栈,但是入职后,是用Golang开发的,也就是说,今天开始,我要转Golang啦