面试官:“现在都是Vibe Coding,你说说你的优势是什么?”,我笑了:“没经验的人,让AI写的代码就是一坨。。”,面试官:“细聊经验”

📅 2026/7/9 2:39:14
面试官:“现在都是Vibe Coding,你说说你的优势是什么?”,我笑了:“没经验的人,让AI写的代码就是一坨。。”,面试官:“细聊经验”
这篇我来结合自己的经验来说说有经验的人和没经验的人Vibe Coding 的差距。很多录友一聊到 Vibe Coding就觉得“这有啥难的不就是让 AI 干活吗”真这么想项目迟早会被 AI 改成一坨。之前网上盛传什么某歌手写出APP代码质量很高上线了之类的。(当然这位歌手一定是对着AI自己口喷了几句但大部分一定是专业人员辅助的内行人一看就是炒作没有编程功底的人Vibe Coding 只能做一个小demo稍稍复杂的功能再涉及到上线那就是灾难的开始。Vibe Coding 不是把需求丢给 AI然后自己等结果。Vibe Coding 真正难的地方是你要知道什么时候让 AI 干怎么让 AI 干干错了怎么退回来。AI 写代码很快但写得快不代表工程质量高。本地能跑不代表线上能跑。代码能恢复不代表数据也能恢复。今天这篇就讲几个最容易翻车的点。本篇内容一、不会 Git别让 AI 大规模改代码二、数据库不要和代码混在一起三、备份不是上线前才想四、不要让 AI 一口气完成整个项目五、本地能跑不代表线上能跑六、数据库操作必须默认高危七、给 AI 任务时要写不能做什么八、先沉淀文档再开发功能九、面试怎么讲这段经历十、最后一、不会 Git别让 AI 大规模改代码先说最重要的没有 Git 提交点就不要让 AI 大规模改项目。很多录友是这么用 AI 的“帮我加登录。”“再帮我加会员。”“再帮我优化页面。”“再帮我整理一下目录。”AI 一路改文件越改越多。最后项目跑不起来了你想回到“刚才还能跑的状态”发现回不去了。因为你根本没有提交。这时候 AI 也救不了你它只能根据当前乱掉的代码继续猜。Git 不是装成熟。Git 是你和 AI 协作的安全绳。最基本要做到每完成一个小功能提交一次。每次让 AI 大改前先看git status。不要在一堆未提交改动上继续叠需求。AI 改完后用git diff看它到底动了什么。验证没问题再提交。没有 GitVibe Coding 就不是开发是赌命。AI 干活干一半方向错了你必须能退。退不回来后面所有补救都是硬扛。Git版本管理对比二、数据库不要和代码混在一起第二个坑比代码更危险数据库备份。很多小项目一开始图省事把 SQLite、上传文件、导出文件、日志都放在项目目录里。看起来方便但让 AI 整理目录、重建项目、部署覆盖的时候就容易出事故。比如你让 AI“帮我清理一下无用文件。”“帮我重新初始化项目。”“帮我把代码部署到服务器。”AI 可能不知道哪些是代码哪些是真实数据。它把data/、db/、uploads/当普通目录处理数据就没了。代码没了可以从 Git 找。数据没了很多时候是真没了。所以项目一开始就要定规矩代码目录只放代码、配置模板、迁移脚本。数据库、上传文件、日志放到独立数据目录。.gitignore明确排除真实数据文件。仓库里只放.env.example不要提交真实.env。测试数据和生产数据分开。数据库不是代码的一部分数据库是线上资产。你不能让 AI 像改组件一样随便动数据库。代码和数据分离三、备份不是上线前才想很多录友对备份的理解是“上线前备份一下。”晚了。备份应该在设计初期就考虑。因为备份会影响目录结构、部署方式、权限设计、恢复流程。你一开始把代码、数据库、上传文件全混在一起后面再补备份就会很别扭。设计项目时先问三个问题哪些东西不能丢丢了以后从哪里恢复恢复要多久比如用户表、订单表、支付记录、上传文件、配置文件、业务日志这些都要有恢复思路。对应的工程动作也要提前准备数据库定时备份。高风险操作前手动备份。迁移脚本要有回滚方案。上传文件单独存储。生产配置不要跟代码一起覆盖。备份不是怕你写错代码备份是承认线上一定会出错。成熟工程师和新手的区别不是不犯错是出错后能回来。四、不要让 AI 一口气完成整个项目Vibe Coding 新手最爱说一句话“帮我做一个完整系统。”包含登录、文章、评论、后台、上传、搜索、部署。AI 会给你一个完整项目。目录有了页面有了接口也有了。但一看细节通常都是问题权限边界不清楚接口错误处理很随意数据库设计临时拼出来前端状态到处传后台权限形同虚设测试基本没有部署配置和本地配置混在一起这就是“一坨”的来源。不是 AI 不会写。是你让它在一个超大上下文里同时做太多决策。正确做法是小步闭环先做登录注册跑通后提交。再做文章 CRUD跑通后提交。再做评论跑通后提交。再做上传和搜索。最后再做部署。每一步都要告诉 AI这次只改哪些文件。哪些模块不要动。怎么验证完成。失败了怎么回退。AI 可以帮你写模块但不能替你做架构拆分。架构拆分是人的责任。模块化开发对比五、本地能跑不代表线上能跑第四个坑是线上线下环境差异。这类事故特别常见。本地路径是./data/app.db线上路径可能是/var/www/app/data/app.db。本地配置读.env线上配置可能来自环境变量。本地运行用户是你自己线上运行用户可能是www-data或app。AI 如果只看本地项目它默认会按本地逻辑生成方案。结果就是本地没问题上线直接炸。所以涉及上线时先把环境差异写给 AI项目本地线上代码目录项目根目录/var/www/xxx数据目录./data独立挂载目录配置来源.env环境变量或配置中心数据库本地实例生产数据库上传文件本地目录独立存储运行用户当前用户服务专用用户回滚方式Git 回退发布版本回滚 数据恢复线上事故很多不是代码逻辑错而是环境假设错。环境不说清楚AI 只能猜。本地vs线上环境差异六、数据库操作必须默认高危只要 AI 要动数据库就先停一下。建表、删表、改字段、导入导出、数据清洗、初始化脚本都算高危。动手前必须问三个问题有没有备份能不能回滚操作的是测试库还是生产库没有备份不做。不能回滚要谨慎。分不清环境绝对不能执行。尤其不要随便对 AI 说“帮我重置数据库。”这句话太危险了。重置哪个库保留哪些表有没有备份是不是生产环境这些没写清楚AI 只能按字面执行。数据库操作不要让 AI 直接干先让它生成脚本和风险说明再人工确认。七、给 AI 任务时要写“不能做什么”很多录友只会写目标“帮我修复登录问题。”“帮我优化项目结构。”“帮我上线部署。”这不够。你还要写边界只允许修改登录相关文件。不要改数据库结构。不要删除上传文件。不要修改生产配置。不要执行迁移命令只生成脚本给我审核。先给计划等我确认后再改代码。AI 的默认倾向是完成任务。如果你只说“修好”它可能会为了修好扩大改动范围。而工程协作最怕的就是改动范围失控。让 AI 干活不只是告诉它目标还要告诉它边界。八、先沉淀文档再开发功能很多录友用 AI 开发时从来不写文档。需求来了直接让 AI 开始改代码。改完能跑就算完成。这样干一个月项目就变成黑盒了。你自己都不知道这个功能是怎么实现的换个 AI 工具更是抓瞎。正确流程是先让 AI 生成开发文档扫一遍没问题再让 AI 去写代码。比如你要加支付功能先让 AI 写一份技术文档支付流程用户下单 → 调起支付 → 回调确认 → 更新订单状态数据库表设计订单表、支付记录表、字段说明接口设计创建订单、发起支付、支付回调、查询订单异常处理超时、重复支付、金额校验安全措施签名验证、幂等性、敏感信息加密文档写完后你先看一遍。流程合理吗表设计有坑吗安全措施到位吗确认没问题再让 AI 按文档去实现。功能开发完成后还要让 AI 更新文档实际表结构可能和设计有微调实际接口路径和参数已知问题和待优化点部署注意事项其实文档不是给开发人员看的是给下一个接手这个项目的 AI 看的。你今天用 Claude Code 开发明天可能换 Cursor后天可能换 Codex。如果没有文档每次切换工具都要重新理解项目。有了文档切换成本直线下降。更重要的是文档让你保持对项目的控制权。你不能只知道这个功能 AI 帮我做的你得知道这个功能是怎么做的、为什么这么做、有哪些坑。具体落地方法项目根目录建docs/目录按模块分文档docs/auth.md、docs/payment.md、docs/upload.md在CLAUDE.md里写文档映射规则plaintext文档映射- 开发登录相关功能时先读 docs/auth.md- 开发支付相关功能时先读 docs/payment.md- 开发上传相关功能时先读 docs/upload.md每次开发新功能前先让 AI 补充对应文档确认后再开发功能开发完成后让 AI 同步更新文档实际实现可能和设计有出入这样做的好处AI 开发前有明确蓝图不会乱写你可以先审查设计再审查代码分层把关切换 AI 工具时新工具直接读文档就能接手多人协作时文档是统一理解的基础面试时你能清晰讲出每个模块的设计思路Vibe Coding 不是让 AI 狂写代码是让 AI 帮你把工程流程走完整。没有文档的项目就是技术债的温床。九、面试怎么讲这段经历如果面试官问“你怎么用 Vibe Coding踩过什么坑”不要只说“我用 AI 提高了效率。”太浅了。可以这样说“我刚开始用 Vibe Coding 时发现最大的问题不是 AI 写不出来而是恢复点不足。AI 一次改太多文件如果没有 Git 小步提交后面出问题很难回退。所以我现在会按模块拆任务每个功能一个闭环先让 AI 出计划再限制改动范围改完看 diff、验证、提交。”再补一句“另一个坑是数据和代码边界。小项目很容易把 SQLite、上传文件、配置文件放在项目目录部署覆盖时可能误伤真实数据。所以我会把代码目录和数据目录隔离仓库只放配置模板真实数据库和上传文件单独存储。涉及数据库操作时先备份只让 AI 生成脚本不直接执行生产动作。”最后说上线“本地方案不能直接等价于线上方案。线上路径、运行用户、配置来源、数据库实例都可能不同所以部署前我会先列出本地和线上环境差异再让 AI 基于差异生成方案。”再加一句文档“还有一个经验是文档先行。我现在开发新功能前会先让 AI 生成技术文档包括流程设计、表结构、接口定义、异常处理。我先审查文档确认没问题再让 AI 写代码。功能完成后再让 AI 更新文档记录实际实现。这样切换 AI 工具时新工具直接读文档就能接手不用每次都重新理解项目。”这段回答比”我会用 Cursor”强太多。因为它体现的是工程判断力。十、最后Vibe Coding 可以用而且要用。但别裸奔。Git 是代码恢复点备份是数据恢复点模块拆分是复杂度边界环境核对是上线安全线。你把这些东西建起来AI 是效率工具。你不建这些东西AI 就会更快地把项目改乱。先把安全绳系好再让 AI 加速。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】