FDE Build Project · 인사 · 근태

지문기 출입기록이,
정리된 근태표가 됩니다

신스타프리젠츠의 근태 관리를 자동화했습니다. CAPS(캡스) 지문 출입기록이라는 다듬어지지 않은 원시 데이터를, 사람 손을 거의 타지 않고 직원별 근무시간 계산 · 이상근태 자동 탐지 · 휴가/외근 자동 대조 · 예외만 골라주는 대시보드까지 처리합니다.

🏢 신스타프리젠츠 (직원 약 19명) 👥 경영지원 관리자 🧪 dev POC 마감 단계
직원 19명근태를 자동으로 관리
342 / 342출퇴근 측정 정답지와 100% 일치
약 25%만사람이 최종 확인 (나머지 자동)
사유 중심슬랙으로 이상 사유 자동 수집

※ 정확도·자동 처리 비율은 2026년 5월 데이터를 기존 근태시트(정답지)와 대조한 검증 결과입니다.

The Challenge

캡스는 기록만 할 뿐, 정리해 주지 않는다

지문기는 노이즈 많은 출입 로그를 쏟아낼 뿐이라, 근무시간 계산도 이상 판별도 사람 몫이었습니다.

1

원시 데이터가 사람 손을 강제한다

한 사람이 하루에도 출근·출입·해제·퇴근을 여러 번 찍어 로그가 지저분합니다. 매달 이걸 열어 직원×날짜로 정리하고 근무시간을 계산해야 했습니다.

2

이상과 정상을 사람이 일일이 판별

지각·근무 미달·출퇴근 누락을 눈으로 걸러야 했고, 그게 진짜 문제인지(휴가·외근이라 정상인지)를 별도 기안서·캘린더와 대조해야 했습니다.

3

리더가 원하는 건 숫자가 아니라 사유

"왜 이 사람이 자주 지각·외근하나"가 보여야 하는데, 기존 방식으로는 출퇴근 표에 사유까지 붙일 여력이 없었습니다.

The Solution

원시 기록부터 사유 수집까지 자동으로

원시 파일만 올리면 근무시간 계산·이상 탐지·휴가/외근 대조가 자동으로 돌고, 사람이 볼 예외만 남습니다.

STEP 1

원시 로그 업로드

지문기 출입기록 파일을 올리기.

STEP 2

근무시간 계산

첫 출근·끝 퇴근으로 실근무 자동 산출.

STEP 3

이상 탐지

지각·미달·누락을 자동으로 찾음.

STEP 4

휴가·외근 대조

기안서·캘린더로 근거 자동 확인.

STEP 5

사유·리포트

슬랙 사유 수집 + 리더 리포트.

기능 ① · 입력

지저분한 출입기록을 근무시간표로

지문기 원시 파일만 올리면, 각 직원의 그날 첫 '출근'과 마지막 '퇴근'을 골라 실근무시간(점심 공제 포함)까지 자동 계산합니다.

  • 출입·해제 반복 펀치 같은 노이즈를 알아서 걷어냄
  • 자정을 넘긴 야근도 전날 근무로 올바르게 귀속
  • 매달 반복하던 수기 정리·계산이 사라짐
CAPS 지문기 근태 원시 데이터 (직원명 마스킹)
입력: 지문기 원시 출입기록 (직원명은 마스킹)
기능 ② · 산출·탐지

근무시간과 근태유형을 자동 판정

직원별 출근·퇴근·실근무시간을 정리하고, 연차·반반차·교육 같은 근태유형을 자동으로 붙입니다. 지각·근무 미달·출퇴근 누락 같은 이상은 자동으로 찾아 사람이 볼 예외만 처리함에 띄웁니다.

  • 관리자는 전체가 아니라 걸러진 예외에만 집중
  • 지각 허용치(예: 20분)를 화면에서 조절 — 근소한 건은 자동 종결
  • 예외를 클릭하면 출근·퇴근 근거가 바로 보임
