2024最新面试经验分享

目录

主要针对Java程序员,当然也包含一些通用的内容。

重点掌握的知识点

需要重点掌握的知识点必须是当下最流行、最热门、面试被问到的概率最高的知识点,把时间花在掌握这些知识点上的收益最高,不要去研究冷门知识。

Java

HashMap
ConcurrentHashMap
垃圾回收
线程池
arthas
定位OOM

这几个是有代表性的,其他基础知识自不必多说,是需要掌握的。很多衍生出来的知识点,能多覆盖就多覆盖。再举几个例子:

  • 死锁
  • sleep和wait的区别
  • 怎么定位CPU占用高的问题(top -h或者arthas)
  • CMS和G1回收器的特点

MySQL

中间件方面,MySQL和Redis被问到的概率最高,因为这两个应用最广泛。首先说下MySQL,MySQL最容易被问到的知识点如下:

  • 索引相关的,例如索引的数据结构B+树,如何创建高效的索引,哪些情况下索引会失效等。
  • 利用explain+SQL语句查看SQL的执行计划,有哪些指标,该如何理解和分析。
  • MySQL主从复制和读写分离的实现。

其他的,事务、锁、并发问题被问到的概率小一些。

B+树
索引下推
锁和事务的并发问题
读写分离
分库分表

Redis

Redis中经常会考察的知识点如下:

  • 缓存穿透、缓存击穿、缓存雪崩
  • 如何删除BigKey
  • 持久化
  • 缓存淘汰策略
  • 主从复制或者哨兵模式
  • 集群,一致性Hash算法
  • 跳表、布隆过滤器

面试题

微服务

spring cloud和spring cloud alibaba都行,要熟悉每个组件的作用,里面最容易被拿来问问题的是限流、熔断、降级相关的知识点,如果你用的是spring cloud的,可以重点熟悉下Hystrix。

Hystrix要点总结
Hystrix详细介绍

分布式系统

分布式系统最经典的就是一致性问题,关于一致性的几个理论要知道。

分布式事务
分布式锁
分布式ID

项目亮点

项目亮点通常有几种提问方式:

  • 你项目中解决的最复杂的问题
  • 你觉得最有挑战性的功能
  • 你有没有解决过某个问题,是怎么解决的

针对这些提问,可以结合自己的业务场景准备一些案例来作答,比如es的优化场景、利用redis缓存app数据并解决缓存失效的各种问题、mysql慢查询优化等等。回答这些问题时,有几个要点:

  1. 一定不能掺和太多业务上的东西进去,否则面试官光理解你的业务场景就要花很长时间,可能最后还没搞懂,然后不欢而散。
  2. 这个问题的答案尽量多跟技术沾边,最好是通用的技术,否则面试官可能没兴趣了解。
  3. 捡要点说,如果怕自己说不清楚,可以提前写下来,然后理解性记忆。

我的几个案例都来自我平时的工作总结:
es性能优化
Java程序内存优化

另外,回答这类问题可以套用STAR法则(Situation Task Action Result)。

场景题/设计题

短链

短链

抢红包

红包

多租户

参考1
参考2

开放性问题

自我介绍

叫什么,毕业于哪个学校,多少年经验,目前就职于哪家公司,公司主要是做啥的,你在公司主要是做啥的,项目特点(web项目?分布式项目?大数据实时分析项目),业余写博客?刷leetcode?写开源项目?

为什么跳槽

不要说公司和同事坏话,也不要抱怨自己工资低。

团队规模

目前人数少的话,可以按照高峰期的说。

如何带团队

每个项目或者功能模块安排一个首要责任人,首要责任人对自己的模块要非常熟悉,负主要责任,然后每个功能模块至少要有两个人熟悉,这样一个人请假或者离职的时候还能够替补上。

表现优异的要在绩效考核上给与正面回馈,表现不好的要及时沟通和了解情况。

定期组织技术分享,可以分享学习心得、解决问题的经验等等,这样每个人都会觉得自己一直在进步,有成就感。

对团队成员要友善,以鼓励为主,工作上有困难要及时沟通和提供帮助。

一般公司都有活动经费,平时多聚聚餐,定期组织活动,比如打羽毛球、篮球等,培养团队感情,增加凝聚力。

公司有福利的话,力所能及的帮团队成员争取。

如何看待加班

每家公司都有临时的突发事件或工作量繁重的重大项目,这个时候加班很正常,偶尔这样不要紧,能够接受。

职业规划

所面试的岗位技术含量高,就说追求技术。所面试的岗位偏业务,就说追求业务。

相关推荐
狮子座的男孩10 分钟前
js函数高级:06、详解闭包(引入闭包、理解闭包、常见闭包、闭包作用、闭包生命周期、闭包应用、闭包缺点及解决方案)及相关面试题
前端·javascript·经验分享·闭包理解·常见闭包·闭包作用·闭包生命周期
Rock_yzh24 分钟前
LeetCode算法刷题——54. 螺旋矩阵
数据结构·c++·学习·算法·leetcode·职场和发展·矩阵
什么时候才能变强35 分钟前
k6面试高频问题
面试·职场和发展·k6
风止何安啊40 分钟前
从 “牵线木偶” 到 “独立个体”:JS 拷贝的爱恨情仇(浅拷贝 VS 深拷贝)
前端·javascript·面试
漫天黄叶远飞42 分钟前
地址与地基:在 JavaScript 的堆栈迷宫里,重新理解“复制”的哲学
前端·javascript·面试
皮皮学姐分享-ppx1 小时前
中国绿色制造企业数据(绿色工厂|绿色供应链|绿色园区|绿色产品,2017-2023)
大数据·人工智能·经验分享·科技·区块链·制造
以梦为马mmky1 小时前
中南大学经验分享。
经验分享·通信考研·信号与系统·中南大学
贝塔实验室1 小时前
Altium Designer全局编辑
arm开发·经验分享·笔记·fpga开发·dsp开发·射频工程·基带工程
月明长歌2 小时前
【码道初阶】一道经典的简单题:Boyer-Moore 多数投票算法|多数元素问题(LeetCode 169)
算法·leetcode·职场和发展
Metaphor6922 小时前
Word文档中插入图片:使用 Spire.Doc for Java实现自动化与精细控制
经验分享