왜 이 스킬이 필요한가
중국 게임사, 퇴사 직원 데이터로 AI 분신 만들어 '재고용' 논란
2026년 4월, 중국 산둥성의 한 게임 회사가 퇴사한 HR 직원의 업무 데이터를 학습시켜 AI 디지털 분신을 만들고
사내 채팅에서 "전직 직원의 디지털 아바타입니다"라며 업무를 수행하게 한 사실이 알려졌다.
채팅 기록, 업무 문서 등 개인정보를 무단으로 AI 학습에 사용한 점이 법적 쟁점이 되고 있다.
이 사건의 핵심 문제는 개인의 데이터를 무단으로 AI에 학습시킨 것이다. 하지만 "퇴사자의 업무 지식을 보존한다"는 목표 자체는 모든 조직의 과제다. 올바른 방법은 개인 데이터를 복제하는 게 아니라, 업무 프로세스와 노하우를 구조화된 문서(SKILL.md)로 정리하는 것이다.
당신의 팀에서도 일어나고 있는 일
70%
퇴사자와 함께 사라지는
문서화되지 않은 업무 지식
문서화되지 않은 업무 지식
6개월
후임자가 전임자 수준에
도달하는 데 걸리는 평균 시간
도달하는 데 걸리는 평균 시간
3.2명
한 명이 퇴사하면
영향받는 팀원 수
영향받는 팀원 수
15분
SKILL.md 하나를
작성하는 데 걸리는 시간
작성하는 데 걸리는 시간
이런 경험, 있지 않나요?
퇴사자가 남기고 간 빈자리의 크기는 퇴사 후에야 드러난다
😱
"그건 김 대리한테 물어봐야 하는데..."
배포 스크립트에 숨겨진 환경변수가 있었다. 김 대리만 알고 있었는데, 이미 3개월 전에 퇴사했다. 프로덕션이 2시간 멈췄다.
💸
"이 엑셀 매크로 누가 만든 거야?"
매달 회계 마감에 쓰이는 엑셀 매크로. 전임자가 만들었는데 비밀번호가 걸려 있고, 로직 설명이 없다. 외주로 다시 만들어야 했다.
🤯
"왜 이 코드에 이런 예외 처리가 있지?"
이상한 if문을 삭제했더니 특정 고객사 결제가 전부 실패했다. 알고 보니 그 고객사만 쓰는 특수 로직이었다. 전임 개발자가 퇴사한 지 1년.
🏃
"인수인계서요? 여기 있는데..."
A4 2장짜리 인수인계서를 받았다. "OO 시스템 관리", "XX 업무 처리" — 그래서 어떻게? 구체적인 절차가 하나도 없다.
공통점: 전부 "그 사람의 머릿속에만 있던 정보"가 사라진 것이다.
SKILL.md는 이 암묵지를 퇴사 전에 구조화된 형태로 꺼내서 저장하는 방법이다.
AI가 문서를 읽고 후임자를 도울 수 있도록.
AI 분신 vs SKILL.md 인수인계
같은 목표, 완전히 다른 접근
AI 분신 (중국 사례)
- 개인 채팅/이메일을 무단으로 학습
- 퇴사자 동의 여부 불투명
- 개인정보보호법 위반 소지
- "사람을 복제"하려는 시도
- 학습 데이터 수정/삭제 불가
- 법적 리스크가 큼
SKILL.md 인수인계
- 업무 프로세스만 문서화 (개인정보 제외)
- 퇴사자가 직접 작성하거나 검토/동의
- Git에 커밋, 투명한 버전 관리
- "업무 방법을 기록"하는 것
- 언제든 수정/삭제 가능
- 법적으로 안전, 윤리적으로 올바름
절대 하지 말 것: 퇴사자의 이메일, 채팅 기록, 개인 메모를 무단으로 AI 학습 데이터로 사용하지 않는다.
업무용 데이터라 해도 개인정보에 해당하며, 동의 없는 수집은 한국 개인정보보호법 위반이다.
인수인계 스킬 구축 5단계
퇴사 예정자가 재직 중에 업무 지식을 SKILL.md로 정리하는 과정
1
업무 영역 식별
퇴사자가 담당하는 반복 업무, 의사결정 기준, 암묵지(문서화되지 않은 노하우)를 목록으로 정리한다. "내가 없으면 누가 이걸 어떻게 알지?"가 기준이다.
2
스킬 단위로 분리
하나의 업무 = 하나의 스킬. "채용 공고 작성", "월간 리포트 생성", "고객 문의 대응 가이드" 등 독립된 단위로 나눈다.
3
SKILL.md 작성
각 스킬을 마크다운으로 문서화한다. 절차, 주의사항, 예외 처리, 참고 자료를 포함한다. 개인정보는 절대 포함하지 않는다.
4
후임자/팀 리뷰
작성된 스킬을 후임자나 팀원이 읽고 실행해본다. 빠진 내용, 불명확한 부분을 보완한다. PR 리뷰처럼 진행한다.
5
Git 커밋 및 인계 완료
스킬 파일을 프로젝트의
.claude/skills/에 커밋한다. 후임자가 /스킬이름으로 언제든 호출할 수 있다.실전 예제: HR 담당자 인수인계
중국 사례처럼 "AI 분신"을 만드는 대신, 업무 프로세스를 스킬로 정리하는 올바른 방법
디렉토리 구조
# HR 담당자 인수인계 스킬 세트
.claude/skills/
├── hr-recruit/
│ ├── SKILL.md # /hr-recruit — 채용 공고 작성
│ └── templates/
│ └── job-posting.md # 공고 템플릿
├── hr-onboarding/
│ ├── SKILL.md # /hr-onboarding — 신규 입사자 온보딩
│ └── checklist.md # 온보딩 체크리스트
├── hr-monthly-report/
│ ├── SKILL.md # /hr-monthly-report — 월간 인사 리포트
│ └── scripts/
│ └── collect-data.py # 데이터 수집 스크립트
└── hr-leave-policy/
└── SKILL.md # /hr-leave-policy — 휴가 정책 안내
채용 공고 작성 스킬
# .claude/skills/hr-recruit/SKILL.md
---
name: hr-recruit
description: 채용 공고를 작성한다. 직군, 포지션, 요구사항을 전달하면 회사 톤앤매너에 맞는 공고를 생성.
disable-model-invocation: true
argument-hint: [직군] [포지션명]
---
# 채용 공고 작성
$ARGUMENTS에 맞는 채용 공고를 작성한다.
## 공고 구조
1. 포지션 소개 — 2-3문장으로 역할 요약
2. 주요 업무 — 5-7개 불릿 포인트
3. 자격 요건 — 필수 / 우대 분리
4. 혜택 및 복지 — 회사 공통 항목 + 팀 고유 항목
5. 전형 절차 — 서류 → 과제 → 면접 순서
## 톤앤매너
- 반말 금지, 존댓말 기본
- 과도한 이모지 사용 금지
- "~ 하실 분"보다 "~ 경험이 있는 분" 선호
- 연봉 범위는 별도 문의로 안내 (공고에 미기재)
## 참고 자료
- 공고 템플릿: [templates/job-posting.md](templates/job-posting.md)
## 주의사항
- 성별, 나이, 출신 학교 등 차별적 표현 절대 금지
- 경력 요구 시 "N년 이상" 대신 "관련 경험이 있는 분" 권장
- 최종 공고는 반드시 HR 팀장 검토 후 게시
월간 리포트 스킬 (Python 스크립트 연동)
# .claude/skills/hr-monthly-report/SKILL.md
---
name: hr-monthly-report
description: 월간 인사 리포트를 생성한다. 인원 현황, 채용/퇴사 추이, 휴가 사용률을 정리.
disable-model-invocation: true
allowed-tools: Bash(python *) Read
---
# 월간 인사 리포트
## 절차
1. 데이터 수집 스크립트 실행:
```bash
python ${CLAUDE_SKILL_DIR}/scripts/collect-data.py
```
2. 생성된 `hr-data.json`을 읽고 다음 항목을 정리:
- 인원 현황: 총원, 부서별 인원, 전월 대비 증감
- 채용: 이번 달 입사자 수, 진행 중인 포지션
- 퇴사: 이번 달 퇴사자 수, 퇴사 사유 분류
- 휴가: 평균 사용률, 미사용 잔여 일수 경고
3. 마크다운 형식으로 리포트 생성
4. `reports/YYYY-MM-hr-report.md`에 저장
## 리포트 톤
- 수치 중심, 감정 표현 최소화
- 전월 대비 변화는 화살표로 표시 (12명 → 15명 (+3))
- 이상 징후(퇴사율 급증 등)는 별도 섹션으로 하이라이트
## 배포
- 리포트 완성 후 반드시 HR 팀장에게 전달 (자동 공유 금지)
- 리포트에 개인 식별 가능 정보 포함 금지 (이름 대신 부서/직급 단위로 집계)
개발 직군 인수인계 예제
HR뿐 아니라 개발자, 디자이너, PM 등 모든 직군에 적용 가능하다
# 백엔드 개발자 인수인계 스킬 세트
.claude/skills/
├── deploy-production/
│ └── SKILL.md # /deploy-production — 프로덕션 배포 절차
├── db-migration-guide/
│ └── SKILL.md # /db-migration-guide — DB 마이그레이션 가이드
├── incident-response/
│ └── SKILL.md # /incident-response — 장애 대응 매뉴얼
├── api-design-review/
│ └── SKILL.md # /api-design-review — API 설계 리뷰 기준
└── legacy-payment/
├── SKILL.md # /legacy-payment — 레거시 결제 시스템 가이드
└── reference.md # 시스템 구조 상세 문서
# .claude/skills/legacy-payment/SKILL.md
---
name: legacy-payment
description: 레거시 결제 시스템의 구조와 주의사항. 결제 관련 코드를 수정할 때 참조.
user-invocable: false
---
# 레거시 결제 시스템 가이드
이 스킬은 Claude가 결제 관련 코드를 수정할 때 자동으로 참조한다.
user-invocable: false이므로 / 메뉴에는 표시되지 않는다.
## 핵심 주의사항
- 결제 로직은 src/payment/ 디렉토리에 집중
- PG사 연동은 src/payment/pg/ — 3개 PG사를 추상화한 어댑터 패턴
- 절대 금지: payment_core.py의 calculate_amount()는 수정하지 않는다
(세금 계산 로직이 세무사 검증을 거침, 함부로 바꾸면 세금 신고에 영향)
- 환불 로직은 비동기 처리. 동기로 바꾸면 타임아웃 발생
## 아키텍처
상세 구조는 [reference.md](reference.md) 참조
## 이 코드를 수정해야 할 때
1. 반드시 staging 환경에서 먼저 테스트
2. 테스트 결제 후 PG사 관리자 페이지에서 정상 처리 확인
3. 금액 관련 변경은 PR 리뷰어를 2명 이상 지정
user-invocable: false 활용:
/legacy-payment로 직접 호출하는 게 아니라,
Claude가 결제 관련 코드를 수정할 때 자동으로 이 스킬을 참조하도록 한다.
퇴사자만 알던 "이건 절대 건드리면 안 돼"를 시스템으로 보존하는 패턴이다.
직군별 인수인계 스킬 세트
어떤 직군이든 패턴은 같다: "나만 아는 것"을 "누구나 실행할 수 있는 스킬"로 바꾼다
🎨
디자이너
.claude/skills/
├── design-handoff/SKILL.md # 개발팀 전달 절차
├── brand-guide/SKILL.md # 브랜드 가이드라인
├── icon-export/SKILL.md # 아이콘 내보내기 규칙
└── figma-naming/SKILL.md # 피그마 네이밍 컨벤션
📊
PM / 기획자
.claude/skills/
├── prd-template/SKILL.md # PRD 작성 가이드
├── sprint-planning/SKILL.md # 스프린트 계획 절차
├── stakeholder-report/SKILL.md # 경영진 보고서 작성
└── ab-test-setup/SKILL.md # A/B 테스트 설정 가이드
📣
마케터
.claude/skills/
├── ad-campaign/SKILL.md # 광고 캠페인 세팅 절차
├── ga4-report/SKILL.md # GA4 보고서 생성 가이드
├── content-calendar/SKILL.md # 콘텐츠 캘린더 관리
└── influencer-outreach/SKILL.md # 인플루언서 협업 절차
🏢
CS / 운영
.claude/skills/
├── cs-response/SKILL.md # 고객 문의 응대 가이드
├── refund-process/SKILL.md # 환불 처리 절차
├── vip-escalation/SKILL.md # VIP 고객 에스컬레이션
└── weekly-cs-report/SKILL.md # 주간 CS 현황 리포트
실전 예제: 새벽 3시 장애 대응
퇴사한 시니어 개발자만 알던 장애 대응 노하우를 스킬로 남긴 사례
# .claude/skills/incident-response/SKILL.md
---
name: incident-response
description: 프로덕션 장애 발생 시 대응 절차. 서비스 다운, 500 에러 급증, DB 커넥션 풀 고갈 등의 상황에서 사용.
disable-model-invocation: true
---
# 장애 대응 매뉴얼
## 1단계: 상황 파악 (5분 이내)
- Grafana 대시보드 확인: https://grafana.internal/d/main
- 핵심 지표: 요청 성공률, p99 레이턴시, DB 커넥션 수
- Slack #incident 채널에 장애 선언: "@here [장애] {증상} 확인 중"
## 2단계: 원인 분류
### 500 에러 급증 → 대부분 배포 직후 발생
1. 최근 배포 이력 확인: kubectl rollout history deployment/api
2. 즉시 롤백: kubectl rollout undo deployment/api
3. 롤백 후 3분 대기, 에러율 정상화 확인
### DB 커넥션 풀 고갈 → 슬로우 쿼리가 원인
1. 현재 활성 커넥션 확인: SELECT count(*) FROM pg_stat_activity;
2. 5초 이상 실행 중인 쿼리 식별:
SELECT pid, now() - pg_stat_activity.query_start AS duration, query
FROM pg_stat_activity WHERE state = 'active'
ORDER BY duration DESC LIMIT 10;
3. 주의: 바로 kill 하지 않는다. 결제/정산 쿼리일 수 있음
4. 쿼리 내용 확인 후 안전한 것만 종료: SELECT pg_cancel_backend({pid});
### 외부 API 타임아웃 → PG사 장애 가능성
1. PG사 상태 페이지 확인:
- A사: https://status.pg-a.co.kr
- B사: https://status.pg-b.co.kr
2. 특정 PG사 장애면 fallback PG로 전환:
kubectl set env deployment/api PG_PRIMARY=pg-b
3. 절대 금지: 두 PG사를 동시에 활성화하면 이중 결제 발생
## 3단계: 복구 후
1. #incident 채널에 복구 선언 + 원인 요약
2. 24시간 이내 포스트모템 작성 (docs/postmortem/ 에 저장)
3. 재발 방지 이슈 생성
## 연락처 (장애 등급별)
- P1 (서비스 전체 다운): CTO + 인프라 팀 전원
- P2 (일부 기능 장애): 해당 팀 리드 + 온콜 담당
- P3 (성능 저하): 온콜 담당자
- 온콜 스케줄: https://opsgenie.internal/schedules
이 스킬이 없었다면: 새벽 3시에 장애가 터졌을 때, 후임 개발자는 Grafana 대시보드 주소도 모르고,
"DB 커넥션 풀 고갈일 때 바로 kill 하면 안 된다"는 것도 모르고,
PG사 fallback 전환 시 이중 결제 위험이 있다는 것도 모른다.
전임자한테 전화하는 게 유일한 방법이 된다.
Before / After
SKILL.md 인수인계 도입 전후 비교
실전 예제: 고객 문의 대응 가이드
CS 팀 경력 5년차가 퇴사하면서 남긴 스킬 — 신입이 바로 쓸 수 있도록
# .claude/skills/cs-response/SKILL.md
---
name: cs-response
description: 고객 문의에 대한 응대 가이드. 문의 유형별 답변 템플릿, 에스컬레이션 기준, 톤앤매너 규칙 포함.
argument-hint: [문의 유형: 환불/배송/결제오류/계정/기타]
---
# 고객 문의 응대 가이드
$ARGUMENTS 유형의 문의에 대한 응대 초안을 작성한다.
## 응대 원칙
1. 3분 이내 초기 응답 — "확인 중" 이라도 보낸다
2. 감정 먼저, 해결 다음 — "불편을 드려 죄송합니다" 선행
3. 원인과 해결을 함께 — "~ 때문에 발생했고, ~ 처리하겠습니다"
## 문의 유형별 대응
### 환불 요청
- 결제 후 7일 이내: 전액 환불 가능 (관리자 페이지에서 처리)
- 7~30일: 팀장 승인 필요 → Slack #cs-approval 에 요청
- 30일 초과: 원칙적 불가, 특이사항 있으면 팀장에게 에스컬레이션
- 주의: 환불 승인 전에 "환불해드리겠습니다"라고 먼저 말하지 않는다
### 결제 오류
- PG사 오류인 경우: "일시적인 결제 시스템 지연" 안내 → 30분 후 재시도 권유
- 이중 결제: 즉시 관리자 페이지에서 확인 → 중복분 환불 처리 → 팀장 보고
- 카드사 한도 초과: 고객에게 카드사 직접 문의 안내 (우리가 해결 불가)
### VIP 고객 (월 결제 100만원 이상)
- 일반 가이드와 동일하지만 응대 속도 1분 이내 목표
- 환불/보상 재량권이 넓음 (팀장 승인 없이 10만원까지 가능)
- 담당 AM이 있으면 반드시 참조 (Slack DM으로 상황 공유)
## 절대 하지 말 것
- 내부 시스템 URL이나 관리자 페이지 주소를 고객에게 노출
- "다른 고객도 같은 문제를 겪고 있다"고 말하기 (불안 유발)
- 개발팀 탓으로 돌리기 ("개발팀 실수로 인해..." 금지)
- 해결 가능 여부 불확실한 상태에서 약속하기
실전 예제: GA4 리포트 생성 가이드
마케팅팀 퇴사자가 남긴 스킬 — "그 대시보드 어디서 보는 건데?" 방지용
# .claude/skills/ga4-report/SKILL.md
---
name: ga4-report
description: GA4 주간/월간 마케팅 성과 리포트를 생성한다. 트래픽, 전환율, 캠페인별 ROAS를 정리.
disable-model-invocation: true
allowed-tools: Bash(python *) Read
---
# GA4 마케팅 리포트
## 접속 정보
- GA4 Property: properties/123456789
- 대시보드: https://analytics.google.com/analytics/web/#/p123456789
- Looker Studio: https://lookerstudio.google.com/reporting/abcd-1234
## 주간 리포트 절차
1. GA4 → 보고서 → 획득 → 트래픽 획득에서 지난 7일 데이터 확인
2. 핵심 지표 수집:
- 세션 수 / 신규 사용자 / 이탈률
- 전환율 (회원가입, 구매 각각)
- 채널별 유입 (Organic / Paid / Social / Direct)
3. 전주 대비 증감률 계산
4. 캠페인별 ROAS 확인: Looker Studio → "Campaign Performance" 탭
## 리포트 전달
- 매주 월요일 오전 Slack #marketing-weekly에 공유
- 형식: "지난주 핵심 지표 → 인사이트 → 이번주 액션 아이템"
- 주의: 매출 수치는 #marketing-weekly에만 공유 (전사 채널 금지)
## 자주 하는 실수
- GA4 필터에서 "내부 트래픽 제외"를 빼먹으면 수치가 부풀려짐
- UTM 파라미터 없이 집행한 캠페인은 "Direct"로 잡힘 — 반드시 UTM 세팅 확인
- Looker Studio 데이터가 GA4와 1~2일 지연될 수 있음 — 월요일에 금요일 데이터까지만 신뢰
인수인계 스킬 작성 체크리스트
퇴사 전 스킬 문서화 체크리스트
- 반복 업무를 모두 스킬 단위로 목록화했는가
- 각 스킬에 구체적인 절차(명령어, URL, 도구 등)를 포함했는가
- 예외 상황과 "이것만은 하지 말 것"을 명시했는가
- "나만 아는" 암묵지를 문서화했는가
- 관련 스크립트/템플릿을 지원 파일로 번들했는가
- 개인정보(이름, 연락처, 급여 등)가 포함되지 않았는가
- 후임자 또는 팀원이 읽고 실행해봤는가
- Git에 커밋하고 PR 리뷰를 받았는가
핵심 원칙: 사람을 복제하는 게 아니라 업무 방법을 기록하는 것이다.
스킬 파일에는 "이 업무를 어떻게 하는가"만 담고,
"이 사람이 어떤 사람인가"는 담지 않는다.
이것이 중국 AI 분신 사건과 SKILL.md 인수인계의 근본적 차이다.