잡담··7 min read

꿈에서 디버깅을 하고 있었다

새벽에 깨서 노트북을 켜고 코드를 확인한 이야기

새벽 3시 47분에 눈이 떠졌다

꿈을 꿨다. 꿈에서 나는 회사 모니터 앞에 앉아 있었다. 화면에 빨간 에러 메시지가 떠 있었다. TypeError: Cannot read properties of undefined (reading 'map'). 이 에러를 고치려고 콘솔을 열고 데이터를 확인하는데, 데이터가 자꾸 바뀌었다. 배열이었다가 null이었다가 숫자가 됐다. 꿈이니까 당연히 비논리적인데, 꿈속의 나는 진지하게 디버깅하고 있었다.

눈이 떠졌다. 새벽 3시 47분. "잠깐, 그 에러 진짜 있지 않나?" 하는 생각이 들었다. 어제 퇴근 전에 PR을 올렸는데, edge case를 안 처리한 것 같은 불안감이 밀려왔다.

노트북을 켰다

이불 속에서 5분을 고민했다. "내일 출근해서 확인하면 되지." 근데 잠이 안 왔다. 불안해서. 결국 노트북을 켜고 코드를 열었다.

const items = data?.results?.map(item => item.name);

이 줄이었다. data?.results까지는 옵셔널 체이닝을 썼는데, results가 빈 배열이 아니라 undefined인 경우를 생각 안 했다. API가 결과가 없으면 results 키 자체를 안 보내는 경우가 있다. 꿈에서 본 에러가 맞았다. (정확히 같은 에러는 아니지만 비슷한 문제였다.)

수정은 간단했다. data?.results?.map(...)?? []를 붙이거나, 위에서 분기 처리를 하면 된다. 3분 만에 고쳤다.

근데 이걸 새벽 3시 47분에 할 일이었냐 하면 아니다.

이런 일이 처음이 아니다

돌아보면 꿈에서 코딩을 한 적이 꽤 있다.

사건 1. 3년 차 때 대규모 리팩토링을 하던 시기. 꿈에서 git merge conflict를 해결하고 있었다. 끝없이 충돌이 나는데 해결해도 해결해도 새 충돌이 생기는 악몽. 땀을 흘리면서 깼다.

사건 2. 배포 전날 밤. 꿈에서 프로덕션 서버가 다운되는 걸 봤다. 대시보드에 빨간 그래프가 치솟는 장면. 다음 날 배포는 문제없이 됐다. 꿈은 그냥 불안이었다.

사건 3. 이번 건. 꿈에서 본 에러가 실제로 있었던 유일한 경우.

왜 꿈에서 코딩을 하는 걸까

심리학적으로 꿈은 낮에 처리하지 못한 정보를 뇌가 정리하는 과정이라고 한다. 개발자는 낮에 코드를 계속 생각하니까 꿈에서도 나오는 게 자연스럽다고 볼 수 있다.

근데 문제는 꿈에서까지 코딩하면 뇌가 쉬는 시간이 없다는 거다. 자면서도 일하고 있는 거잖아. 수면의 질이 안 좋을 수밖에 없다.

동료한테 물어봤더니 "나도 그런 적 있다"는 사람이 6명 중에 4명이었다. 생각보다 많다. 한 동료는 "꿈에서 정규표현식을 쓰고 있었다"고 했는데 그건 좀 무섭다.

이건 번아웃의 신호일 수도 있다

새벽에 깨서 코드를 확인하는 건 정상이 아니다. 이걸 "열정적이다"고 포장하면 안 된다. 퇴근 후에도 일 생각을 못 놓는 건 경계가 무너진 거다.

최근에 야근이 좀 잦았다. 배포 일정이 빡빡해서 주 3회는 9시까지 남았다. 이 시기에 꿈에서 코딩을 하는 빈도가 높아진 것 같다. 상관관계가 있다고 보는 게 맞겠다.

시도하고 있는 것들

퇴근 후에 코드를 안 보려고 노력 중이다. 슬랙 알림을 퇴근 후에 끈다. (근데 가끔 켜본다. 습관이 안 고쳐진다.) 잠들기 전에 기술 관련 콘텐츠를 안 보려고 한다. 유튜브 알고리즘이 코딩 영상을 추천하는데 이걸 넘기는 게 어렵다.

가장 효과가 있는 건 잠들기 전에 소설을 읽는 거다. 킨들로 소설을 20분 정도 읽으면 뇌가 코드 모드에서 이야기 모드로 전환된다. 그날 밤은 꿈에서 코딩을 안 하는 확률이 높다. (체감이라 데이터는 없다.)

그래서 그 PR은

다음 날 출근해서 PR을 업데이트했다. 수정 커밋을 하나 추가. 코드 리뷰에서 아무도 그 부분을 지적하지 않았다. 내가 새벽에 안 고쳤으면 머지됐을 수도 있다.

근데 꿈이 알려줬으니까 고친 거다. 이걸 감사해야 하나, 걱정해야 하나. 둘 다인 것 같다.

오늘은 금요일이다. 주말에는 등산을 가기로 했다. 등산하는 날은 꿈에서 코딩을 안 하더라. 몸이 피곤하면 뇌가 다른 걸 생각할 여유가 없나 보다.

관련 글