成都 Java 社招面经(5年经验)

裸辞是真的爽,找工作也是真的痛苦,尤其今年环境这么差,以后再也不敢了hhhh

在此整理一下面经,留个记录的同时也希望能帮到各路朋友~

掌阅(转go)

一面 30min

项目相关

hashmap扩容机制

mysql索引,最左匹配,索引覆盖,索引下推,索引失效情况,查询优化

jvm调优参数

redis底层结构,跳表实现,分布式锁实现,缓存一致性

算法:获取所有回文子串

二面 30min

项目相关

protobuf为什么快

kafka顺序消费

kafka和rocketmq区别,使用场景

kafka如何存储数据

redis数据类型,hash底层,为什么使用ziplist,如何扩容

redis如何保障高可用(持久化,集群架构)

redis哨兵如何选主

mysql索引失效情况

mysql和mongodb区别

mysql和mongodb索引区别

mysql事务实现

算法:双线程打印1-100

抖音(转go)

字节面试是真的难啊,每一面都要考算法,而且对项目和基础挖的很深

一面 1h

项目相关

kafka如何保障高可用

kafka高吞吐量原因

kafka文件索引实现

kafka重平衡过程,会造成什么问题,是否可对外服务

kafka ack设置

redis架构

redis哨兵模式选主策略,优先级是否可变

redis aof重写流程

redis过期删除策略,定期删除如何检索key

redis主从复制过程

算法:岛屿最大面积

二面 1h

项目相关

msyql和mongodb索引,mongodb b+树区别

mysql事务ACID,实现

mysql MVCC 实现

mysql 为什么用b+树索引

mysql聚簇索引,非聚簇索引,回表

msyql char和varchar,varchar和text区别,varchar支持的最大长度

redis 数据类型,sds、跳表实现

java并发类,关键字

volatile关键字作用

synchronized底层实现,性能表现,锁升级

算法:z字型打印二叉树

三面 1h20min

疯狂拷打项目

jvm内存结构

方法区存储什么数据

jvm调优参数

可重入锁,底层实现

synchronized是否可重入

netty了解吗

网络io分为哪几种

反射,使用场景

aop实现,动态代理

java类加载流程

算法:lc143,重排链表

美团

面试难度比字节简单,但二面的系统设计没答好给挂了,有点可惜

一面 50min

项目相关

kafka如何保障顺序消费

秒杀场景

redis持久化

redis热点key问题

mysql主从复制

mysql innodb和myisam区别

MVCC实现

双亲委派机制

synchronized和lock区别

指令重排序

spring ioc aop

线程上下文切换,什么情况下会导致

hash碰撞如何解决

ABA问题

为什么离职,有哪些offer

算法:lc92,反转链表

SQL:三表联查,login,user,client

二面 1h

项目相关

spring aop实现,动态代理

jvm内存结构

concurrenthashmap 底层原理

设计模式,工作中应用

系统设计:动态线程池

系统设计:多机房数据一致性

多人项目流程

离职原因,有哪些offer

算法:三数之和

拓展:四数之和,k数之和

招银

面试感觉很水,尤其二面感觉啥也没问,最后还给挂了,问了下在招银的同学感觉应该是给不起薪资。。。

一面 40min

项目相关

hashmap扩容细节

hash碰撞解决方案

一致性hash算法

java锁机制,synchronized锁升级

lock是否公平,能否实现非公平,如何实现

springmvc三层好处

kafka如何保障不丢失

kafka如何保障顺序消费

kafka不同应用设置同一消费组消费不同topic是否有问题

kafka重平衡

kafka发送失败如何处理

算法:已排序数组找到第一个指定数字位置

二面 30min

项目相关

tcp与udp区别

tcp三次握手四次挥手

tcp快速重传机制

海量数据

一家做国产数据库的公司,不过成都这边人很少,只有几十个,最后也是因为团队配置问题给挂了

一面 40min

项目相关

hashmap中将对象作为key需要注意哪些问题

介绍下索引

oom异常如何排查

看过哪些框架源码

系统设计:不同数据库sql转换,词法分析

场景:mysql binlog读取写入kafka,服务挂掉了如何处理

场景:消费kafka一批数据写入数据库,服务挂掉如何确认某一消息是否已写入

算法:lc3,无重复字符的最长子串

二面 50min

项目相关

线上问题处理流程

垃圾回收算法

mysql主从复制,binlog

算法:lc3184,构成整天的下标对数目1

三面 40min

项目相关

能接受的工作压力(?)

个人优势

对开源技术的关注度

马上消费金融

问的问题有点奇怪,可能是岗位不匹配吧,一面完就没后续了

一面 40min

介绍下cas

线程池参数

rpc调用中,trace-id如何传递

并发包,threadlocal

aop,动态代理

实现一个springboot starter

用过哪些设计模式,策略模式和代理模式区别

synchronized,锁升级

java原子类,atomicInteger,底层实现

场景:数据库读写分离,如何改代码

蚂蚁金服

电话面试,所有问题几乎都是依赖场景提问的,可惜业务方向和过往经历不匹配给挂了

一面 40min

项目相关

hashmap,扩容,为什么是2倍

hashmap多线程put会引发什么问题

spring事务下,多线程修改数据库,失败后是否全部回滚

spring循环依赖,如何解决

redis故障恢复,rdb和aof区别

aof日志写入流程,刷盘策略

mysql索引,最左匹配,走不走索引的结果区别

for update语句,innodb加了哪些锁

场景题:多线程转账,如何确保转账成功

阻塞队列底层实现

字节飞书(转go)

抖音挂了被隔壁飞书捞起来了,又来一轮拷打,麻了

