本人情况:双非软工,Java后台开发,但是由于后端竞争过于激烈,已转客户端,感谢字节爸爸接收零经验客户端小白,送上面经回馈牛客。

 

11.24 一面 1h 15min

Java相关:

  • 面向对象三大特性

  • 你在系统设计的时候考虑了哪些面向对象的特性

  • 动态代理如何实现

  • Synchronized,CAS,Volatile底层原理,使用场景

设计模式:

  • 设计模式用了哪些,有哪些原则

  • 抽象工厂跟工厂方法的区别,其优缺点

  • 单例模式有多少种实现方式,各自的应用场景

  • 说说享元模式

计网:

  • HTTP 1.0,1.1,2.0分别有什么特性

  • 一个TCP连接可以为多少个HTTP连接服务

  • TCP,UDP区别,优缺点,使用场景

  • 详细说说各种拥塞控制算法

操作系统:

  • 死锁的必要条件,如何解决,说说银行家算法(裂开...)

  • 中断有哪几种

  • 局部性原理,哪些地方应用了,详细说说

  • 怎么理解虚拟内存

JVM:

  • 内存模型

  • 如何判断对象可以被回收

  • 哪些对象可以作为GC root,具体垃圾扫描过程说下(三色标记法,增量标记)

  • 回收算法具体怎么实现

  • Java 8之后对 stop-the-world的优化(忘记了,没答上)

算法

  • 最大子序和

 

总体来说一面难度是最大的,问的很全面,有一些点也会被深入问到

 

12.1 二面 45 min

 

二面相对一面少了很多基础,偏项目多一些

  • 介绍项目亮点,难点,如何解决

  • 直接写题:二叉树根节点到叶子节点的所有路径和,复杂度多少,有没有得优化

  • 介绍Spring的原理

  • 用过哪些数据库,说说为什么使用分区表

  • SpringBoot优点在哪

  • 介绍下你接触过的NoSQL数据库(Redis, ES)

  • 剩下的都是项目细节深挖

  • 平时如何学习

  • 愿意转客户端

  • 反问

 

12.7 三面 1 h

 

三面偏软实力跟项目,当然也会考算法题

  • 自我介绍

  • 深挖项目

  • 数据库主从复制原理

  • 数据库主从读写延迟解决方案

  • 线上OOM,死锁,内存泄漏排查,如何生成堆快照

  • 如果网络比较差,TCP会出现什么问题

  • TCP UDP根本区别,网络差的情况下,TCP会出现什么情况,UDP TCP要怎么选择

  • TCP怎么保证可靠传输

  • UDP如何设计可靠传输

  • 说说几种常见的拥塞控制算法

  • synchronized,concurrentHashMap ,volatile原理

  • 如何排查性能慢的代码

  • 最长回文子串,复杂度要优化到O(n), 马拉车安排一波。。。。

面试成功全部归功于这份《Java面试进阶突袭宝典》需要获取的小伙伴可以直接扫码获取

12.14 OC 感谢字节爸爸

长达一年的长跑总算画上圆满的句号了,从2月份疫情开始就投后端实习,但是准备不是太充分,就被各路大神吊打了,6月份找到了国企实习,秋招初期也拿到不少小厂offer,但是我还是想拼一波大厂,最终11月被字节捞起来面试,顺利OC,感谢牛客,感谢字节爸爸。