【Hello AI 科技致善】用 JobCompass AI 帮大学生把求职迷茫变成下一步行动
① 摘要
面向从校园走向职场的大学生,JobCompass AI 在“看不懂岗位、不会判断匹配度、不知道下一步该补什么”的求职准备场景下,提供岗位 JD 解读、能力差距分析、阶段行动计划和模拟面试反馈。
当前版本已跑通“学生画像 / 简历导入 - 岗位 JD / 截图导入 - 匹配报告 - 7/14/30 天行动计划 - 模拟面试”的完整 MVP 链路,并通过示例学生“林同学”完成端到端模拟验证。
② 真实场景与需求
目标人群: 大学生,尤其是缺少实习经验、第一次投递互联网 / AI / 数据 / 产品岗位的同学。
痛点描述: 很多同学拿到一段招聘 JD 后,只能看到“熟悉 Python、了解 Prompt、能完成 Demo”这类抽象要求,却不知道岗位真实工作内容是什么,也不知道自己的项目经历能不能证明这些能力。具体到求职准备中的一步,就是“投递前把 JD 翻译成能力清单,并判断简历该怎么改”。
现有做法: 通常依赖学长学姐、辅导员、求职社群或自己搜索经验帖。但这些方式要么反馈不稳定,要么不够个性化,要么只能给笼统建议,很难持续形成“分析 - 训练 - 复盘”的闭环。
③ 作品介绍
作品是一个网页工具:JobCompass AI 大学生求职导航仪。
核心功能包括:
-
学生画像整理: 手动填写年级、专业、技能、项目和实习经历,也支持导入 PDF 简历并自动整理为画像字段。
-
岗位 JD 解读: 粘贴 JD 或上传岗位截图,系统提取岗位名称、公司类型和岗位文本。
-
匹配分析报告: 输出岗位匹配度、技能匹配、项目匹配、表达准备度、能力雷达图、优势、短板和下一步建议。
-
行动计划生成: 根据能力差距生成 7 / 14 / 30 天逐日任务,每天包含任务、交付物、目的和状态。
-
模拟面试反馈: 基于简历和目标岗位生成 7 个面试问题,对回答给出评分、优点、问题和优化版回答。
技术实现上,前端使用 Vue 3 + TypeScript + Vite + Element Plus + ECharts,后端使用 FastAPI + Pydantic,SQLite 保存接口请求和生成结果。AI 服务默认支持 Mock 数据,也可以通过 OpenAI 兼容接口接入 DeepSeek、通义千问、OpenAI 或本地 llama.cpp。
④ 用 SOLO 实现的过程
我把任务拆成了 5 个步骤:
-
先定义求职流程: 从学生画像开始,到目标岗位 JD,再到分析报告、行动计划和模拟面试,保证学生知道“先做什么、后做什么”。
-
搭建前端页面: 用 SOLO 辅助生成 Vue 页面和路由,包括学生画像页、目标岗位页、分析报告页、行动计划页、模拟面试页。
-
设计后端接口: 用 FastAPI 拆分
/api/resume/analyze、/api/jd/analyze、/api/match/analyze、/api/plan/generate、/api/interview/question、/api/interview/evaluate等接口。 -
沉淀 Prompt 和结构化输出: 让 AI 输出固定 schema,避免报告内容发散。例如要求匹配度和雷达图分数必须是 0-100 的整数,计划天数必须和用户选择一致。
-
补齐演示能力: 增加示例学生、示例岗位、PDF 简历导入、岗位截图导入、Mock 回退和历史记录,保证没有真实 API Key 时也能完整演示。
关键 Prompt / 操作示例:
请分析岗位真实工作内容、必备技能、隐藏要求、简历证据建议和高频面试问题。
请计算匹配度,指出优势、差距、下一步建议,并给出 0-100 的雷达图评分。
score、skill_match、project_match、expression_match、readiness 和 radar.value 都必须是整数。
请生成逐日行动计划。plan 长度必须等于计划天数,每天包含任务、交付物、目的和状态。
第 1 天状态为“进行中”,其他为“未开始”。
中间踩过的坑:
-
AI 输出不稳定: 有时字段名或数据类型不符合前端需要,所以后端统一用 Pydantic schema 校验,并在失败时回退 Mock 数据。
-
学生输入成本高: 一开始只支持手填画像,后来补了 PDF 简历导入,降低第一次使用门槛。
-
JD 来源不统一: 很多同学拿到的是招聘软件截图,所以补了岗位截图导入,再回填到文本框让用户校对。
-
建议容易空泛: Prompt 中明确要求“真实、具体、可执行”,并把输出拆成分数、短板、交付物和面试反馈,减少套话。
⑤ 成果展示
当前 MVP 已完成以下页面与能力:
-
学生画像页:填写或导入简历,生成求职分析基础信息。
-
目标岗位页:输入 JD 或上传岗位截图,并生成分析报告。
-
分析报告页:展示岗位匹配度、技能 / 项目 / 表达评分、能力雷达图、优势和短板。
-
行动计划页:根据差距生成 7 / 14 / 30 天行动计划。
- 模拟面试页:生成岗位相关问题,并对学生回答给出评分和优化建议。
示例验证链路:
-
示例学生:林同学,大三,计算机科学与技术专业。
-
目标岗位:AI 应用开发实习生。
-
示例项目:AI 角色扮演平台,包含文本聊天、角色管理、对话历史、语音识别和语音合成。
-
示例输出:系统给出岗位匹配度、能力短板,并建议优先补齐项目 README、Prompt 设计说明、架构图和高频项目面试回答。
代码仓库:https://github.com/xin-24/JobCompass
项目运行方式:
cd job-compass-backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python run.py
cd job-compass-frontend
npm install
npm run dev
前端默认地址:http://127.0.0.1:5173
后端默认地址:http://127.0.0.1:8000
⑥ 验证方式与下一步
模拟测试: 使用内置示例学生和示例岗位跑通完整流程,验证系统可以从一份学生经历和一段 JD 中输出匹配报告、能力差距、行动计划和面试反馈。
已验证的任务包括:
-
JD 能被拆解为真实工作内容、必备技能、隐藏要求和面试问题。
-
简历 / 学生画像能被提取为技能、项目、优势和短板。
-
匹配报告能输出 0-100 分制评分和能力雷达图。
-
行动计划能按 7 / 14 / 30 天生成逐日任务。
-
模拟面试能输出问题、评分、问题分析和优化回答。
下一步计划:
-
增加真实学生脱敏试用反馈,记录任务完成率和修改简历前后的差异。
-
支持导出分析报告和行动计划,方便学生投递前复盘。
-
增加岗位库和求职记录表,让学生持续追踪投递、面试和反馈。
-
细化不同岗位方向模板,例如前端、后端、数据分析、产品经理、AI 应用开发等。



















