교육 수료증 자동 발송

자동 메일 발송 소개

수료자120명에게 한번에 메일을 보낼 수 있는 자동 메일 발송 기능을 완성했다. 본래는 120명 개개인별로 다른 메일을 반복해서 보냈어야했는데, 일정한 로직을 설정하고 한 번에 송부한다면 작업량이 많이 줄어들 것이라 생각하여 진행했다.

SMTP 문제를 극복한 자동화

— 120명 수료증 이메일 발송 시스템 구축기

120명의 수료자에게
이름이 다른 수료증 PDF를
각자의 이메일로
한 번에 정확히 보내야 했다.

처음에는 이게 단순한 메일 발송 문제라고 생각했다.
하지만 이 작업은 곧 행정 시스템 구축에 가까운 일이 되었다.


엑셀과 PDF를 활용한 자동화 시작

문제는 간단했다.

  • 수료자 명단이 Excel에 있다

  • 수료증이 PDF 파일로 있다

  • 각 사람의 이메일 주소도 있다

그럼 이렇게 하면 될 것 같았다.

Excel → 이름 찾기 → PDF 첨부 → 메일 발송

그래서 Node.js + nodemailer + xlsx로 자동 발송 시스템을 설계했다.
엑셀의 이름, 생년월일, 이메일을 읽고,
이름_생년월일.pdf 파일을 찾아 첨부해서 메일을 보내는 구조였다.

논리적으로는 완벽했다.


SMTP 인증 문제와 해결책

문제는 메일 서버였다.

회사 공식 메일은 네이버웍스(Naver Works)를 사용하고 있었고,
나는 당연히 SMTP로 연결해서 발송하면 된다고 생각했다.

그런데…

  • SMTP 서버 주소도 맞았고

  • 포트도 맞았고

  • 계정과 비밀번호도 맞았는데

인증이 계속 실패했다.

조사해보니 원인은 명확했다.

네이버웍스는
관리자 권한이 없는 계정에게
SMTP 사용을 막아둔다.

나는 관리자가 아니었고,
IT팀에 권한 요청도 할 수 없는 상황이었다.

기술적으로 맞는 설계가, 조직 구조 때문에 막힌 순간이었다.


메일 서버 변경으로 문제 해결

여기서 많은 자동화 프로젝트가 멈춘다.

“회사 메일로 안 되면 못 하는 거 아닌가요?”

하지만 나는 접근을 바꿨다.

“메일 계정이 문제지,
자동화 구조가 문제는 아니다.”

그래서:

  • 네이버웍스 SMTP → ❌

  • 개인 네이버 메일 / Gmail SMTP → ⭕

로 발송 경로만 바꾸고,
자동화 구조는 그대로 유지했다.

수신자 입장에서는

누가 보냈느냐보다
정확히, 빠르게, 누락 없이 받았느냐가 더 중요했다.


완성된 자동 메일 발송 시스템

결과적으로 나는 다음을 구현했다.

  1. Excel 파일을 지정한다

  2. 수료증 PDF 폴더를 지정한다

  3. 이메일 제목과 본문을 입력한다

  4. 실행 버튼을 누른다

그러면 시스템이:

  • Excel을 읽고

  • 각 수료자의 PDF를 찾아서

  • 이메일을 자동 생성하고

  • 120명에게 개별 발송하며

  • 성공/실패를 로그로 남긴다

사람이 할 일은 클릭 한 번뿐이었다.


프로젝트에서 배운 점

이 프로젝트는 단순한 이메일 자동화가 아니었다.

내가 얻은 가장 큰 교훈은 이것이다.

자동화의 적은 기술이 아니라,
조직과 권한이다.

네이버웍스 SMTP 문제는 코드의 문제가 아니었고,
회사 내부 IT 정책의 문제였다.

하지만 진짜 자동화 설계자는
“막히면 끝”이 아니라

“그럼 다른 경로로 간다”

라고 생각해야 한다는 걸 이 프로젝트로 배웠다.


자동화 사례의 중요성

이 시스템은 수료증뿐 아니라:

  • 계약서 발송

  • 리포트 배포

  • 고객 맞춤 자료 전달

  • 교육 자료 배포

같은 모든 행정 업무에 그대로 적용할 수 있다.

그리고 이 모든 것이:

엑셀 + 파일 + 메일
이라는 현실적인 재료만으로
완전 자동화될 수 있다는 것을 증명했다.

검은색 화면이 표시된 컴퓨터의 스크린샷

바로가기 아이콘으로 만들어서 cmd로 자동 발송 가능하게끔 만들었다.

파일 읽기와 SMTP연결에 성공하고, 뒤이어 메일 생성 및 발송에도 성공한 모습.

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요