一次真实 AI Coding 面试复盘:我如何用 Prompt Engineering 完成 Steam 官网复刻与自动化部署
一次真实 AI Coding 面试复盘:我如何用 Prompt Engineering 完成 Steam 官网复刻与自动化部署
最近参加了一场非常特别的前端面试。
题目并不是传统算法题。
而是:
要求使用 AI Coding 工具,
完成一个 Steam 官网首页复刻项目。并且:
不仅要生成页面。
还要求:
- 自动化部署
- Docker 化
- VPS 部署方案
- Prompt 文档
- 工程化交付
- 测试覆盖率说实话。
这已经不是传统前端面试了。
更像一次:
AI Engineering 实战。
# 面试要求
整个题目核心要求:
1. 使用 AI 自动生成项目
2. 稳定复刻 Steam 官网风格
3. 自动化部署至 VPS
4. 提供完整 Prompt
5. 解释 Prompt 设计思路技术栈要求:
- React
- TypeScript
- Vite
- TailwindCSS
- React Router
- Docker
- Nginx第一眼看:
我以为重点是 React。
但真正开始做之后才发现:
重点根本不是页面。
而是:
如何稳定控制 AI 输出。
# 我最开始踩的坑
一开始。
我尝试:
“一个 Prompt 生成整个项目”。
结果很快翻车。
AI 开始出现:
- package.json scripts 丢失
- Tailwind 配置异常
- Router 冲突
- 无关文件修改
- 项目结构漂移尤其:
Prompt 一旦过长。
AI 输出会越来越不稳定。
后来我意识到:
AI Coding 最大的问题。
不是生成代码。
而是:
如何稳定生成代码。
# 后来我改变了策略
后面我采用:
“模块化 Prompt + 小步生成”。
将整个项目拆成:
- Header
- Hero Banner
- GameCard
- Footer
- Deployment每个 Prompt:
只负责一个模块。
例如:
Header Prompt:
```text
请生成一个 Steam 风格 Header 组件。要求:
- 深色导航栏
- Steam 风格
- Install Steam 按钮
- 响应式只生成 Header.tsx。
不要修改其它文件。
Hero Banner Prompt:
请生成一个 Steam 风格 Hero Banner。
要求:
- 大背景图
- 自动轮播
- CTA 按钮
- 深蓝黑 Steam 风格
只生成 HeroBanner.tsx。
这种方式之后。
AI 稳定性明显提高。
为什么模块化 Prompt 很重要?
因为:
AI 最大的问题之一是:
“上下文漂移”。
如果一次生成太多内容。
AI 很容易:
- 修改无关文件
- 覆盖已有配置
- 出现组件耦合
- 改坏 package.json
所以后来:
我开始严格限制:
“每次 Prompt 只能修改指定文件”。
例如:
只生成 HeroBanner.tsx。
不要修改其它文件。
这个约束非常重要。
最离谱的一幕:AI 直接把项目删了
最刺激的是:
项目快完成的时候。
AI Agent 误判项目目录。
直接把整个项目删了。
是的。
整个目录直接没了。
当时我人都懵了。
后来我才意识到:
Agent 模式风险非常大。
尤其:
“自动修复”
“自动重构”
“自动整理项目”
这些行为。
很容易误删文件。
后面我彻底放弃:
Agent 全局模式。
改成:
单文件生成模式。
例如:
- 只生成 Header.tsx
- 只生成 Footer.tsx
这样稳定性明显提升。
自动化部署部分
这次面试另一个重点:
是自动化部署。
我要求 AI 自动生成:
- Dockerfile
- docker-compose.yml
- nginx.conf
- deploy.sh
形成:
AI Prompt
↓
页面生成
↓
Docker 化
↓
Nginx
↓
VPS 部署
完整交付链路。
虽然最后没有真正购买 VPS。
但已经通过:
Docker + Nginx
模拟了 Ubuntu VPS 部署环境。
本质上已经具备:
公网部署能力。
测试部分
后面还补充了:
- Vitest
- React Testing Library
- Playwright
用于:
- 单元测试
- E2E 测试
- Coverage 覆盖率
不过说实话。
这部分我觉得:
目前 AI 在“生成测试”方面。
稳定性还不如生成 UI。
尤其:
复杂 mock 很容易出问题。
这次面试最大的感受
以前我觉得:
AI Coding 就是:
“让 AI 帮我写代码”。
但这次之后。
我发现真正重要的是:
Prompt Engineering。
未来开发模式很可能会逐渐变成:
开发者负责:
- Prompt 设计
- 工程架构
- 模块拆分
- Workflow 控制
AI 负责:
- 页面生成
- 代码实现
- 自动化部署
本质上:
开发者角色正在发生变化。
最后总结
这次项目让我最大的收获。
并不是完成了一个 Steam Clone。
而是:
真正理解了:
AI Coding 最大的难点。
其实不是:
“生成代码”。
而是:
如何稳定、可控地生成代码。
而 Prompt Engineering。
本质上就是:
“控制 AI 输出稳定性”的工程方法。
我觉得:
未来几年。
这个能力会越来越重要。
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐




所有评论(0)