
基本情况
硕士非科班,投递上海百度 Java 后台开发提前批。
面试流程
百度秋招分提前批和正式批,提前批可以选择部门,正式批是统一招聘不分部门。每一面都是面试官提取打电话约时间,基本都是面完分批统一发 offer。
一面(问的比较多,考察基础知识,70 min)
设计模式
- 项目中用到的设计模式
- 说说你常见的设计模式
- 简单工厂,工厂方法,抽象工厂有什么区别?
- 手写单例模式
数据结构
- 说说熟悉的集合,比如 ArrayList 继承了什么,实现了什么?
- Hashtable HashMap,ConcurrentHashMap,TreeMap 有什么区别?
- Hashtable 和 ConcurrentHashMap
并发
- synchronized 和 cas 和 ReentrantLock 有什么区别?
- synchronized 和 cas 性能上的区别?
- synchronized 锁升级的过程
- 还有哪些地方用到了 cas?
- cas 可能有什么问题?ABA
- volatile 解决什么问题?实现原理?
Java基础语法
数据库相关
- Myisam 和 Innodb 引擎的区别?
- 四大范式,实际项目中用到第几范式了?
- 说说 ACID
- 四大隔离级别
- 说说 Innodb 聚集索引
JVM
- 类加载过程,类卸载
- JVM 内存分区
- 出现 OOM 怎么排查?如果程序没问题怎么办?优化 GC 参数
- 都有哪些参数可以优化?
spring
- 说说对 ioc 的理解
- ioc 的作用好处?
- 说说 aop
算法题
- 力扣 200. 岛屿数量 变体题
- 力扣 300.最长上升子序列
二面(考察代码能力)
手写代码
- 手写策略模式
- 两个线程交替打印 A,B(先后写了好几种,顺便写的时候问了你相关的知识点)
其他
- 讲讲 springMVC
- 都用过 spring 哪些模块
- spring 中的常用注解
- linux 常用指令,查看日志
三面(综合面)
场景题
- 比如百度搜索框,打了前几个字,会关联出搜索频率最高的几个词,这个怎么去实现?简化一下问题就是词频统计怎么做?
- rpc 过程中,如果下游失败怎么半?总是失败怎么办?
其它
- 聊了聊部门业务情况
- 问了问我的基本情况
- 为什么想来百度?
- 实习情况
- 能不能提前来实习?
总结
整体来说,百度秋招比春招还是难的,而且总体感觉比较重视基础,问的也都挺细的。面试效率也挺高的,面完一共两三周吧。