career-ops: 지원 전에 먼저 판단하는 로컬 우선 오픈소스 AI 구직 에이전트

Published · AI Daily — AI-assisted deep research, methodology & disclosure

career-ops는 santifer가 공개한 오픈소스 AI 구직 에이전트입니다. 공고를 붙여 넣으면 내 기기에서 공고가 아직 열려 있는지, 나에게 맞는지 판단하고 이력서를 조정해 답변 초안을 씁니다. 제출은 본인이 합니다. 작성자는 평가 740건, 지원 68건, 면접 12회, 합격 1건이라고 밝힙니다. 로컬 우선과 사람의 판단을 강조하며 무료·로컬 모델도 지원합니다.

무엇인가: 지원자 편에 선 오픈소스 AI 구직 에이전트

career-ops는 GitHub에 공개된 오픈소스 프로젝트이며, 슬로건은 "The open-source AI job search agent"입니다. 작성자는 santifer(Santiago Fernández de Valderrama Aparicio)입니다. 출발점은 단순합니다. 몇 달 동안 이력서를 보냈지만 돌아온 것은 침묵뿐이었습니다. 그래서 더 많이 보내는 대신, 자신에게 필요한 필터를 직접 만들었습니다. README에 나온 본인의 수치는 평가한 공고 740건, 지원 68건, 면접 12회, 합격 제안 1건입니다. 작성자는 자신이 이 도구의 첫 번째 사용자였고, 일자리를 얻은 뒤에 오픈소스로 공개했다고 말합니다. README에 따르면 그는 6개월 뒤 그 직장을 떠났고, 지금은 팀이 career-ops를 계속 만들고 있습니다.

사용법은 한 문장으로 요약됩니다. 공고를 붙여 넣으면, 내 컴퓨터에서 그 공고가 아직 열려 있는지, 그리고 나에게 맞는지를 알려 줍니다. 이어서 이력서를 공고에 맞게 조정하고 지원서 문항의 답변 초안을 작성합니다. 마지막 단계는 사람의 몫입니다. "You press Submit", 즉 제출 버튼은 본인이 누릅니다.

핵심 설계: 먼저 판단하고, 그다음에 행동한다

대부분의 AI 구직 도구는 생산의 문제를 풉니다. 이력서를 더 빨리 만들고 지원을 대량으로 보냅니다. career-ops는 반대편에서 시작해 먼저 판단의 문제를 풉니다. README는 대비로 시작합니다. 기업은 AI로 지원자를 걸러내는데, 작성자는 지원자에게 기업을 고르기 위한 AI를 주었다는 것입니다. 도구가 처음 내놓는 것은 문서가 아니라 결론입니다. 결론이 "do not apply"라면 그날 밤 시간을 돌려받은 셈입니다. 계획이 돌아오면 다음에 무엇을 할지 알게 됩니다.

데모 영상에는 작성자의 실제 구직 과정이 담겨 있습니다. 점수가 매겨진 공고 목록, "지원하지 말 것"으로 분류된 수를 보여 주는 붉은 카운터, 그리고 전체 평가 보고서입니다. 화면은 스페인어입니다. README 자체도 영어, 스페인어, 독일어, 프랑스어, 일본어, 한국어, 중국어 간체와 번체 등 17개 언어로 제공됩니다.

동작 방식과 확인 가능한 범위

먼저 범위를 밝힙니다. 우리가 참고한 자료는 README의 앞부분입니다. 채점 기준, 프롬프트 구조, 공고 수집 방식, 데이터 저장 형식 같은 내부 구현은 적혀 있지 않습니다. 그래서 README가 명시한 내용과 거기서 합리적으로 도출되는 의미만 다룹니다. 첫째, 로컬 우선입니다. README는 "Open source. Local. In the AI CLI you already use."라고 말합니다. 호스팅 서비스가 아니라 이미 쓰고 있는 AI 명령줄 클라이언트 안에서 동작합니다. 시작은 npx @santifer/career-ops init 한 줄입니다. npm 패키지로 배포되어 로컬 환경에 작업 흐름을 설치하는 형태로 읽힙니다. 이력서, 지원 기록, 평가 결과 같은 민감한 개인 정보를 제3자 플랫폼에 맡길 필요가 없습니다.

둘째, 모델을 바꿔 쓸 수 있습니다. README는 RUNNING_ON_A_BUDGET 문서를 연결하고 무료 모델과 로컬 모델도 포함된다고 밝힙니다. 평가마다 비용을 내고 싶지 않은 구직자에게는 진입 장벽이 낮아집니다. 대가도 분명합니다. 작은 로컬 모델은 긴 문서의 판단과 문장 품질에서 클라우드 상위 모델보다 약한 경우가 많습니다. 셋째, 공고가 아직 열려 있는지 확인합니다. 이미 내려간 공고에 시간을 쓰는 지원자가 많습니다. "아직 열려 있는가"와 "나에게 맞는가"를 한 번의 평가에 묶은 것은 실용적인 발상입니다. 확인 방법은 README에 없으므로 추측하지 않습니다. 넷째, 사람이 판단 과정에 남습니다. 도구는 초안을 쓰고 이력서를 조정하지만 제출은 사람이 합니다. README는 이 원칙을 여섯 줄의 선언문으로 적었습니다. 더 적게, 더 잘 지원한다. 양보다 신호. 키워드보다 증거. 결정은 사람이. 로컬 우선. 테이블 양쪽 모두에 존엄을.

