两年经验社招Java面经,希望能帮助到社招的小伙伴
本人双非本2023毕业,Java选手,正式两年经验,我看牛客社招的面经有点少 所以我来提供一点。
求职历程:
2.5 - 2.20+:刷leetcode hot100算法题 + 黑马面试专题课 系统性的过一遍,因为我的目标是一些中大厂,所以算法必不可少
2.20-3.20:更新简历 BOSS启动,投递50+ 面试四五家公司的样子(大公司岗位好多已读不回),期间就是面试+总结复习 过程还是很累的
三月下旬拿到哈啰of 和华为ODof 后便收手
分享点个人求职经验吧,如果你的学历和简历能过关 尽量刷下算法吧 一天五道题 十天也就刷完了hot100 坚持住 100道题够用了 基本我面的公司算法都会做 都是中等题或者简单题
然后就是八股 多看多深入理解 能结合场景一定要结合场景理解
重点部分:
- 线程池 简历上写了一定要懂原理 比如参数设置 、运行过程、实际项目怎么用的、参数怎么设置、队列怎么设置、为什么?给你一个场景你来设置。。。
- 开发中遇到最难的问题是什么 怎么解决的 一定要有完整的过程场景
- 项目准备、围绕项目中的重难点去介绍 有什么问题 当时是怎么解决的 最后有什么成果
- 反问:一定要准备好起码五个反问问题:建议问部门负责的业务、后续的流程、岗位会遇到哪些难点和收获、团队的规模配比是什么样的、开发模式、技术栈等等
- 自我介绍 建议流畅的介绍工作经历 然后挑点项目讲一下 顺带提一下技术栈 等等 不宜过长
好的进入正题:
转转
一面:
算法:一个字符串,只包含A、B两个字符,求把所有A移动到左边,所有B移动到右边的最小步数
走了索引还是慢
zk的角色 如何理解强一致性
redis如何确保加锁一定成功
线程池的定义规范 有什么经验 从哪些方向
并发优化
JVM CMS 和G1的特点
三色标记算法
为什么不用原生的redis实现分布式锁
redission看门狗怎么续签
二面:
算法:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。
自我介绍
项目难点和解决办法
分片查询怎么防止sql注入
分片查询里面怎么确定预防慢sql
分表策略是什么
有什么优缺点
其他更好的分片策略知道吗
for循环里面的死锁问题怎么排查
间隙锁导致的死锁怎么修复
华为OD
一面
自我介绍
最近的项目
项目是分布式的 分布式的通信怎么进行
SpringBoot 的IOC AOP
自动装配的原理
线程池的使用场景
为什么分表
队列怎么设置的?实例资源怎么配置的
线程池配置
sql层面怎么优化?
Redis的使用场景 用来干嘛
财务数据安全涉及到吗 ? 没
网络方面项目接触过吗 没
算法:返回数组中子数组范围的和
二面:
自我介绍
20分钟读一篇英文文档
10分钟做一道题 二分查找
面试官:我们今天就到这吧 我先去忙了。。。。。
三面:
用Redis干嘛 场景
怎么分表的
HashMap底层数据结构
离职原因
用的微服务的组件
mysql的优化
什么情况不走索引
算法:238. 除自身以外数组的乘积
数数科技
二面:
自我介绍
优点和不足
用ODPS的场景
多线程的运用场景 (CountDownLautch)
排查过什么问题 线上
项目中解决了那些难点
介绍一下Netty
JVM调优过吗
职业规划
哈啰
一面:
线程池生产遇到什么问题 怎么解决的 拒绝策略
生产问题怎么排查
工作流与规则引擎的区别
OOM解决过吗 当时占用多少内存?内存怎么计算的?字符占用多少字节
用的什么垃圾回收器 CMS
CMS作用在什么代
方法区溢出会出现什么问题 垃圾回收会涉及方法区吗
离职原因
算法: 手撕LRU
二面:
线程池底层:大致工作原理,核心线程什么时候创建的? 什么时候销毁?原理是什么?
工作内容 除了写代码还做啥(查线上问题 评估需求)
拷打项目 数据量 分表
服务架构 哪些服务 负责哪些服务
规则引擎技术选型谁做的 了解ava底层吗
JVM划分 各自的工作内容
用的什么垃圾回收 CMS CMS的工作流程 什么时候STW
了解G1吗 有哪些特点 怎么做到的控制回收时间?
拷打项目中的策略模式 如何对抽象层的代码做防腐? 为什么不用编排的形式
编排中的结果传递怎么做的 怎么注入?
线程数量标高怎么排查
es数据怎么同步的(canal) es和数据库一致性怎么保证 (死信队列、定时任务扫描) 有没有更好的方案?
三面:
自我介绍
计费系统难点是什么
线上出现最大的问题是什么
服务监控哪些指标?
工作流的技术选型
任务量级
有哪些线上问题
看别人写的代码有哪几类问题
你看到了会修复吗
平常会看哪些技术专栏书籍?
看JVM 是看源码还是
反问:岗位接受的挑战有哪些
HR面
工作经历
离职原因
公司的工作强度
对哈啰业务了解吗 有哪些
下载哈啰APP了吗
当前的状态 准备主动离职还是被动离职
工作中遇到的挑战是啥
个人的兴趣爱好
个人的优缺点
为什么想待在上海
期望薪资 为什么 当前薪资 上上一份工作薪资
反问 薪资构成、后续流程
东子的达达集团
一面:
自我介绍
MVCC详解
怎么解决的幻读
间隙锁锁的什么? 索引还是数据
怎么排查死锁?怎么解决
Redis主从的数据同步 怎么同步的
RDB怎么写入的?
Redis有哪几种数据结构
Zset底层怎么实现的
哨兵机制的作用
集群新增一个节点的流程
如果一个槽位下架了客户端来访问的流程
RabbitMq是推拉哪种模式
在项目中的使用场景
一直Uack导致什么问题 有哪些方案可以解决?
延迟消息怎么实现 如何实现兼容各种动态的延迟时间?
分布式锁可重入怎么实现的
负载均衡策略有哪些
怎么理解这个负载策略
熔断了解吗
熔断后的恢复机制
如何快速恢复
G1和CMS 有什么区别 各自的特点
哪些对象可以作为根节点
类加载器 双亲委派机制
类加载的流程
对象的init方法什么时候执行
反序列化对象的属性会有默认值吗
volatile是干嘛的?怎么实现的(MESI缓存一致性)
二面:
拷打项目 介绍几个难点
根据介绍的难点一一拷打深入细节 列举异常场景怎么解决
项目的监控有哪些 出现异常流量会怎么应对处理
数据模型
分库分表拷打 优化 遇到XX数据不均匀情况怎么办 有哪些方案
根据数据模型出了一到sql题 你会如何简历索引 为什么 (最左前缀匹配原则)
项目用了线程池?那我给你一个场景你来设置核心参数:
有一个发压程序 100/s 调用A接口需要1s 设计一个线程池提升A接口的吞吐量
反问:聊崩了 问了一面一样的问题 问岗位业务 面试官回答你一面问过了 尴尬死了
然后主动和我聊了岗位面临的难点 高并发高可用那一套
#华为OD##转转##Java##社招 java##软件开发笔面经#