---
url: /blog/8ly5ipos/index.md
---
## 一、面试流程

小厂通常流程为 **笔试 + 1~2轮技术面 + HR面**，比大厂少一轮技术面。

| 环节  | 小厂特点               |
| --- | ------------------ |
| 笔试  | 30分钟~1小时，部分公司甚至省略  |
| 技术面 | 通常1~~2轮，每轮40~~60分钟 |
| HR面 | 聊薪资、期望、入职时间        |

面试比例大致为：**10% 手写代码 + 20% 基础八股 + 40% 深挖项目 + 20% 开放问题 + 10% 聊人生**

***

## 二、笔试形式

### 常见题型组合

1. **选择题**（10~20道）：Java基础 + 数据库基础 + Spring基础 + 简单数学逻辑题
2. **简答题**（3~5道）：概念辨析、原理阐述
3. **编程题**（1~~2道）：LeetCode easy~~mid难度
4. **场景题**（1道）：系统设计或业务实现思路

### 真实笔试示例

某小厂（50人左右）笔试：

* 20道选择题 + 4道简答（`finally/final/finalize`区别、Java数据类型、值传递与引用传递、`ArrayList/Vector/LinkedList`区别）+ 4道编程（手写单例模式、字符串格式化输出、文件目录遍历、SQL两表联查）

***

## 三、面试高频题目分类

### 1. Java基础（必考）

* `HashMap`底层原理、扩容机制、线程安全性
* `ConcurrentHashMap`如何保证线程安全
* `==` 和 `equals` 的区别
* `String/StringBuilder/StringBuffer` 区别
* `final/finally/finalize` 区别
* 反射的理解和应用场景
* JDK动态代理 vs CGLIB动态代理
* Java 8新特性（Lambda、Stream、Optional）

### 2. 并发编程（高频）

* 线程池核心参数、执行流程、拒绝策略
* `synchronized` 与 `volatile` 的区别
* `ThreadLocal` 原理及内存泄漏问题
* CAS原理、ABA问题
* 乐观锁与悲观锁
* 死锁的产生与规避

### 3. 数据库/MySQL（重点）

* InnoDB vs MyISAM 区别
* 事务四大特性（ACID）
* 四种事务隔离级别，MySQL默认哪个
* 索引类型、最左前缀原则、索引失效场景
* 间隙锁、MVCC原理
* SQL优化经验

### 4. 框架（Spring/SpringBoot）

* IOC和AOP的理解
* `@Controller` vs `@RestController`
* 声明式事务 vs 编程式事务
* Spring Bean生命周期
* SpringBoot自动装配原理

### 5. 中间件

* **Redis**：数据类型、持久化（RDB/AOF）、缓存穿透/击穿/雪崩、分布式锁
* **MQ**：使用场景、消息可靠性、幂等性
* **Nacos**：注册中心 + 配置中心

### 6. 项目深挖（占比最大）

* 简历上写的项目会逐行追问
* 为什么用这个技术方案？有没有考虑过替代方案？
* 遇到了什么难点？怎么解决的？
* 系统的QPS、数据量、架构图

### 7. 算法（少量）

* 小厂算法要求较低，通常LeetCode easy~mid
* 常见：反转链表、二分查找、排序算法、字符串操作
* 部分小厂**不考算法**，全程问项目+八股

***

## 四、小厂 vs 大厂面试差异

|维度|小厂|大厂|
|---|---|---|
|面试轮数|1~2轮技术面|3轮技术面|
|算法要求|easy~mid，甚至不考|mid~hard，必考|
|八股深度|偏基础，不追太深|追问很深，要求底层源码|
|项目权重|占比最大（40%+）|占比适中|
|侧重点|能干活、上手快|基础扎实、潜力大|
|笔试|简单，部分无笔试|标准化在线笔试，通过率25~30%|

***

## 五、备考建议

1. **项目经历要烂熟于心**——小厂最看重实战能力，简历上的项目要能说出每个细节
2. **八股文覆盖核心模块**——Java基础、集合、并发、JVM、MySQL、Redis、Spring
3. **算法刷LeetCode前300道的easy~mid**即可
4. **了解微服务基本概念**——Nacos、Gateway、Feign等，即使没深度用过也要能说出基本概念
5. **准备一个好问题反问面试官**——体现主动性和思考深度

Sources:

* [中小厂Java后端面试经历(笔试+面试)](https://blog.csdn.net/m0_63352294/article/details/137081158)
* [大中小厂技术面试流程](https://blog.csdn.net/m0_45362454/article/details/144963647)
* [小厂实习技术面经分享](https://zhuanlan.zhihu.com/p/617959648)
* [历经70+场面试总结](https://www.nowcoder.com/discuss/353150773779439616)
* [面试全流程攻略](https://zhuanlan.zhihu.com/p/1959763438822744218)
* [Java面试题汇总 - 小林coding](https://www.xiaolincoding.com/interview/)