주요 수치와 해석

눈에 띄는 숫자는 740, 68, 12, 1입니다. 이 깔때기는 시사적입니다. 평가한 공고는 지원한 공고의 열 배가 넘고, 지원 건수는 면접 건수의 대략 다섯에서 여섯 배입니다. 대부분의 공고는 평가 단계에서 탈락했고 실제로 보낸 것은 일부였습니다. 무작정 많이 보내는 전략과 반대입니다.

다만 신중하게 읽어야 합니다. 이것은 한 사람의 구직 경험이지 대조 실험이 아닙니다. 도구 없이 지원했을 때의 성공률은 제시되지 않았고, 업종, 경력, 지역, 시기의 영향도 배제할 수 없습니다. 설득력 있는 사례이지만 효과의 증명은 아닙니다. 지연 시간이나 비용에 대한 벤치마크도 없습니다. 비용은 선택한 모델에 달려 있습니다.

커뮤니티 쪽 신호는 더 많습니다. Trendshift에서 당일 GitHub 저장소 1위로 표시되었고, Product Hunt에 소개되었으며, Vercel 오픈소스 프로그램의 지원을 받습니다. README는 WIRED와 Business Insider의 보도도 인용합니다. HIRED.md는 공개된 채용 성공 사례를 동적 배지로 집계하며, 각 카드는 열어서 읽을 수 있는 공개 이슈입니다. 이는 프로젝트가 스스로 제시하는 도입 증거이며 링크된 페이지에서 확인할 수 있지만, 우리가 하나하나 검증한 것은 아닙니다.

개발자와 시장에 미치는 영향

개발자에게 career-ops는 좋은 연구 사례입니다. 매우 개인적인 작업을 독립 앱이 아니라 범용 AI 명령줄 안에서 도는 배포 가능한 작업 흐름으로 만들었습니다. 이미 가진 모델 이용권을 재사용하고, 배포 비용이 낮으며, 커뮤니티가 쉽게 고쳐 쓸 수 있다는 장점이 있습니다.

구직 시장에서는 힘의 균형을 맞추려는 시도입니다. 채용 쪽은 오래전부터 알고리즘으로 이력서를 거르고 있었지만, 지원자에게는 템플릿과 키워드 채우기뿐이었습니다. career-ops는 지원자에게도 평가 도구를 주고 물량 공세에 분명히 반대합니다. "지원하지 말라"는 결론을 제품의 핵심 가치로 다루는 점이 눈에 띕니다. 대부분의 도구는 보낸 지원 수로 성공을 재기 때문입니다.

한계와 위험

첫째, 평가 품질은 모델에 좌우됩니다. 점수, 적합도 판단, "do not apply" 결론은 모두 모델의 출력이라 틀릴 수 있습니다. 판결이 아니라 조언으로 받아들여야 합니다. 둘째, 개인정보입니다. 로컬 우선은 데이터가 기기 밖으로 나가는 위험을 줄이지만, 클라우드 모델을 쓰면 이력서 내용이 모델 제공자에게 전달됩니다. 로컬 모델은 이를 피할 수 있으나 품질을 양보해야 합니다.

셋째, 초안의 진실성입니다. 자동으로 조정된 이력서는 실제 경력에 충실해야 합니다. README의 "증거 우선" 원칙은 옳은 방향이지만, 도구가 사실을 대신 검증하지는 못합니다. 제출 버튼을 누른 사람이 책임을 집니다. 넷째, 근거의 범위가 좁습니다. 공개된 자료는 주로 작성자의 설명과 커뮤니티 사례이며, 독립적이고 재현 가능한 평가는 아직 없습니다.

앞으로의 방향

README의 구성은 문서와 화면의 다국어 확대, 채용 사례 모음의 성장, 선언문을 중심으로 한 커뮤니티라는 방향을 보여 줍니다. 선언문 페이지에는 서명 수 배지가 있어 구직 관행을 공유된 규범으로 만들려는 시도로 읽힙니다. 가장 유용한 다음 단계는 공개 벤치마크일 것입니다. 고정된 공고 묶음에서 여러 모델의 "지원/비지원" 판단을 비교하고, 사람의 판단과의 일치율을 보고하는 것입니다.

결론

career-ops의 가치는 더 많이 지원하게 해 주는 데 있지 않고, 더 적게, 더 정확히 지원하게 해 주는 데 있습니다. 행동 앞에 판단을 두고, 결정은 사람에게 남기고, 데이터는 내 기기에 둡니다. 근거는 주로 한 작성자의 사례와 커뮤니티 이야기라서 신중히 받아들여야 합니다. 그래도 생각은 분명하고 시도 비용은 낮습니다. npx 명령 하나와, 오늘 밤 지원하려던 공고 하나면 됩니다.

Sources