快手-面试经历复盘

9场全是java,6次流程,已经被狠狠6擒孟获了

快手后端一面 50min 23.02 本地生活

1.自我介绍

2.项目

BI项目

*Hbase索引机制

*Hive分区设计

3.java

3.1 JUC

3.1.1 线程池过程和有哪些参数

3.1.2 Syn原理

3.1.3 Syn锁的某个类的时候,发生了什么

4.mysql

4.1 索引

4.1.1 索引种类

4.1.2 索引底层结构

4.1.3 回表

4.1.4 索引下推

4.2 事务

4.2.1 不同隔离级别

4.2.2 事务的特性怎么保证的

4.2.3 不同隔离级别,分别解决了什么问题,怎么解决的

4.3 MVCC

4.4 谈谈快照读和当前读区别,mysqlsql语句怎么写

4.5 讲讲间隙锁

4.6 3大log

4.7 讲讲你了解的分库分表

5.redis

5.1 数据结构

5.2 持久化机制

6.spring

6.1 spring支持的有什么,除了单例还有什么,你项目里怎么用,想开启session怎么开启

6.2 如何自定义注解

7.设计模式

7.1 讲讲了解的

8.lc5

快手后端一面 60min 23.06 数据平台

1.自我介绍

2.实习

3.MySQL

3.1 索引

3.1.1 讲讲你了解的MySQL索引所有的,想到啥讲啥

3.1.2 讲讲索引失效场景

4.java

4.1 HashMap

4.1.1 hashcode和equals

4.1.2 hashmap和concurrenthashmap区别

4.1.3 hashmap扩容过程

4.1.4 只重写equals不重写hashcode会有什么问题

5.大数据组件

5.1 谈谈你对RDD的理解

5.2 谈谈HDFS的架构

5.3 谈谈HDFS的HA怎么实现的

6.数据倾斜

6.1 出现原因,结合自己实际项目经历分析

6.2 解决方案

7.快排

8.lc542

快手后端二面 60min 23.06 数据平台

1.自我介绍

2.大数据组件

2.1 HDFS架构

2.2 HDFS如何保证数据一致性的(不确定指的是数据的一致性还是元数据的一致性?数据一致性应该是检验和,元数据一致性应该是HA)

3.lc232

4.lc70

5.原创题

lc70爬楼梯变种,可以爬1-n阶,n是输入的参数

6.java

6.1 jvm

6.1.1 讲讲jvm线上调优

6.1.2 如何排查OOM问题

6.1.3 Xms和Xmx为啥一般设计一样

快手后端一面 40min 23.07 效果营销研发中心

1.自我介绍

2.实习

3.MySQL

3.1 索引

3.1.1 什么时候加索引

3.1.2 怎么看索引走没走

3.1.3 例子,对于 where A = and B = 。加了两个索引index1(A,B,C) index2(A,B)怎么走索引。

4.cloud

4.1 注册中心和负载均衡用来干啥

4.2 Nacos和其他注册中心区别

4.3 为什么需要注册中心

4.4 没有注册中心,我们怎么实现类似的效果

4.5 openfeign和http的区别

4.6 为什么我们不用http而是要用openfeign

4.7 负载均衡有哪些算法

4.8 openfeign和nignx负载均衡有什么区别

5.lc215

快手后端二面 40min 23.07 效果营销研发中心

1.自我介绍

2.实习

2.1 mysql和redis的qps对比

2.2 选择的过期策略,为什么

3.redis

3.1 hash扩容过程

4.场景题

4.1 有一个业务功能,需要展现一个排行榜,请思考一下设计思路,不拘泥于redis,全面考虑整个功能设计的完善程度

5.java

5.1 juc

5.1.1 线程安全的集合类

5.1.2 Syn原理,包括锁升级

5.1.3 讲讲concurrenthashmap的put过程

5.1.4 Lock原理

6.mq

6.1 kafka适用场景,三种mq,哪种在什么qps下用

7.积累

7.1 calcite

8.lc19

