설명: 빨간 로그가 수백 줄이라고 고장이 수백 건인 것은 아니다. 오류가 연달아 발생하는 구조와 확인 순서, 재실행의 함정, AI 개발 시대의 야근 문제를 살펴본다.
코드 수정이 끝났다. 자동 빌드만 통과하면 퇴근이다. 그런데 화면이 빨갛게 변하고 오류가 끝없이 쏟아진다. 퇴근 직전에 컴퓨터가 혼자 추리 드라마를 시작한 셈이다.
오류 메시지 100개가 서로 다른 원인 100개를 뜻하는 것은 아니다. 설정 파일 하나를 읽지 못해서 뒤의 파일을 만들지 못하고, 여러 작업과 테스트가 이어서 실패할 수 있다.
한 사람이 열쇠를 잃어버렸는데 가족 모두가 난리
가상의 예를 들어 보자. 첫 단계에서 설정 파일을 찾지 못하고, 다음 단계는 만들어지지 않은 결과를 기다리고, 테스트 여러 개가 차례로 실패한다. 화면은 온통 오류지만 고쳐야 할 곳은 한 군데일 수도 있다.
집 열쇠 하나를 잃어버렸더니 가족 채팅방에 메시지가 100개 쌓이는 것과 비슷하다. 답장하는 것보다 열쇠부터 찾는 편이 빠르다.
단, 제일 먼저 보인 빨간 줄이 반드시 원인인 것은 아니다. 그 앞의 경고가 중요할 수도 있고, 동시에 실행한 여러 작업이 각자 다른 이유로 실패할 수도 있다. 어떤 단계에서 필요한 결과가 처음 사라졌는지 연결해서 봐야 한다.
로그를 읽을 때 첫 번째로 할 일
먼저 실제로 실패한 작업과 단계를 찾는다. 그 뒤의 문제를 설명할 만한 설정 오류, 빠진 부품, 만들어지지 않은 파일, 예상과 다른 테스트 결과를 살펴본다.
같은 코드를 다시 실행했을 때 가끔 통과한다면 실행 순서, 네트워크, 외부 서비스, 불안정한 테스트를 의심할 수 있다. 한 번 통과했다고 수리가 끝난 것은 아니다. 원인 후보를 하나씩 고치고 해당 버전으로 확인한다. 로그를 남에게 보내거나 AI에 입력할 때 비밀번호와 비밀키는 가린다.
CircleCI는 실패 단계를 요약하는 'circleci run get --failure-report '를 공식 문서에 소개한다. 실패한 작업만 재실행하는 기능도 있다. 하지만 코드가 잘못됐다면 재실행 버튼을 누르는 것만으로 해결되지는 않는다.
AI가 코딩을 빨리하면 퇴근도 빨라질까?
AI로 변경을 10분 만에 만들었어도 빌드 오류를 찾아 고치는 데 45분이 걸리면 모두 55분이다. 실제 통계가 아닌 가정이지만 코드 작성 속도와 완성 속도는 다르다는 점을 보여 준다.
식당 주방이 열 배 빨라졌는데 계산대는 하나라면 줄은 출구로 옮겨 간다. 프로그램에서도 빌드와 검사, 복구가 그 계산대가 될 수 있다.
구글 DORA의 2025년 연구는 AI 사용과 소프트웨어 배포량 사이에는 긍정적인 관계를, 배포 안정성과는 부정적인 관계를 보고했다. AI가 야근을 유발한다는 인과관계를 증명한 결과는 아니다. 변경을 작게 나누고 빠르게 검증하는 일이 더 중요해진다는 시사점이 있다.
야근 시간을 줄이려면 무엇을 측정할까
하루 세 번 실패하고 매번 25분을 쓴다면 20일 동안 25시간이다. 업계 평균이 아니라 설명용 계산이다. 실제로는 실패 횟수, 성공까지의 복구 시간, 같은 원인의 반복, 수정 없이 재실행해서 통과한 경우를 측정하면 좋다.
무리한 일정, 잦은 요구 변경, 인력 부족도 야근의 이유다. 빌드 실패는 언제 끝날지 모르기 때문에 특히 골치 아프다. 빨간 메시지 100개를 다 고치는 게 아니라 진짜 범인 한 명을 찾는 시간, 그 시간을 줄여야 추리극이 끝난다.
출처:
