Project
채용 운영 AI 자동화
채용팀의 반복 업무(채용현황 리포트, 이력서 인테이크, 인터뷰 기록)를 AI 에이전트 스킬로 자동화한 프로젝트입니다. 이력서 인테이크 시 연봉 정보를 자동 마스킹하는 등 민감정보 가드레일을 설계의 중심에 두었습니다.
Details
Tags

채용팀의 운영 업무에는 매주 반복되는 일이 많습니다. 활성 공고를 돌며 전형 단계와 인원을 집계해 현황 리포트를 만들고, 새로 들어온 이력서를 확인해 공개 처리하고, 인터뷰 단계 후보자의 기록 페이지를 정리하는 일입니다. 손이 많이 가지만 판단의 폭은 크지 않은 업무들이라, AI 에이전트가 대신 처리하기에 적합하다고 봤습니다. 이 프로젝트에서는 이런 업무들을 에이전트 스킬로 만들어 채용팀이 직접 실행할 수 있게 했습니다.
작동 방식
채용팀은 Claude Code에서 /스킬이름 형태의 슬래시 명령으로, Codex에서는 스킬 이름이나 자연어 요청으로 각 업무를 실행합니다. 스킬은 채용 ATS(Greeting HR)와 노션을 오가며 정보를 모으고 정리합니다. 공고 목록은 Open API로 전수 수집하고, API 범위 밖인 칸반·메일·이력서 화면은 Playwright와 Chrome MCP로 브라우저를 직접 다룹니다.
주요 스킬은 다섯 종입니다.
채용현황 리포트: 활성 공고를 돌며 전형 단계·인원·면접 일정을 수집해 마크다운 리포트를 만들고, 노션의 정해진 위치에 날짜별 하위 페이지로 업로드합니다. 보통 주 1회 실행합니다.
이력서 인테이크: '지원 접수' 단계의 이력서를 한 건씩 확인해, 연봉 정보가 있으면 마스킹한 뒤 다음 단계로 넘깁니다. 처우·연봉 정보가 의도치 않게 노출되지 않도록 fail-safe로 동작합니다. 불확실하면 비공개를 유지하고, 공개·단계 이동 같은 되돌릴 수 없는 동작은 반드시 사람의 확인을 거쳐 실행합니다.
인터뷰 기록: 최신 리포트에서 인터뷰 단계 후보자를 추출해 노션 인터뷰 DB에 공고별·후보자별 페이지를 만들고 면접관을 초대합니다.
평가·사전설문 엔리치: 인터뷰 후보 페이지에 평가와 사전설문 내용을 채워 넣습니다. 이때 처우·연봉 문항과 비공개 평가는 자동으로 제외합니다.
구 파이프라인 이관: 예전에 쓰던 채용 기록을 현재 인터뷰 DB로 옮기는 일회성 작업입니다.
민감정보를 다루는 방식
채용 데이터는 후보자 실명·연락처·평가 같은 민감정보를 포함합니다. 그래서 자동화의 편의보다 가드레일을 먼저 설계했습니다. 원칙은 단순합니다. 후보자 원본 데이터의 단일 출처는 노션과 ATS에 두고, 자동화 레포에는 운영 자산(템플릿·SOP·스킬)만 둡니다.
가드레일은 세 겹으로 두었습니다.
- 커밋 차단: 후보자 스냅샷·실명 리포트·스크린샷 등을
.gitignore단계에서 막아 레포에 올라가지 못하게 합니다. - 실시간 PII 스캔: 파일을 쓸 때마다 후보자 ID·전화번호·이메일·실명 패턴을 감지하는 훅을 두어, 민감정보가 새 변경에 섞이면 경고합니다.
- 민감 클릭 게이트: 이력서 전체 공개나 채용단계 이동처럼 되돌릴 수 없는 클릭에는 사람의 확인을 강제합니다. 연봉이 마스킹됐는지 눈으로 확인하고 승인하는 단계를 거칩니다.
연봉 마스킹을 자동화의 부가 기능이 아니라 기본 동작으로 둔 것도 같은 맥락입니다. 실수로 한 번 노출되면 되돌릴 수 없는 정보이므로, 확신이 없을 때는 멈추는 쪽을 기본값으로 했습니다.
핸드오프
큰 작업은 step 단위로 쪼개 자가교정하며 실행하고, 변경 전후로 PII 스캔과 자체 리뷰를 거치도록 했습니다. 스킬 문서와 운영 가이드를 레포에 함께 두어, 다음에 이어받는 사람이나 에이전트가 같은 기준으로 작업할 수 있도록 정리했습니다.
자동화로 손이 줄어드는 만큼, 민감정보를 다루는 책임은 오히려 더 분명히 해두려 했습니다. 무엇을 자동으로 넘기고 무엇은 사람이 확인해야 하는지를 코드와 문서 양쪽에 남겨, 편의와 안전 사이의 경계를 흐리지 않으려 한 프로젝트입니다.