找工作本身就是一份兼职。最折磨人的不是面试,是每天重复刷新十几个招聘页面、复制粘贴同样的个人信息、把同一封求职信改个公司名再发一遍。

有人干脆把这套流程自动化了。他写了一个小工具,专门处理其中重复度最高的80%,剩下的20%留给自己。这个比例是他自己划的线——工具负责找、打分、起草、追踪,人负责做每一个投递决定和每一场面试

打开网易新闻 查看精彩图片

每天早上自动跑一遍

这个工具每天早晨会做几件事:扫描7个招聘平台,包括 Lever、Greenhouse、Ashby、SmartRecruiters、Workday,以及通过 JobSpy 抓取的 Indeed/Google 职位,还有 Hiring.cafe。

扫完之后,它用大模型把每个职位和求职者的简历做匹配打分,分数区间是0到100。凡是超过设定阈值的职位,工具会自动起草一封定制化的求职信,外加一段"为什么想来这家公司"的回答。

最后,每个职位会以一张 Slack 卡片的形式推送给求职者,卡片里带上申请链接。

在 Slack 里点一下就算投了

接下来的动作都在 Slack 里完成。点开链接去投递,回来给卡片加一个 ✅ 表情,工具就把它标记为已投递,同时追踪整条流程。如果加的是 表情,工具会在同一个话题串里返回面试准备材料,包括针对可能被问到的问题整理好的 STAR 故事。

每周还会生成一份报告,汇总这一周看到了多少职位、打了多少分、投递了多少个。

整套交互的核心逻辑是"一个职位一张卡,用表情代替操作"。作者说,正是这个循环让他真的能坚持每天跟进,而不是看一眼就丢到一边。

一条不能破的规则

这个工具不会自动提交申请。这是刻意设计的。

作者的理由很直接:批量投递自动填好的申请,对雇主不好,对求职者自己也不好。工具负责的是那些苦力活——发现职位、打分、起草、追踪;投递决定和面试,仍然由人来做。

换句话说,它砍掉的是重复劳动,不是判断权。

技术上是怎么搭的

整个工具用 Python 写成,每个平台配一个轻量客户端,所以想新增一个招聘网站,只需要加一个小文件。

AI 后端是可插拔的:想省钱可以用本地模型,想要速度可以接 Anthropic 的 API。

去重做了两层,一层按职位 id,一层按"职位名+公司名"。此外还有两个约束机制:每家公司每轮有数量上限,各平台之间做平衡,避免某一个网站把其他网站的职位挤掉。

调度上,一个 cron 任务负责每天跑扫描,一个 Slack 机器人负责监听表情反应。

三个实际收获

作者总结了三点经验:

  • 用真实简历去打分,而不是只做关键词匹配,能大幅降低噪音。
  • Slack 里"一职位一卡片、加表情即操作"的循环,是让他真正坚持用下去的关键。
  • 保留人在环路里,才让这个工具变成他敢每天开着跑的东西。

这三点其实指向同一件事:自动化能解决的是流程摩擦,解决不了的是判断和信任。工具再好用,如果它替你做决定,你反而不敢用。

开源,欢迎提 PR

这个工具已经以 MIT 协议开源,仓库地址是 github.com/shubhamkumbhalkar/lever-auto-apply。作者特别欢迎新的平台客户端 PR。如果你试了,可以告诉他哪里跑不通。

对于每天在多个招聘网站之间反复横跳的人来说,这个项目的价值不在于它多复杂,而在于它把边界划得很清楚:哪些交给机器,哪些必须留给自己。