一面 50min

项目相关

项目重新设计的话可以有哪些优化

场景:海外规避隐私合规获取用户数据

算法:智能水龙头

二面 1h

项目相关

varchar、char、text区别

索引覆盖

长文本如何建立索引

分库分表

mysql自增id问题

缓存一致性

微服务问题排查流程

线上问题定位

系统设计:短链服务

算法:打印数组中所有比前面小比后面大的数字

东方财富

一面问的基础都很深,但没咋问中间件相关的;二三面感觉纯走过场,最后还是因为过往经历不匹配挂了,可惜

一面 50min

项目相关

JMM相关

线程池多线程操作对象,是否需要加volatile保障可见性

volatile关键字,禁止重排序如何解决多线程可见性

final关键字,和可见性是否有关

事务消息

mysql事务隔离级别,不同级别的锁机制

算法:lc122,买卖股票的最佳时机2

二面 20min

在oppo负责的工作

部门架构与职能

为什么主动离职

三面 10min

在oppo负责的工作

为什么主动离职

未来的职业规划

对oppo有什么不满意的地方

期望薪资

京东

官网投递了很久都没消息,还是上猎聘投递才约面试,绝了。。。

过程很效率,三场面试一周内结束,不过发的offer按照20薪计算压月base,感觉有水分拿不满。。。

一面 50min

项目相关

kafka如何保障顺序消费,多消费者情况下呢

caffeine底层实现

hashset底层实现

redis hash实现细节

如何实现公平锁、非公平锁

synchronized和lock区别

MVCC实现

间隙锁实现

mysql主从同步,binlog分为哪几种模式

mysql慢查询优化

springboot bean生命周期

spring事务实现,@Transaction注解原理

垃圾收集器,jvm调优参数

场景:线上cpu100如何排查

场景:接口有大量第三方接口调用,如何优化

场景:线上机器频繁full gc如何排查

二面 30min

项目相关

场景:实现一个定时调度组件

jvm结构,方法区存储的是什么

堆gc时的流转

场景:线上机器频繁full gc如何排查

用过动态代理吗

平时对哪些技术方向感兴趣

高并发情况下优化

限流算法

个人的优点和缺点

有哪些offer

三面+hr面 30min

项目相关

springboot核心模块有哪些

消息队列使用场景

平时工作中遇到的问题

绩效和晋升情况

优点和缺点,老板评价

职业规划

oppo的优点和缺点

阿里诚云

投的时候没看清以为是阿里云,结果面试的时候跟我讲是阿里诚云科技,回去搜了下发现是内包公司,感觉没啥意思。。。

不过面试体验倒是挺好,最后hr面因为时间来不及就直接拒掉了

一面 45min

项目相关

创建线程的方式

线程底层执行的具体方法

双亲委派机制,如何打破

@Transaction注解实现原理

AOP,动态代理

mysql,int索引和字符串索引有什么区别

字符串索引怎么实现比较好

mysql原子性如何保障

除了undo log还有哪些log

binlog和redolog使用场景

redis分布式锁如何实现

缓存击穿如何处理

算法:lc82,删除排序链表中的重复元素2

算法:lc295,数据流的中位数

二面 40min

项目相关

过往经历,为什么离职,对未来的方向规划

为什么选择使用mongodb

印象深刻的技术提升

arp协议

linux僵尸进程和假死进程区别

linux df和du区别

算法:lc98,验证二叉搜索树

算法:lc163,寻找峰值

美团

又被捞起来了hhh,一面常规问题,二面面试官感觉是架构师,问了很多架构以及系统设计上的问题

hr面过了还在定薪流程中,如果给发offer不出意外就选团子了,毕竟离家近hhh

一面 1h

中间件开发注意事项

mongodb和mysql区别,如何选型

mongodb复杂查询、排序

事务四大特性,mysql如何保证

mysql锁机制

mvcc具体实现

varchar和char区别,最大长度

redis优势,解决了哪些问题

redis内存淘汰策略

分布式锁实现

redis热点key问题如何解决

kafka如何保障顺序消费

kafka ack有几种,什么区别

kafka底层如何存储数据,文件索引具体实现

java类加载过程

线程池使用场景,核心参数

拒绝策略有哪些

如何实现一个动态线程池

算法:lc114,二叉树展开为链表

二面 1h

离职原因

项目相关

涉及到多个大型子系统,如何做架构设计,方法论

DDD

hr面 20min

离职原因

个人及家庭情况

过往经历

自我评价,周边人评价

职业规划

更希望做偏业务还是偏底层

期望薪资

非凸(转rust)

一家做量化交易的,面试体验还可以,两场面试一起搞定很效率

一面+二面 2.5h

算法:实现滑动窗口时间限流算法

项目相关

hashmap和concurrenthashmap

redis hash扩容,渐进式rehash

kafka不丢失配置

并发包类

abc线程按序执行

主线程等待两个子线程执行

BIO、NIO

IO多路复用

线程池参数,如何配置

CAS

对于转rust语言的看法

有哪些offer

#面经##社招#
全部评论
我怎么感觉校招和社招八股都差不多啊
1 回复 分享
发布于 昨天 18:12 福建
点赞 回复 分享
发布于 昨天 16:33 北京
在OPPO干了5年吗?
点赞 回复 分享
发布于 昨天 18:33 四川
个人感觉八股方面难度和校招差不多
点赞 回复 分享
发布于 昨天 18:46 广东

相关推荐

京东 数据挖掘算法 (n+7)*19
点赞 评论 收藏
分享
10 34 评论
分享
牛客网
牛客企业服务