P9 · 面试冲刺(W41-52)
目标:拿下中大厂中级 Java 后端 offer 周期:3 个月(投递 + 一面 + 二面 + 三面 + HR + 谈薪)
一、面试准备三阶段
阶段 A · 八股文体系化(W41-46)
目标:建立清晰的知识索引,能随时调出
必备八股文清单
- Java 基础:集合、JUC、IO、反射
- JVM:内存模型、GC、调优、类加载
- MySQL:索引、事务、锁、MVCC、优化
- Redis:数据结构、持久化、集群、缓存设计
- Spring:IoC、AOP、事务、源码
- Spring Boot:自动配置、Starter、Actuator
- Spring Cloud:Nacos / Sentinel / Gateway / Seata
- MQ:RocketMQ / Kafka 原理 + 三大问题
- 分布式:CAP / BASE / 锁 / 事务 / ID
- 设计模式:至少 15 种,能配 Spring 源码案例
- OS & Network:TCP/HTTP/HTTPS、进程/线程/死锁
- 算法:200 题沉淀
任务清单
- 把 P1-P8 的所有 md 笔记重读 1 遍,标红薄弱点
- 整理「八股问答卡片库」每张卡 1 问 1 答(含场景)
- 每天默写 5 题,写下来能讲出来才算会
- 用 Anki 制作间隔重复卡片
阶段 B · 系统设计与项目深挖(W47-50)
系统设计 12 经典题
- 短 URL 生成器
- 微博 Feed 流(推/拉/Pull+Push)
- 12306 抢票系统
- 秒杀系统
- 抖音推荐系统
- 拼多多砍价
- 限流系统
- 分布式锁设计
- 消息队列设计
- 网关设计
- 配置中心设计
- 海量数据查询
每题 4 步答题框架(PASS)
- P(Problem):题目 + 难点澄清
- A(API):接口设计 / 数据模型
- S(Scale):性能预估、容量估算
- S(Solution):架构图 + 关键方案 + 折衷
项目深挖 4 步法(每一个项目都要过)
- 架构图:画出模块与依赖
- 难点 + 解决方案:1-2 个最有技术含量的点
- 量化成果:QPS / 性能提升 / 用户量
- 复盘反思:如果重做你会改什么
任务清单
- 12 道系统设计题每题写 1 页 A4(手写优先)
- 3 个项目每个准备 30 分钟的口述稿
- 让朋友模拟面试 5 次,每次录像复盘
- 把每次面试问到的题记下来,归类到八股清单
阶段 C · 投递 + 面试实战(W51-52)
投递策略
目标分层:
- 冲刺:中大厂(阿里、字节、美团、京东、滴滴、得物)
- 主力:中厂(小米、Shopee、携程、B 站、SHEIN)
- 保底:传统企业(国企、银行 IT、外企)
渠道:
- Boss 直聘(主动打招呼,5 分钟内必回复率最高)
- 内推(朋友、前同事、脉脉)
- 拉勾、猎聘
- 牛客、掘金、GitHub
简历优化要点
- 1 页 A4,中大厂必有:项目经验 / 技能栈 / 教育背景 / 个人亮点
- 每个项目配架构图 + 技术栈 + 量化成果
- STAR 法则写每条项目亮点
- 链接:GitHub(≥ 100 commit)/ 个人博客 / LeetCode 主页
投递节奏
- 每天投 10-15 家,重点投冲刺/主力
- 2 天未读简历主动联系 HR
- 1 周内集中"面试战斗周"
面试技巧
- 自我介绍:1-2 分钟,覆盖背景 + 项目亮点 + 求职方向
- 技术问题:先讲思路再写代码,主动说"我先理一下"
- 不会的题:坦诚说哪部分会、哪部分不太确定,不要装
- 项目问题:用 4 步法;带出量化数据
- 行为问题:STAR 法则准备 5 个故事(协作 / 难题 / 失败 / 学习 / 影响)
- 反问环节:问团队规模 / 项目方向 / 成长路径 / 技术栈 / 加班强度
- 谈薪:基于市场行情,不着急答应,争取 24h 决策时间
二、月度节奏(W41-52)
| 周次 | 重点 | 里程碑 |
|---|---|---|
| W41 | 八股文重读 + 薄弱点补强 | 完整八股卡库 |
| W42 | 八股文默写 + 算法复习 | 算法 100 题复习 |
| W43 | 系统设计 12 题过完 | 12 题 A4 笔记 |
| W44 | 项目深挖 + 自我介绍打磨 | 3 个项目 30min 口述稿 |
| W45 | 模拟面试 5 次(朋友/付费) | 录像复盘 + 调整 |
| W46 | 简历定稿 + 投递渠道开通 | 1 页 A4 简历 |
| W47 | 开始投递(投递 30+ 家) | 收到一面邀请 |
| W48-50 | 集中面试(冲刺/主力厂) | 5+ 一面 |
| W51-52 | 二面 / 三面 / HR / 谈薪 | 1-2 个 offer |
三、面试题答题技巧
算法题
1. 确认题意 + 边界(数组是否为空?输入规模?)
2. 给出 2-3 个朴素解法 → 找瓶颈 → 优化
3. 写代码前讲思路 + 时间空间复杂度
4. 跑测试用例(含边界)
5. 可主动提:是否能用 X 数据结构 / Y 算法改进?
系统设计题
1. 问清楚需求(QPS、数据量、延迟要求)
2. 先给简单的方案(单库单服务)
3. 预估瓶颈(容量计算:1000 QPS × 1KB = 1MB/s)
4. 逐步演化(缓存、异步、分库分表、微服务)
5. 主动讲"折衷"和"为什么这么选"
项目题
1. 一句话讲清项目(业务 + 用户 + 技术亮点)
2. 画架构图
3. 重点讲 1-2 个难点:背景 → 调研 3 种方案 → 选型理由 → 落地 → 量化
4. 反思:"如果重做我会改..."
行为题
1. STAR 准备:Situation / Task / Action / Result
2. 量化(QPS 提升 5 倍 / 节省 2 人月 / 故障修复时长缩短 60%)
3. 反思(学到什么 / 改进点)
4. 不吹不黑,承认不足
四、谈判与入职
谈薪准备
- 调研 offer 行情:同级公司 / 岗位 / 城市
- 准备 3 个薪资锚点:期望 / 底线 / 行业 P50
- 年包 = 月薪 × 13 + 签字费 + 期权/RSU + 房补/餐补/股票
- HR 常见问:"现在手上有哪些 offer?" → 坦诚说 1-2 个
背调与体检
- 提前通知前公司 HR / 直属领导
- 准备好转正证明 / 离职证明
- 体检:先拿 offer 再体检
入职过渡
- 入职前 2 周:预读组内代码、文档、技术栈
- 第 1 月:融入团队 + 建立信任
- 第 2-3 月:接手第一个完整需求
- 第 4-6 月:做出能识别的产出(commit、Blog、内部分享)
五、产出物
- 简历(PDF + Web 版两份)
- 八股问答卡片库(Anki CSV 导出)
- 系统设计 12 题笔记(手写 + 电子版)
- 项目口述稿 + 架构图
- 模拟面试录像 + 复盘
- 面试复盘记录(每场面试后记下问题 + 答案 + 改进点)
六、心理与体能
- 求职期会焦虑——保持日常作息 + 每周运动 3 次
- 拒绝陷入"没学完不敢投"的陷阱——边投边学
- 面试被拒是常态,复盘 > 自我怀疑
- 拿到 offer 后不要躺平——继续背八股争取更高职级薪酬