← 返回博客列表 ZipRecruiter OA 真题面经|技能图推荐 + 字符串匹配 VO代面与 VO辅助指南
ZipRecruiter

ZipRecruiter OA 真题面经|技能图推荐 + 字符串匹配 VO代面与 VO辅助指南

2026-05-20

ZipRecruiter 是美国老牌招聘平台,平台核心业务是把求职者与雇主精准匹配。这种业务模型决定了它的 OA 题型——字符串匹配、技能图推荐、求职者排序 几乎是固定三大块。本文按一亩三分地 + Glassdoor 最近高频面经做主题整理,并补充 VO代面 / VO辅助 实操准备路径。

ZipRecruiter OA 概览

维度 详情
平台 CodeSignal / HackerRank(按岗位不同)
时长 70-90 分钟
题量 3-4 道(含 1 道开放设计)
难度 LC Easy-Medium,重边界
重点 字符串、图、堆、推荐排序

题型一:字符串模糊匹配

代表题:候选人技能匹配

输入:

要求返回每个 resume 与 query 的「匹配分数」,定义为:query 中出现在 resume 里(忽略大小写、允许 1 字符编辑距离)的 keyword 数量。

def fuzzy_match_count(query, resume):
    tokens = set(t.lower() for t in resume.split())
    hits = 0
    for kw in query:
        kw_low = kw.lower()
        if kw_low in tokens:
            hits += 1
            continue
        # 1 字符编辑距离判断
        for t in tokens:
            if abs(len(t) - len(kw_low)) > 1:
                continue
            if within_one_edit(t, kw_low):
                hits += 1
                break
    return hits


def within_one_edit(a, b):
    if a == b:
        return True
    if abs(len(a) - len(b)) > 1:
        return False
    if len(a) > len(b):
        a, b = b, a
    i = j = diff = 0
    while i < len(a) and j < len(b):
        if a[i] != b[j]:
            diff += 1
            if diff > 1:
                return False
            if len(a) == len(b):
                i += 1
            j += 1
        else:
            i += 1
            j += 1
    return True

时间复杂度:O(|query| · |tokens| · avg_len)

这道题一亩三分地里反复出现,1 字符编辑距离 是高频升级。

题型二:技能图推荐

代表题:相关技能推荐

输入:

要求返回离用户已有技能集合最近的 k 个新技能(按总边权求和排序)。

import heapq
from collections import defaultdict

def recommend(skills_graph, user_skills, k):
    user_set = set(user_skills)
    score = defaultdict(int)
    for s in user_skills:
        for nb, w in skills_graph.get(s, []):
            if nb not in user_set:
                score[nb] += w
    return heapq.nlargest(k, score.items(), key=lambda x: x[1])

时间复杂度:O(E + V log k)

Part 2 扩展:要求支持「2 跳推荐」——可以经过一个中转技能。

题型三:求职者优先级排序

代表题:招聘队列

求职者按以下规则排序:

  1. 新鲜度(last_active 越近排越前)
  2. 相同 last_active 时,匹配度(来自上面的 fuzzy match)越高越前
  3. 相同匹配度时,响应率越高越前
def sort_candidates(candidates):
    # candidates: [(last_active_ts, match_score, response_rate, name)]
    return sorted(
        candidates,
        key=lambda c: (-c[0], -c[1], -c[2]),
    )

这种题考的是「多键稳定排序」+ 正确的负号方向,看似简单,但一亩三分地里有人因为方向写错全部 fail。

一亩三分地高频题速查

类别 频率 关键技巧
字符串模糊匹配 ★★★★★ 1 字符编辑距离
技能图推荐 ★★★★ 邻接表 + heapq.nlargest
多键排序 ★★★★ 稳定 sort + 多 key
Top-K 求职者 ★★★
字典前缀匹配 ★★★ Trie

VO 流程

ZipRecruiter VO 通常 3-4 轮:

  1. HR 电话:动机 + 简历过审(30 分钟)
  2. 算法面:LC Medium,注重表达(45 分钟)
  3. 系统设计:推荐系统 / 搜索后端(60 分钟)
  4. Hiring Manager + 行为面:产品认知(45 分钟)

VO代面 / VO辅助 准备路径

实战做法

oavoservice 的 VO代面 + VO辅助 一体化服务

针对 ZipRecruiter 3-4 轮 VO,oavoservice 提供:

具体方案与报价,加微信 Coding0201 沟通。

6 天冲刺计划

天数 任务
D1 一亩三分地 + Glassdoor ZipRecruiter 帖按题型分桶
D2 字符串模糊匹配 + 1 字符编辑距离 5 题
D3 技能图推荐 + 2 跳扩展
D4 系统设计:推荐系统白板手绘 1 张
D5 1 次完整 4 轮 mock,录像
D6 行为面 STAR:Job Seeker First 主题打磨 3 个故事

FAQ

ZipRecruiter OA 难度怎么样?

整体在 LC Easy-Medium。题目本身不偏,但边界细节(1 字符编辑距离、大小写、空字符串、单 token)是失分高发区。

一亩三分地的题能直接背吗?

不能直接背。ZipRecruiter 题库会换题面,但三大主线(字符串、技能图、排序)非常稳定。背模板比背题面更有效。

推荐系统轮要准备什么?

最少准备一张图能讲清楚 召回 → 排序 → 重排 → 反馈 四层,并能给出 ZipRecruiter 业务场景下的具体例子(例如用户搜索 keyword → 召回候选 jobs → ML 排序)。

OA 没过冷却期多长?

通常 6 个月。换岗位(如从 SDE 改投 Data Engineer)一般不算同一池。


正在准备 ZipRecruiter OA / VO?

oavoservice 提供 ZipRecruiter / Indeed / Glassdoor / LinkedIn 等招聘平台的 OA 题型分桶、推荐系统设计 mock、行为面剧本等 VO辅助 服务。我们的 mentor 来自一线招聘 / 推荐系统团队,可以针对 ZipRecruiter 岗位定制 1 周冲刺方案。

👉 立即添加微信:Coding0201获取 ZipRecruiter 高频题与 VO辅助方案


联系方式

Email: [email protected]
Telegram: @OAVOProxy