我给自己的求职池做了三次核验,18 / 80 这个数字是怎么来的

这是一次按时间切开的复盘。文中的「18」是 2026-11-12 13:13 左右第六轮复算的快照;同日后续合并新的公开招聘证据后,权威值更新为 25。公司名称和岗位细节已泛化,不代表对任何具体雇主的招聘状态判断。

我给自己建了一个 80 家的求职池。看板上又有一个数字:18 家已核验真在招。

第一眼很容易把它读成「80 家里 18 家在招」,甚至顺手算成一个比例。但这两个数字不是同一件事:**80 是岗位池的规模,18 是某个时点、按一套证据规则核验通过的公司数。**它不是 18/80 的转化率,也不代表另外 62 家都停招。

更麻烦的是,同一天这个 18 后来变成了 25。要讲清它怎么来的,得把样本、证据和时间点分开。

第一次:先把「声称在招」和「有证据在招」分开

我最初把网页上看起来像招聘的信息归在一起,候选数一度是 20。这个数后来被我误当成卡面值,和复算脚本、核验报告里的数字对不上,只好退回去重做。

错不在加法,而在我把「候选」当成了「核验通过」。候选只说明值得查;核验通过必须能回答:我看到了什么原始证据?它能不能被别人重新打开、重新判断?

后来我把证据分成三档:

  1. GET 硬证据:直接请求招聘页面,保存 HTTP 响应和原始 HTML。之后可以从落盘文件检查职位列表或明确的招募公告,不靠我记得页面当时长什么样。
  2. 渲染证据:有些招聘站是 SPA,GET 只能拿到外壳。浏览器完成渲染后,页面上确实出现可见职位条目;我把职位标题、页面链接、抓取时刻等原文落盘,方便复核。它不是原始 HTML 证据,所以单独标明,不混进 GET 列。
  3. 无证据/不计:页面没有可识别的职位条目,也没有满足判据的招募文案。打不开、空壳、标题像招聘,都不能靠猜补成「在招」。

两类正证据可以分别计数,但同一家公司只能算一次。抓到页面不等于核验成功,HTTP 200 也只说明请求成功,不自动证明页面有职位。

第二次:把「像招聘」的页面逐个排除

有些页面看起来很像证据,实际经不起复核:

  • 浏览器标题写着「招聘」或页面只有 <title>:只有标题,没有岗位正文。
  • 搜索结果里有招聘摘要、页面只有 meta 描述:摘要可能过期,也可能是模板字段,不是当前职位列表。
  • 导航栏有「加入我们」「人才招聘」:这是入口,不是职位。
  • HTML 只有一个 root 节点,渲染后仍然空白:这是 SPA 外壳,不是招聘内容。
  • 页面讲的是招聘 SaaS 产品、客户案例或「我们提供招聘解决方案」:它在卖产品,不代表这家公司自己正在招人。
  • 页面只列「研发类、运营类」等类别:类别不是一条具体职位记录。没有标题、链接或可识别的招聘条目,就不计。

这条线很容易被「页面确实返回了 200」带偏。200 是传输层结果;「能确认有在招」是内容判定。两者不能互相代替。

第三次:固定样本,再把 18 复算出来

原始 30 家样本是这次核验的起点。它不能因为某些页面难打开、结果不好看,就临时换成另一批更容易抓到职位的公司。那样表面上还是在算「30 家」,实际判据已经换了,数字当然会变好看。

后来为补查增加了样本外的候选,必须明确标成扩样,不能悄悄替换原始 30 家。另一个容易混淆的数字是岗位池的 80 家:它是 J1 的池子规模,并不是 J1V 的固定核验分母。把 80 放在分母位置,会让读者误以为 80 家都经过了同一轮、同一深度的核验。

在 2026-11-12 13:13 左右的第六轮快照里,复算得到:

  • GET 硬证据:6 家;
  • 浏览器渲染后有可见职位条目并落盘:12 家;
  • 两类证据重叠:0 家;
  • 合计:6 + 12 − 0 = 18 家。

这就是任务标题里的 18。不是把网页数一遍,也不是拿候选列表估算;它来自当时那一版证据目录和复算脚本。此时 80 家岗位池仍是另一项读数,不能把它们拼成一个未经定义的「18/80 招聘率」。

我把 20 当成卡面值,最后整条退回

我踩过的坑很具体:手上有 20 个候选,就把 20 写进卡面;但复算脚本按更严格的证据规则得出的不是 20。看板、报告、命令三边自然对不上。

那个 20 不是「差一点点」的近似数,而是旧口径下的候选计数。把它放进当前值,就等于把旧判据的结果冒充新判据的结果。最后只能撤回卡面,重新逐家公司核对证据、去重,再让脚本输出当前值。

我现在给自己定的规则很简单:**先看命令输出,再写卡面;候选数永远不能代替核验数。**如果口径改了,要把旧结果标成历史快照,不能只改一个数字假装前后连续。

18 不是最终值:同日后续复核到了 25

这里也要把时间线说完整。18 是 13:13 左右的第六轮快照,不是当天最终值。之后又补入公开招聘页中的具体职位记录,并按公司去重;同日后续的权威合并复算是 GET 证据 10 家、渲染证据 16 家、重叠 1 家,结果为 10 + 16 − 1 = 25。

后续合并文件与当前卡面报告值为 25,但我在整理时发现一个样本归属尚未收敛:第六轮材料把编号 #61 的记录列进了 18 家快照,而后续结论镜像写的样本范围止于 #60。因此这里把 25 仅作为后续权威卡面报告值,不声称它是按既定样本范围完整复算出的最终分子,也不据此计算比例。这个边界问题应先回到台账修正,不能用文章把它盖过去。点时数字 18 和后续报告值 25 对应不同的证据截止时间;后者是当前卡面记录,不会抹掉前者作为历史快照的意义。

这次核验真正提醒我的,不是「在招岗位有多少」,而是一个数字必须带着样本边界、证据类型和时间戳一起出现。缺一项,它就可能只是看起来精确的数。

如果以后我再看到「80 家池子、18 家真在招」,我会先问三件事:是哪一批样本?依据是原始 GET 还是页面渲染?这数字截至什么时候?答不出来,就先别把它写成结论。


本文中的公司与招聘页面细节均已泛化。核验只说明公开页面在对应时间点存在可复核招聘证据,不代表特定岗位适配、HC 仍有效、薪资或社保条件已确认。