직원별 출근·퇴근·실근무시간 + 근태유형 자동 판정 (직원명 마스킹)
산출: 근무시간 계산 + 근태유형 자동 판정
기능 ③ · 자동 대조

휴가·외근을 스스로 대조해 자동 해소

이상으로 잡힌 날이 사실은 휴가·재택·외근·교육이면, 시스템이 근거를 찾아 자동으로 정리합니다. 확신이 높으면 자동 반영하고, 애매하면 사람이 판단하도록 올립니다.

  • 휴가·재택 기안서(드라이브)를 읽어 그 날의 이상을 자동 해소
  • 외근·교육은 캘린더 일정을 판단 — 애매하면 "승인 대기"로
  • 육아기 단축근로 같은 특수 근무도 승인 기안 기준으로 반영
이상으로 잡힌 날지각 · 미달 · 출퇴근 누락
휴가 기안서 · 캘린더 대조근거를 찾아 자동 판단
자동 해소 / 승인 대기확신 높으면 자동, 애매하면 사람
정상인 이상은 자동으로 걷어낸다
기능 ④ · 사유·리포트

슬랙으로 사유를 묻고, 리더에겐 리포트로

이상근태가 생기면 봇이 해당 직원에게 1:1 메시지로 사유를 묻고, 답이 오면 처리함에 자동 반영합니다. 리더에게는 요약 대시보드를 주기적으로 보냅니다.

  • 관리자가 일일이 묻지 않아도 사유가 자동 수집됨
  • 미응답 시 자동으로 다시 물어봄
  • 리더용 요약·개인별 상세를 2주 주기로 슬랙에 이미지로 발송
이상근태 발생사유 확인 필요
슬랙 봇이 직원에게 문의1:1 DM · 미응답 시 재발송
사유 반영 + 리더 리포트2주 주기 요약 발송
사유는 자동으로 모이고, 리더는 요약만
“출퇴근 시각보다, 왜 지각·외근하는지 '사유'가 더 중요합니다.”

그래서 단순 근무표가 아니라, 이상근태의 사유까지 자동으로 모아 리더가 맥락을 보게 만들었습니다.

The Impact

전수 정리에서 예외 확인으로

운영 성과 지표는 정식 도입 후 측정 예정입니다. 5월 데이터 검증에서 확인된 결과는 다음과 같습니다.

BEFORE
  • 매달 원시 데이터를 직원×날짜로 수기 정리·계산
  • 이상 여부와 휴가·외근을 사람이 대조해 판별
  • 사유를 붙일 여력이 없어 리더는 숫자만 봄
AFTER
  • 출퇴근 측정 정답지와 100% 일치, 근태유형 약 72% 자동 판정
  • 휴가·외근 자동 대조로 정상인 이상을 자동 해소
  • 슬랙으로 사유 자동 수집 → 사람은 약 25%만 확인
측정 정확도
342 / 342

2026년 5월 출퇴근 측정을 사람이 만든 기존 근태시트와 셀 단위로 대조한 결과 100% 일치했습니다. 사람이 최종 확인하는 건은 전체의 약 25%로 줄었습니다.

현황

1차 POC 마감 단계

측정·평결 파이프라인, 처리함·대시보드, 휴가·외근 자동 해소, 슬랙 봇 연동이 완료됐습니다. CAPS 자동 연동(현재는 원시 파일 수동 업로드)과 리더 리포트 재디자인을 이어서 진행합니다.

Tech Stack

검증된 스택 위에

노이즈 많은 원시 로그를 정리하는 규칙 엔진과, 휴가·외근을 판단하는 외부 연동이 핵심입니다.

Python · Django · DRF PostgreSQL Claude · Gemini · OpenAI (모델 교체) pdfplumber · xlrd Google Drive · Calendar API Docswave OpenAPI Slack 봇 crontab 데일리 배치 standarda-core