最近帮朋友看面经准备跳槽,翻了掘金和牛客上一堆帖子,发现现在的面经和两年前完全不是一个物种了。
以前:"手写一个快排"、"说一下事件循环"。
现在:"给你 30 分钟,用 AI 工具现场写一个 XX 功能"、"这段 AI 生成的代码有什么问题?"
从"你会不会写"变成了"你能不能判断 AI 写得对不对"。下面说说现在考什么。
Meta 把前端编码面试改成了"AI-Enabled Coding"——60 分钟,面试环境里内置 AI 工具,你不但可以用,而且他们观察你怎么用。
Shopify 更激进:面试流程里有两轮专门的 AI 辅助编码环节,AI 使用不是"允许",是"预期你会用"。
面试官真正在看的:
| 观察维度 | 加分 | 减分 |
|---|---|---|
| Prompt 质量 | 需求拆解清晰、约束写全 | 一句话甩给 AI |
| 迭代策略 | 拿到结果后追问优化 | 接受第一次输出 |
| 错误判断 | 快速发现问题并修正 | 等 AI 自己修 |
| 边界意识 | 主动考虑边界 case | 只跑 happy path |
备考建议: 每天用 AI 工具写至少一个小功能。重点不是写什么,是练"怎么给 AI 提需求"的手感。
这是增长最快的题型。面试官给你一段 AI 生成的代码,让你找问题:
function SearchResults({ query }) {
const [results, setResults] = useState([]);
const [loading, setLoading] = useState(false);
useEffect(() => {
setLoading(true);
fetch(`/api/search?q=${query}`)
.then(res => res.json())
.then(data => {
setResults(data);
setLoading(false);
});
}, [query]);
return loading ? <Spinner /> : results.map(r => (
<div key={r.id}>{r.title}</div>
));
}
你能找出几个问题?
这段代码跑起来完全没问题。但至少有 5 个 bug:
AI 写的代码看起来总是对的——语法正确、逻辑通顺。但带着这些 bug 上生产,用户一多就炸。面试官想知道的是:你把 AI 当"打字机"还是当"初级实习生"?
面试官给你一个模糊需求,让你拆成可以交给 AI 执行的子任务。
比如"首页加载太慢,优化一下"——以前背方案就行,现在要你现场拆:
第一步:让AI跑Lighthouse,拿到LCP/FCP/CLS数据
第二步:让AI分析bundle size,找最大的3个chunk
第三步:让AI把首屏以下组件改成lazy import
第四步:再跑一次Lighthouse,对比数据
同一个问题,拆得好的人用 AI 能在 30 分钟内搞定,拆得差的人对话 2 小时出不来结果。
核心差距不在 AI 工具,在人脑里的"任务分解树"。
以前的系统设计题:"设计一个在线文档协作系统。"
现在加了一层:"哪些模块用 AI 生成,哪些必须手写?为什么?"
| 适合交给 AI 的 | 必须人工把控的 |
|---|---|
| CRUD 接口、数据校验 | 协同冲突解决算法 |
| UI 组件搭建 | 权限系统设计 |
| 单元测试生成 | 数据一致性逻辑 |
| 常规性能优化 | 安全防护策略 |
面试官想看到的是判断力——你知道 AI 什么时候靠谱、什么时候不靠谱。
一个加分的回答:"协同编辑的冲突解决我不会交给 AI,因为这类算法依赖严格的数学证明,AI 生成的实现很可能在边界 case 上出错。但数据校验和 CRUD 我会让 AI 生成,因为这些模式成熟、验证简单。"
最难准备的一项。面试官会问:"你用 AI 写代码遇到过最坑的一次是什么?"
面试官听几句就能判断你是真用过还是只玩过 demo:
| 真用过的人说的话 | 只玩过 demo 的人说的话 |
|---|---|
| "AI 写的 CSS 在 Safari 经常出兼容问题" | "AI 写代码特别快" |
| "长对话后 AI 会忘记前面的约束" | "AI 什么都能写" |
| "让 AI 改 bug 有时候越改越多" | "AI 代替了很多手工活" |
真实的、具体的、带坑的经验——这是最有价值的东西,也是没法临时准备的。
| 准备方向 | 具体做什么 | 优先级 |
|---|---|---|
| AI 工具熟练度 | 每天用 AI 写一个小功能,练 Prompt 手感 | 最高 |
| AI 代码审查 | 让 AI 生成代码后不看直接跑,记录出了什么问题 | 最高 |
| 需求拆解 | 拿到需求先拆成 5 个子任务再动手 | 高 |
| 系统设计 | 画架构图时标注"AI 生成"和"手写"模块 | 高 |
| 踩坑经验 | 积累 AI 写代码的真实踩坑 case | 高 |
| 基础原理 | 八股文不用背,但原理得懂 | 中 |
现在的前端面试,不是在考"你会不会写代码",是在考"你会不会用 AI 写代码"。
这两件事的差距,比大部分人想象的要大得多。
你面试时被问过 AI 相关的问题吗?最难的是哪道?留言聊聊。
觉得有用?点个「赞」👍 让更多人看到
关注我,获取更多技术干货。