Claude Code에게 구직 검색을 맡기는 법 — open-jobs 도구 리뷰
구인공고 200만 개를 하나씩 읽을 수는 없습니다. 키워드 검색으로 걸러내도 수백 건이 남고, 결국 제목만 보고 넘기다 정작 내게 맞는 기회를 놓치죠. open-jobs는 이 반복 작업을 Claude Code 같은 AI 에이전트에게 넘기는 오픈소스 도구입니다. 제가 직접 코드를 살펴본 결과, 단순 키워드 매칭이 아니라 임베딩 기반으로 취향을 학습하는 구조더군요. 구직자가 몇 번만 비교 판단을 내리면, 나머지 탐색은 에이전트가 알아서 합니다.
2백만 건을 어떻게 다루나
이 도구의 첫 번째 장점은 데이터 규모예요. 25개 ATS에서 끌어온 실시간 공고 약 200만 건을 CC0 라이선스로 공개했습니다. Lever, Greenhouse 같은 주요 시스템이 포함되어 있고, 각 공고마다 LLM이 추출한 필드와 임베딩 벡터가 붙어 있어요. 제가 확인한 시점 기준으로 GitHub 스타가 82개, 포크가 16개였는데, 공개된 지 얼마 안 됐음을 고려하면 빠르게 주목받는 중이라고 봅니다.
임베딩이 왜 중요하냐면, 키워드 검색으로는 못 잡는 의미 유사성을 찾아내기 때문입니다. "머신러닝 엔지니어"를 찾는데 공고 제목이 "AI Research Scientist"로 되어 있으면 키워드로는 놓치죠. 하지만 임베딩 공간에서는 두 역할이 가까이 붙어 있어요. 이 도구는 각 공고를 벡터로 변환해 두었기 때문에, 사용자가 선호를 표현하면 그 의미와 가까운 것들을 찾아냅니다.
hull → learn → rank 3단계 구조
제가 가장 흥미롭게 본 부분은 3단계 학습 구조예요. 프로젝트 설명에 "hull -> learn -> rank"라고 명시되어 있는데, 각 단계가 명확하게 역할을 나눠요.
첫 번째 hull 단계는 초기 후보군을 거칩니다. 사용자가 몇 가지 예시를 주면, 임베딩 거리 기반으로 비슷한 공고들을 뽑아내는 거죠. 이게 수만 건일 수 있어요. 여기서 중요한 건 "넓게 던지는" 겁니다. 너무 좁게 시작하면 놓치는 것이 생기니까요.
두 번째 learn 단계에서 에이전트가 페어와이즈 비교를 시킵니다. 두 공고를 보여주고 "어느 쪽이 더 마음에 드나요?"라고 물어요. 사용자가 여러 번 답하면, 그 선택 패턴으로부터 취향 모델을 학습합니다. 이게 반복되면서 에이전트는 "이 사람은 원격 근무를 중시하고, 스타트업보다는 중견 기업을 선호하며, 복지보다는 기술 스택을 본다"는 식의 암묵적 선호를 파악하게 돼요.
마지막 rank 단계는 학습된 모델로 남은 후보들을 순위화합니다. 사용자가 직접 볼 목록이 여기서 나와요. 제가 이해한 바로는, 이 순위는 단순 점수가 아니라 학습 단계에서 축적된 선호를 종합한 결과라 키워드 검색보다 훨씬 개인화되어 있습니다.
실제 사용했을 때 부딪히는 한계
장점만 있는 건 아니에요. 제가 코드를 살펴보면서 걸린 부분이 세 가지 있습니다.
첫째, 초기 학습 비용이 생각보다 높을 수 있어요. Learn 단계에서 페어와이즈 비교를 몇 번이나 해야 모델이 제대로 학습되는지가 명시되어 있지 않더군요. 만약 50번 이상 비교해야 정확도가 나온다면, 그냥 직접 검색하는 게 나을 수도 있어요. 이 도구는 "반복 탐색"에 강점이 있으니, 한 번 쓰고 말 사람보다는 지속적으로 구직 활동을 하는 사람에게 맞습니다.
둘째, 25개 ATS가 전체 시장을 커버하진 않습니다. 특히 한국 시장이나 특정 산업군은 자체 채용 플랫폼을 쓰는 경우가 많아요. 이 도구의 데이터는 주로 영미권 테크 업계 중심일 가능성이 높아요. 제가 확인한 시점 기준으로 데이터 출처가 명시되어 있지 않아서, 자기 직군이 실제로 잘 커버되는지는 직접 써봐야 알 수 있습니다.
셋째, 보안 고려사항이에요. 최근 커밋 메시지를 보니 "에이전트가 직접 실행하지 않고 사람이 실행한다"는 내용이 있더군요. 이건 에이전트에게 너무 많은 권한을 주면 의도하지 않은 동작이 발생할 수 있다는 뜻입니다. 실제로 이 도구를 Claude Code와 연결할 때, 어떤 도구 호출까지 허용할지 신중하게 설정해야 해요. 잘못하면 민감한 이력서 정보가 의도치 않게 외부로 나갈 수도 있습니다.
어떤 상황에서 open-jobs가 유리할까요?
제 경험상 이 도구가 빛을 발하는 경우는 명확합니다. 첫째, 장기 구직자. 몇 주에서 몇 달 동안 계속 새 공고를 체크해야 하는 사람이라면, 초기 학습 비용을 감수하고도 나중에 시간을 크게 아낄 수 있어요. 둘째, 명확한 선호가 있지만 말로 표현하기 어려운 경우. "좋은 회사 문화"같은 건 키워드로 검색이 안 되잖아요. 하지만 공고를 여러 개 비교하다 보면 패턴이 보입니다. 이 도구는 그 암묵적 선호를 학습하는 데 강해요.
반대로 비추천하는 경우도 있어요. 급하게 이번 주 안에 지원해야 하는 상황이라면, 학습 단계를 거칠 여유가 없습니다. 그냥 LinkedIn이나 Indeed에서 직접 검색하는 게 빠르죠. 또 자기 직군이 메이저 ATS를 안 쓰는 분야라면, 이 도구의 데이터 커버리지가 부족할 수 있어요.
에이전트에게 맡길 것과 맡기지 말 것
이 도구를 보면서 든 생각은, 구직 검색이 에이전트에게 위임하기 좋은 작업이라는 거예요. 반복적이고, 명확한 비교 기준이 있고, 사람의 최종 판단이 들어갈 여지가 있으니까요. 하지만 "전부 맡기는" 건 위험합니다. Learn 단계에서 사용자 입력을 계속 받는 이유가, 에이전트가 혼자 판단하면 편향될 수 있기 때문이에요.
CC0 라이선스로 공개한 것도 주목할 만해요. 데이터와 코드를 자유롭게 쓸 수 있다는 건, 이 구조를 다른 도메인에 적용해 볼 수 있다는 뜻입니다. 구인공고 대신 부동산 매물, 중고 거래 물건, 논문 검색에도 같은 hull-learn-rank 패턴을 쓸 수 있어요. 제가 주목한 건 바로 이 재사용 가능성이에요. 도구 자체보다, "대량 탐색을 에이전트에게 어떻게 맡길 것인가"의 레퍼런스로 가치가 있습니다.
다만 지금 당장 구직 중이고 영미권 테크 업계가 타겟이라면, 한번 써볼 만해요. Star 수가 아직 100도 안 되는 걸 보면 초기 단계지만, 그만큼 빠르게 개선될 가능성도 있습니다. 제가 다시 확인해보니 8월 29일에도 커밋이 올라왔더군요. 활발하게 개발 중인 프로젝트예요.