← 모든 글

자동화 손익분기점: 몇 번 반복돼야 만들 가치가 있나

자동화가 늘 정답은 아니다. 반복 횟수·유지비용·사람 문맥까지 따지고 나서 결정한다.

자동화를 만들기로 결심할 때마다 드는 의문이 있다. 이걸 지금 짜는 게 맞나, 아니면 그냥 손으로 두 번 더 하는 게 빠른가.

막상 해보면 이 판단을 제대로 하는 팀이 드물다. 손맛 나는 스크립트를 짜는 건 재밌고, 반복 작업은 귀찮으니까 자동화 쪽으로 기울기 쉽다. 문제는 그 편향이 꽤 비싸다는 거다.

먼저 시간을 측정했어야 했는데

한 1년 전쯤, 팀에서 배포 전 헬스체크 목록을 수동으로 훑는 작업이 있었다. 총 14개 항목, 한 번에 10분. 배포가 주 2회였으니 월 80분 정도.

누군가 “이거 자동화하자”고 했고, 나는 별생각 없이 동의했다. 스크립트 짜는 데 이틀, 파이프라인에 붙이는 데 반나절, 엣지케이스 잡는 데 또 하루 — 합산 약 2.5일이 들었다. 주당 20분을 아끼기 위해 20시간을 썼다. 손익분기점은 60주, 1년 2개월이다.

그 자동화 스크립트는 8개월 뒤 인프라 개편으로 전면 폐기됐다.

xkcd 1205를 다시 읽었다

xkcd 1205 차트는 유명하다. “하루에 몇 번, 얼마나 오래 쓸 건지”로 자동화 허용 투자 시간을 표로 정리해놨다. 재밌는 건 이 차트를 아는 사람이 꽤 많은데 실제로 꺼내 확인하는 사람은 거의 없다는 점이다.

나도 그랬다. 그냥 “자주 하는 것 같은데”라는 감각으로 결정했다. 감각은 거의 항상 자동화 쪽을 과대평가한다. 왜냐면 반복 작업은 눈에 잘 띄고, 자동화 유지 비용은 눈에 잘 안 띄기 때문이다.

  • 반복 횟수: 실제로 지난 한 달 치 슬랙/티켓에서 세어본다. 기억보다 훨씬 적은 경우가 대부분이다. 우리 팀이 헬스체크를 “자주 한다”고 느꼈지만 실측해보니 월 8회였다.
  • 1회당 소요: 스톱워치로 잰다. 어림잡으면 2배 부풀려서 기억하는 경향이 있다. 10분이라고 말했던 게 실제로는 6분이었다.
  • 자동화 투자 시간: 스크립트 작성만 계산하지 않는다. 테스트·문서·온콜 연동·동료 교육까지 포함하면 체감 2~3배다. 이번 헬스체크 건에서 내가 “이틀”이라 예상한 게 실제 5일이었다.
  • 유지 수명: 이게 제일 어렵다. 인프라가 바뀌거나 요구사항이 바뀌면 자동화도 따라 죽는다. 수명을 18개월로 보수적으로 잡는 것이 안전하다.

유지 비용은 초기 비용의 절반을 더 먹는다

자동화를 만든 뒤에도 일은 끝나지 않는다. 파이프라인 의존 패키지가 올라가면 검증해야 하고, 알림이 오면 누군가 받아야 하고, 새 팀원이 오면 맥락을 설명해야 한다.

최근 Slack 알림 자동화를 하나 운영한 경험에서 보면, 초기 구축 4시간 뒤 지난 6개월간 유지에 쓴 시간이 추가로 2.5시간이었다. 단순 비율로는 크지 않아 보이지만, 이건 특별히 안정적인 케이스다. 보통은 더 나온다. 특히 외부 API 연동이 끼어있으면 유지 비용이 초기 비용의 50~80%를 추가로 잡아먹는 경우를 여러 번 봤다.

자동화 대상을 고를 때 “이 스크립트가 죽었을 때 누가 알아채는가”를 먼저 물어보는 이유가 여기에 있다. 아무도 모르게 조용히 죽어있는 자동화가 발견 안 된 버그보다 무섭다.

손으로 하는 게 이득인 경우

반복 횟수가 월 5회 이하이고 한 번에 15분 미만이면 나는 거의 자동화하지 않는다.

이유가 하나 더 있다. 손으로 하는 작업에는 사람이 개입하면서 생기는 문맥 점검이 딸려 온다. 배포 전 헬스체크를 손으로 훑을 때 “어, 이 지표 이상하다”를 사람이 캐치한다. 자동화하면 그냥 PASS 뱉고 넘어간다.

실제로 헬스체크 자동화 폐기 후 수동으로 돌아왔을 때, 첫 달에 담당자가 체크리스트 훑다가 DB 커넥션 풀 설정 오류를 잡아냈다. 스크립트는 수치 임계값만 보고 있었으니 절대 못 잡을 거였다. 자동화가 없어서 버그를 발견한 셈이다.

자동화해야 하는 경우는 반대 조건

반대로 자동화가 명확히 이득인 케이스는 조건이 좁다.

주 5회 이상 반복되고, 오류가 났을 때 사람 실수로 귀결되는 작업이다. 예를 들어 배포 후 캐시 purge를 수동으로 하다가 세 번 중 한 번꼴로 빠뜨린다면, 자동화의 ROI는 명확하다. 우리 팀 기준으로 ‘빠뜨림 재현율’이 월 2회 이상이면 자동화 검토 트리거로 삼는다.

또 하나 — 새벽 온콜이 걸리는 작업은 횟수보다 피로 비용으로 판단한다. 월 1회라도 새벽 2시에 사람을 깨우는 작업이라면, 자동화 투자 수명을 넉넉히 잡아도 이득이다. 이건 숫자보다 사람 비용의 문제다.

다음 한 가지

자동화 결정 전에 실측 5분을 먼저 — 지난 한 달 반복 횟수를 티켓에서 세고, 스톱워치로 1회 소요를 재고, 그 두 숫자가 없으면 PR을 열지 않는다.


🛒 이 글과 어울리는 추천 상품

위 링크는 쿠팡파트너스 활동의 일환이며, 일정액의 수수료를 제공받을 수 있습니다.