중소기업에서 연차 관리는 생각보다 복잡합니다. 입사일 기준 월차, 1년 이후 연차, 이월 처리, 촉진 의무까지 근로기준법 60조를 정확히 반영하려면 엑셀로는 한계가 있습니다. 그렇다고 SaaS 솔루션을 쓰기엔 인원 수 대비 비용이 부담스럽습니다.
그래서 직접 만들었습니다. Claude Code를 사용해서, 백엔드는 구글시트, 프론트엔드는 시놀로지 NAS에 배포하는 방식으로요. 설계 방식부터 최종적으로 데모페이지까지 보실 수 있습니다.
시스템 구조 한눈에 보기
[웹 앱 / PWA]
↕
[구글 Apps Script API]
↕
[구글시트 — 직원DB / 휴가신청 / 연차잔여]
↕
[시놀로지 NAS — 정적 파일 호스팅 + Nginx]
구글시트를 DB로 쓰면 별도 서버 없이 데이터 관리가 가능합니다. 담당자가 시트를 직접 열어 확인하거나 수동 수정도 할 수 있어서 중소기업 환경에 잘 맞습니다.
핵심 기능 6가지
1. 근로기준법 60조 자동 계산
입사일 기준으로 자동 계산합니다.
- 입사 1년 미만: 매월 개근 시 1일 (최대 11일)
- 입사 1년 이상: 15일 기본, 2년마다 1일 가산 (최대 25일)
- 전년도 미사용 연차 이월 처리
- 연차 촉진 의무 알림

2. 11종 휴가 신청
| 유형 | 일수 기준 |
|---|---|
| 연차 | 잔여 일수 내 |
| 반차 | 0.5일 차감 |
| 병가 | 진단서 첨부 |
| 경조사 | 유형별 고정 |
| 출산전후휴가 | 90일 |
| 육아휴직 | 최대 1년 |
| 공가 | 별도 승인 |
| 대체휴무 | 특근 연동 |
| 무급휴가 | 별도 처리 |
| 특별휴가 | 관리자 부여 |
| 보건휴가 | 월 1일 |

3. 팀 캘린더
팀원 전체 휴가 현황을 월간 뷰로 확인합니다. 직원별 색상으로 한눈에 파악 가능합니다.

4. 승인/반려 워크플로
신청 → 팀장 1차 승인 → HR 최종 확인 → 완료. 각 단계마다 신청자에게 푸시 알림이 전송됩니다. 반려 시 사유 입력 필수입니다.

5. 푸시 알림 (PC + 모바일)
Web Push API를 사용해 윈도우, 맥, 안드로이드, iOS(iOS 16.4+) 모두 지원합니다. 구글시트 Apps Script에서 트리거를 걸어 승인 상태 변경 시 자동 발송됩니다.
6. PWA 설치
홈 화면에 추가하면 앱처럼 실행됩니다. 오프라인 캐싱으로 네트워크 불안정 환경에서도 기본 화면은 유지됩니다.
Claude Code로 만든 방식
기능 정의를 명확하게 잡은 다음, Claude Code와 함께 구조 설계부터 코드 작성까지 진행했습니다.
실제로 사용한 프롬프트 예시입니다.
근로기준법 60조 기준으로 연차를 계산하는 함수를 만들어줘.
입력값: 입사일, 기준일
출력값: 연차 일수, 월차 여부, 이월 가능 일수
엣지케이스: 입사일이 월 중간인 경우, 윤년 처리
Claude Code가 코드를 작성하면 직접 테스트하고, 문제가 있으면 다시 요청하는 방식으로 진행했습니다. 전체 개발 기간은 약 3일이었습니다.
데모 직접 확인하기
샘플 데이터로 실제 작동하는 데모를 만들어 두었습니다. 모바일에서 접속하면 PWA로 설치도 가능합니다.
시놀로지 NAS 배포 방법
완성된 프론트엔드 파일(HTML/CSS/JS)을 NAS의 Web Station으로 호스팅합니다.
/volume1/web/leave-system/
├── index.html
├── app.js
├── style.css
├── sw.js # Service Worker
└── manifest.json # PWA 설정
Nginx 가상 호스트 설정 후 도메인을 연결하면 사내 전용 URL로 접근 가능합니다. HTTPS는 Let’s Encrypt 인증서로 처리합니다.
이 방식이 맞지 않는 경우
- 직원 수 100명 이상: 구글시트 API 호출 한도(분당 300회) 문제가 생길 수 있습니다
- 인사 데이터 외부 저장 불가 정책: 구글시트는 구글 서버에 저장되므로 보안 정책 확인 필요
- 급여 연동 필요: 이 시스템은 급여 계산 기능이 없습니다
마무리
SaaS 대신 직접 구축하는 방식의 장점은 명확합니다. 회사 규정에 맞게 커스터마이징이 가능하고, 월정액 비용 없이 운영할 수 있습니다.
이 시스템은 Claude Code 기반 개발 방식으로 기획부터 배포까지 진행했습니다. 기능 정의가 명확하면 불필요한 개발 공수를 줄일 수 있어, 외주 대비 훨씬 낮은 비용으로 실제 운영 가능한 수준의 결과물을 만들 수 있습니다.
비슷한 사내 시스템이 필요하거나 구축 비용이 궁금하다면 아래로 문의해 주세요. 요구사항 정리부터 함께 도와드립니다. → 상담 문의
답글 남기기