그린 파인애플님의 블로그
[ERP 구축기 #08] 엑셀과 전화로 관리하던 기술인 교육관리를 알림 발송으로 자동화하기 본문
⚠️ 수백 명의 교육일정을 Excel로 관리하고 있었다
업무 인터뷰를 진행하면서 생각보다 큰 개선 포인트 하나를 발견했다.
건설업에서는 기술인들이 일정 주기마다 필요한 교육을 이수해야 한다. 3년 주기의 교육부터 기술사 교육, 진급에 필요한 교육 등 관리해야 하는 교육의 종류도 다양했다.
문제는 수백 명에 이르는 기술인의 교육 이수 여부와 교육 예정일을 Excel로 관리하고 있었다는 점이었다.
교육 기한이 다가오면 담당자가 대상자를 확인하고 메신저나 전화로 일일이 안내하고 있었다.
"OOO 교육을 OO 홈페이지에서 신청해서 XX까지 이수하셔야 합니다."
업계 특성상 연령대가 높기에 한 번 안내한다고 끝나는 것도 아니었다. 신청 방법을 다시 물어보거나 대신 신청해 달라는 요청, 알겠다고만 하고 실제로 신청을 늦게하여 기한이 초과되는등의 사례도 있어 담당자는 기존 업무를 처리하면서 같은 안내를 계속 반복해야 했다.
더 큰 문제는 필요한 교육을 이수하지 않으면 프로젝트 참여에 영향을 줄 수 있다는 점이었다.
그래서 이번 ERP 구축에서는 교육 대상자를 시스템에서 관리하고 교육 시점이 다가오면 담당자가 쉽게 확인하여 대상자에게 알림을 발송할 수 있도록 개선하기로 했다.

📌 교육 대상자를 놓치지 않도록 관리하기
교육 대상자와 이수 기한을 시스템에서 관리하고, 교육 예정일이 가까워진 기술인은 Grid에서 바로 확인할 수 있도록 하이라이팅했다.
초기엔 배치로 1주마다 자동 확인하여 대상자에게 알림을 발송하려고 했으나, 현재 만들고 있는 시스템은 기존 ERP에서 분리된 시스템이기도 하고, PQ업무 담당자가 인사담당자가 아니기에 현재 수백명이나 되는 기술인의 인사정보의 퇴사 데이터를 정확하게 관리하는데 한계가 있었기에 오발송되는 사례를 없애기위해 자동발송 기능은 추후에 고려하기로 했으며
1차적으로는 LMS, 카카오 알림톡 발송은 완전 자동화하지 않고 담당자가 대상자와 내용을 확인한 뒤 발송하는 방식으로 구성했다.
반복적으로 사용하는 안내 문구는 템플릿으로 관리하고, 필요한 경우 담당자가 직접 내용을 작성하여 LMS 또는 카카오 알림톡으로 발송할 수 있도록 했다.
*추후 인사정보 연계가 가능하다면 입/퇴사자 정보, 교육 이력관리를 자동화 할수 있도록 하려고 하며, 대상자를 추출하여 교육관리 담당자에게 자동 수신될수 있게 메일 발송기능을 추가하려고 한다
알림 발송을 위해 전화번호를 사용하기 때문에 개인정보 접근 권한은 업무 담당자에게만 부여하도록 구성했다.
실제 운영 전에는 전화번호의 수집·이용 목적과 보유 근거, 알림 발송을 위한 이용 범위 등을 회사의 개인정보 처리 기준에 따라 검토할 예정이다.

🔐 중요 개인정보는 암호화
전화번호는 개인정보 보호를 위해 암호화 키는 백엔드 yaml에 작성, DB와 분리하여 관리하도록 했고,
DB 저장 시 AES256-GCM 방식으로 암호화하도록 구성했다.
GCM은 암호화와 함께 데이터의 무결성을 검증할 수 있는 인증 기능을 제공하기 때문에 개인정보 암호화 방식으로 선택했다.
*쿠버네티스에서 secret 키값을 주입받아 사용할수 있으므로 차후에 시도해보려고 한다


대상자에게 발송시 아래와 같이 템플릿/수기 입력이 가능하도록 개발을 했다


알림발송 기능을 구현하면서 단순히 메시지를 발송하는 것만으로는 업무가 끝나지 않는다는 점도 고려했다.
잘못된 전화번호나 외부 메시징 서비스의 오류 등으로 발송이 실패할 수 있기 때문에 발송 요청 결과를 별도로 저장하도록 했다.
담당자는 발송 이력 화면에서 발송 성공/실패 여부와 실패 사유를 확인할 수 있으며, 실패한 대상자만 선택하여 다시 발송할 수 있도록 구성했다.

📚 개발하면서 느낀 점
업무 인터뷰를 처음 진행했을 때 교육 이수관리는 불편하지만 엑셀로도 진행이 가능은 하기에 중요한 기능으로 언급되지는 않았다.
하지만 실제 업무를 자세히 들어보니 Excel에서 대상자를 찾고, 교육 기한을 확인하고, 전화나 메신저로 같은 내용을 반복해서 안내하는 데 상당한 시간이 사용되고 있었다.
인사정보 데이터가 실시간으로 정확하게 보장되지 않는 상태에서 시스템이 모든 과정을 대신하도록 완전히 자동화하기보다는 교육 대상자를 자동으로 찾아주고, 담당자가 확인한 뒤 쉽게 알림을 보낼 수 있도록 만드는 것만으로도 반복 업무를 크게 줄일 수 있다고 판단했다.
이번 기능을 개발하면서 ERP의 업무 개선은 거창한 기능을 추가하는 것보다 “귀찮지만 누군가는 계속 관리하는 일”을 찾아 줄여주는 것에서 시작할 수도 있다는 점을 다시 느꼈다.
'개발 > [ERP] 풀스택 AI개발' 카테고리의 다른 글
| [ERP 구축기 #10] 경력증명서 입력만 몇 시간? PDF 파싱으로 DB 입력 자동화하기 (0) | 2026.09.15 |
|---|---|
| [ERP 구축기 #09] Redis 캐싱 대체용으로 적용한 Valkey (0) | 2026.09.14 |
| [ERP 구축기 #07] 양식이 제각각인 HWPX 문서를 자동 생성해 비용 절감하기 (0) | 2026.09.04 |
| [ERP 구축기 #06] 반복되는 API 호출 줄이기 - Redis와 React Query 캐싱 (0) | 2026.08.28 |
| [ERP 구축기 #05] 메뉴 숨김만으로 충분할까? ERP의 RBAC 권한 설계 (0) | 2026.08.28 |
