Project
사내 주차등록 자동화
슬랙 요청 접수부터 관리자 웹사이트 자동 조작, 결과 회신까지 전 과정을 연결한 end-to-end 주차등록 RPA 시스템입니다.
Details
Tags

단순해 보이는 업무가 자동화하기에 꼭 단순하지는 않습니다. 주차등록은 "관리자 페이지에 들어가서 차량번호를 입력하고 저장"하면 끝이지만, 요청을 받고, 실행하고, 결과를 알려주는 전체 루프를 사람 없이 돌리려면 꽤 많은 것이 필요했습니다.
배경
구성원이 주차등록을 요청하면 담당자가 외부 관리자 페이지에 접속해서 수작업으로 등록했습니다. 건수가 적으면 괜찮지만 월초나 차량 변경이 몰리는 시기에는 처리가 밀렸고, 등록 누락이 간혹 발생했습니다. 관리자 페이지에는 API가 없어서 화면 조작 외에는 방법이 없었습니다.
설계 포인트
Slack에서 요청을 접수하면, Google Sheets에 대기열이 쌓이고, Playwright라는 브라우저 자동화 도구가 관리자 웹사이트의 UI를 자동 조작해서 등록을 처리한 뒤, 결과를 다시 Slack으로 회신하는 구조입니다. 요청 접수, 실행, 결과 통보를 하나의 흐름으로 묶어서 담당자가 개입할 일을 최소화했습니다.
Docker 기반으로 서버 환경을 표준화하고, CI/CD 파이프라인까지 구성해서 코드 변경 시 자동 배포되도록 만들었습니다. 단순 스크립트 수준에서 출발했지만, 안정적으로 운영하려면 배포와 모니터링까지 갖춰야 했습니다.
결과
기술적으로는 브라우저 자동화에 서버 운영과 배포 파이프라인까지 연결한, 범위가 넓은 프로젝트였습니다. "요청부터 완료까지 사람이 빠져도 되는 루프"를 처음으로 구성한 사례이기도 합니다. API 없는 외부 시스템과의 연동이라는 제약 안에서 현실적인 RPA를 설계하는 경험을 쌓은 프로젝트입니다.