20대에는 체력이 무한한 줄 알았다. 새벽 3시까지 코딩하고 다음 날 출근해도 버텼다. 주말에 몰아서 자면 회복됐다. 운동은 안 해도 별문제 없었다.
30대가 되니 달라졌다. 오후 3시만 되면 집중력이 뚝 떨어진다. 목이 뻣뻣하고, 허리가 뻐근하고, 눈이 뻑뻑하다. 코드를 한 시간 집중해서 보면 피로가 훅 온다. 20대 때는 몰랐던 종류의 피로다.
앉아 있는 시간의 문제
개발자는 하루 평균 8~10시간을 앉아 있는다. WHO가 "앉아 있는 시간이 긴 사람은 심혈관 질환, 당뇨 위험이 높아진다"고 경고하는 그 카테고리에 정확히 들어간다.
그런데 가장 먼저 체감하는 건 질병이 아니라 생산성 저하다. 몸이 뻣뻣해지면 머리도 뻣뻣해진다. 허리가 아프면 코드에 집중이 안 된다. 체력은 건강 문제이기 이전에 생산성 문제다.
운동: 거창하지 않아도 된다
헬스장 등록 → 한 달 다니다 → 그만두기. 이 사이클을 세 번 반복하고 나서 깨달았다. 거창한 루틴은 오래 못 간다.
지금 하고 있는 건 단순하다:
아침 산책 20분. 출근 전에 동네를 한 바퀴 돈다. 이게 의외로 효과가 크다. 햇빛을 쬐면 세로토닌이 올라간다는 과학적 근거를 떠나서, 아침에 밖을 걸으면 머리가 깨끗해지는 느낌이 있다. 코딩 문제에 대한 아이디어가 산책 중에 떠오를 때가 많다.
점심 후 10분 걷기. 점심을 먹고 바로 자리에 앉으면 졸리다. 10분만 걸으면 오후 집중력이 확연히 다르다.
주 2~3회 간단한 근력 운동. 집에서 스쿼트, 푸시업, 플랭크. 20분이면 끝난다. 헬스장까지 가고 오는 시간, 옷 갈아입는 시간을 합치면 2시간인데, 집에서 하면 20분이다. 지속 가능하다.
자세와 환경
의자와 모니터 높이를 조절하는 게 생각보다 중요했다.
모니터 높이. 눈높이와 모니터 상단이 같은 높이에 오도록 모니터 암으로 조절했다. 이전에는 모니터를 내려다보는 자세였는데, 그게 목 통증의 원인이었다.
50분 작업, 10분 휴식. 뽀모도로 기법을 쓰고 있다. 50분 동안 집중하고, 10분 동안 일어나서 스트레칭한다. 처음에는 흐름이 끊길까 걱정했는데, 오히려 50분을 더 집중하게 된다. 무한정 앉아 있으면 2시간째부터 집중력이 급격히 떨어지는데, 10분 쉬고 돌아오면 리셋된다.
눈 관리. 20-20-20 규칙. 20분마다 20피트(6미터) 떨어진 곳을 20초간 바라본다. 솔직히 매번 지키지는 못하지만, 의식적으로 시선을 돌리는 것만으로도 눈 피로가 줄었다. 블루라이트 차단 안경보다 이게 더 효과적이었다.
수면
생산성을 올리는 가장 확실한 방법은 잘 자는 거다. 7시간 자고 8시간 일하는 게, 5시간 자고 10시간 일하는 것보다 산출물이 많다. 수면이 부족하면 코드 품질이 떨어지고, 버그를 만들고, 디버깅에 더 오래 걸린다.
밤 11시에 핸드폰을 내려놓는 습관을 들였다. 처음에는 힘들었는데, 2주 정도 지나니 익숙해졌다. 잠들기 전 SNS를 보는 대신 책을 읽는다.
카페인은 오후 2시 이후로 끊었다. 예전에는 오후 4시 커피를 당연하게 마셨는데, 이걸 끊으니 수면 질이 달라졌다.
건강을 투자로 보기
개발자 커리어는 마라톤이다. 20년, 30년 일해야 한다. 체력이 바닥나면 아무리 실력이 좋아도 지속할 수 없다.
건강 관리를 시간 낭비라고 생각했던 적이 있다. 그 시간에 코딩을 더 하면 성장이 빠를 거라고. 그런데 건강한 상태에서 6시간 집중하는 게, 피곤한 상태에서 10시간 버티는 것보다 낫다는 걸 체감하고 나서는 생각이 바뀌었다.
운동하고, 잘 자고, 제대로 먹는 건 뺄 수 있는 옵션이 아니라 장기 생산성을 위한 투자다. 30대가 돼서야 이걸 알았다는 게 좀 아깝지만, 40대에 알게 되는 것보다는 낫다.