快手后端一面 50min 23.07 HRSaaS-效率工程

1.自我介绍

2.实习

3.Java

3.1juc

3.1.1 线程死锁条件,除了理论也讲讲你实际写过的死锁代码

3.1.2 Syn和Lock对比,尽可能详细

3.2 Hashmap

3.2.1 Hashset怎么判断添加的对象是否一样

3.2.2 hashcode与equals

3.2.3 为什么不用B+树

4.MySQL

4.1 索引

4.1.1 讲讲聚簇索引和非聚簇索引

4.1.2 为什么用B+树

5.lc735

快手后端一面 60min 23.09 增长创新服务端

1.自我介绍

2.实习

3.MySQL

3.1 索引

3.1.1 不同引擎层索引底层

3.2 性能分析

3.2.1 从业务场景分析,什么时候可能MySQL会成为性能瓶颈

3.2.2 从MySQL底层分析,是什么底层结构设计了MySQL的性能,对应的在哪些场景下,性能会比较底下

3.3 如何解决MySQL性能瓶颈问题

3.4 隔离级别

3.4.1 隔离级别和对应的问题,以及解决方案

3.5 MVCC

4.Java

4.1 equals 和 == 区别

4.2 如何自己实现深拷贝

4.3 JUC

4.3.1 如何实现线程间通信

4.3.2 threadlocal原理和使用场景

4.4 JVM

4.4.1 讲讲JVM类加载的设计

4.4.2 讲讲你遇到过的OOM,怎么排查

5.场景题

5.1 有一个业务场景,每个客户可以参加很多活动,每个活动有不同类型的奖励,其方案应该怎么设计(现在看看,其实就类似策略引擎/风控引擎了)

5.2 高并发场景下的电商购买场景,应该采取什么手段保证HA

5.3 超卖问题如何解决

6.原创题

一颗任意的二叉树,转换成一条有序的链表

快手后端一面 60min 24.01 HRSaaS-iHR应用中心

1.自我介绍

2.实习

3.积累

3.1 讲讲RBAC和ABAC

4.MySQL

4.1 索引

4.1.1 讲讲自己知道的

4.2 事务

4.2.1 默认级别,开启一个事务A update a = 1,select,然后再开启另外一个事务B update b = 2,然后A 再select。分析两次select的结果。在读已提交级别下呢。

5.Java

5.1 juc

5.1.1 讲讲实践中用过的juc

5.1.2 多线程场景下,并发输出ABABABAB,要求输出结果对应,线程1只能输出A,线程2只能输出B,想至少4种解决方案

5.1.3 比较不同方案的资源消耗

5.1.4 wait之后还会消耗cpu资源吗

6.mq

6.1 kakfa

6.1.1 讲讲kafka架构

6.1.2 不同kakfa设计下,如何保证其最终结果的有序性

7.lc 69

分析时间复杂度

快手后端二面 25min 24.01 HRSaaS-iHR应用中心

1.自我介绍

2.实习

白板演示所有ER设计,时序设计

#快手##面试##软件开发2024笔面经##java##字节跳动#
全部评论
孟获是吧佬
3 回复
分享
发布于 04-12 16:53 北京
大佬太强了
2 回复
分享
发布于 04-14 17:56 广东
滴滴
校招火热招聘中
官网直投
hh 1-n阶爬楼梯,都演化成完全背包了
1 回复
分享
发布于 04-13 15:37 北京
跪了😰
点赞 回复
分享
发布于 04-12 16:52 山东
下个星期面阿里国际和饿了么,感觉希望不大,还是老老实实去东软实训吧😭😭😭,好哥哥,为什么软院找实习这么难呀
点赞 回复
分享
发布于 04-12 16:58 辽宁
这强度也太高了吧😰
点赞 回复
分享
发布于 04-12 17:05 黑龙江
感觉面完应该蛮爽的,就当是多复习了几次了
点赞 回复
分享
发布于 04-22 20:49 美国

相关推荐

16 53 评论
分享
牛客网
牛客企业服务