
형광등은 이미 오래전에 꺼졌지만, 내 눈에는 모니터 불빛이 선명했다. 회사 iMac에 원격으로 접속해 화면을 띄운 내 방 모니터에는, 며칠 밤낮을 씨름하며 작성한 코드로 만들어낸 그래프가 파도처럼 일렁이고 있었다. 입사 후 줄곧 나를 괴롭혔던 레거시 시스템의 병목, 그 누구도 명확한 원인을 찾아내지 못했던 느린 응답 속도의 주범을 드디어 시각화해 낸 순간이었다. 화면에 찍히는 숫자를 확인하며, 나는 온몸에 퍼지는 짜릿한 전율을 느꼈다.
이 ‘짜릿함’이야말로 요즘의 나를 움직이게 하는 유일한 연료였다. 며칠간 나를 막아섰던 거대한 벽이 무너지고, 복잡하게 얽힌 문제의 실타래가 마침내 풀리는 그 순간의 희열. 그것은 지독한 좌절의 시간에 대한 가장 달콤한 보상이었다. 나는 그 희열에 중독되어 있었다.
회사에서 일을 시작한 지 어느새 7개월이 지난 시점이었다. 나는 회사의 모니터링 시스템을 구축하거나, 구식 시스템을 유지보수 가능한 현대적인 구조로 바꾸는 프로젝트를 맡아왔다.
당시 내가 속한 조직은 전형적인 개발 조직과는 거리가 있었다. 개발 업무가 필요했지만, 이를 전담하거나 체계적으로 운영할 개발팀은 없었다. 코드 리뷰는 존재하지 않았고, 배포는 각자의 로컬 환경에서 수동으로 이루어졌다. 장애가 발생해도 원인을 추적할 시스템이 없어, 개발자 개개인의 감과 경험에 의존해 로그 파일을 뒤지는 것이 일상이었다. 말 그대로 ‘기술 황무지’에 가까웠다.
하지만 역설적으로, 그런 환경은 나에게 끝없는 기회의 땅처럼 보였다. 처음에는 주어진 일만 했다. 그러나 시스템을 들여다볼수록 개선할 점이 눈에 띄었다. 느리지만 모두가 불편을 감수하고 사용하던 시스템, 고장 나지 않으면 굳이 손대지 않던 구조들. 누군가는 ‘원래 그런 것’이라며 넘기던 것들이 내 눈에는 고쳐야 할 문제로 보였다.
‘내가 조금 더 손을 보면, 모두가 편해지지 않을까?’
그 생각은 자연스럽게 내 업무의 범위를 넓혀갔다. 내가 아니면 이 문제를 해결할 사람이 없다는 묘한 책임감, 그리고 이 황무지를 내 손으로 바꾸겠다는 주니어의 객기가 뒤섞였다. 그렇게 나는 회사 iMac에 원격 시스템을 구축해 놓고, 퇴근 후 집에서도 작업을 이어갔다. 주말과 평일의 구분은 의미가 없었다. 내게 주어진 시간의 대부분을 코드와 로그를 분석하며 보냈다. 일이 곧 삶이었고, 매일은 작업의 연속이었다.
그래도 힘들지 않았다. 오히려 즐거웠다. 엉켜 있던 버그를 해결하고, 불필요하게 느렸던 응답 속도를 눈에 띄게 개선했을 때, 그렇게 내가 만든 변화가 숫자로 드러나는 순간이 짜릿했다. 몇 초씩 걸리던 화면이 빠르게 떠오르고, 시스템이 눈에 띄게 가벼워질 때마다 내 코드가 실제로 세상에 영향을 미친다는 생각이 들었다. 마치 지저분한 방을 완벽하게 정리정돈했을 때의 쾌감과도 같았다.
코딩은 내가 혼돈 속에서 질서를 찾는 행위였고, 그 질서가 주는 통제감은 달콤했다. 매일 밤, 그 순간을 위해 모니터 앞에 앉는 일이 당연해졌다. 목표를 이뤘다는 성취감, 기대한 결과를 만들어가는 과정 자체가 삶의 동력이 되었다.
그렇게 몇 달간 내 일상은 일로만 채워지고 있었다. 주변 동료들은 퇴근 후 운동하거나, 저녁 약속을 잡거나, 새로운 취미를 시작했다. 하지만 나는 늘 원격으로 회사 시스템에 접속해 있었다. 누군가 ‘그렇게까지 해야 하냐’라고 물으면, ‘내 선택’이라고 대답했다. 일하는 시간이 곧 내 성장의 시간이라고 믿었기 때문이었다.
그러던 어느 날, 오랜만에 여자친구와 저녁을 먹는 자리였다. 분위기 좋은 식당에 마주 앉아 있었지만, 내 머릿속은 온통 낮에 발생한 간헐적인 에러의 원인을 추적하는 것으로 가득했다. 그녀가 오늘 있었던 일을 신나게 이야기해도, 나는 기계적으로 고개만 끄덕이며 머릿속으로 문제의 원인을 훑었다.
문득, 그녀가 말을 멈추고 나를 바라봤다. “내 얘기 듣고 있어?”
그 순간 정신이 번쩍 들었다. 그녀는 곧 자신의 삼촌 이야기를 꺼냈다. 업계 경력이 오래된 시니어 개발자라고 했다. 삼촌은 오랜 시간 높은 업무 강도에 시달리며, 일과 삶의 경계가 거의 사라진 채 살아가고 있었다.
“최근 네 모습을 보면 자꾸 삼촌 생각이 나.”
그녀가 말했다. 퇴근 후에도 일을 놓지 못하고, 주말에도 시스템을 들여다보며 시간을 보내는 내 모습. 함께 있으면서도 온전히 함께 있지 못한 내 모습이, 일에 잠식되어 버린 그와 겹쳐 보였다는 것이다. 그 말은 마치 거울처럼, 내가 애써 외면하던 내 모습을 비췄다.
나는 그 이야기를 듣고 나서야, 내가 그렇게 살아가고 있다는 사실을 자각했다. 관계는 정보 전달 수준으로 단순해졌고, 중요한 순간들을 ‘잠깐, 이것만 확인하고’라는 말로 미뤄왔다. 회사 안에서도, 집에서도, 나는 늘 ‘이거 하나만 더’라는 생각으로 일에 모든 시간을 쏟고 있었다. 개인의 성장을 우선시하는 과정에서, 일 외의 요소들은 자연스럽게 배제했다. 나는 ‘일 잘하는 개발자’가 되려고, 동시에 ‘곁에 없는 사람’, ‘대화하기 재미없는 사람’이 되어가고 있었다.
여자친구와의 대화로 내 삶의 균형이 무너지고 있다는 사실을 자각했지만, 그걸 인정한다고 해서 당장 뭔가를 바꾸고 싶지는 않았다. 그때의 나는 여전히 일에 몰두하고 싶었다.
두려웠기 때문이다. 일을 줄이면 성장이 멈출 것만 같았다. 잠시 손을 놓는 사이 무언가 중요한 것을 놓칠까 불안했다. 내가 쉬는 이 순간에도 다른 주니어 개발자들은 무섭게 치고 나가는 듯했다. SNS에는 ‘1일 1커밋 달성’, ‘주말 스터디에서 새로운 프레임워크 적용 완료’ 같은 동기들의 포스트가 넘쳐났다. 그들의 속도를 따라가지 못하면, 이 레거시 시스템 안에서 나도 도태될 것이라는 공포가 밀려왔다.
더 근본적인 공포는 정체성의 위기에서 나왔다. ‘일’을 뺀 ‘나’는 과연 누구일까. 코딩하지 않는 시간에는 무엇을 해야 할지 막막했다. 당시 내 정체성의 90%는 ‘개발자’였고, 그 정체성을 지탱하는 것은 ‘일’과 ‘성장’이었다. 일을 멈춘다는 것은 곧 ‘나’라는 존재의 의미가 흐려지는 것으로 다가왔다.
그렇게 휴식은 ‘일을 하지 않는 시간’이 아니라, ‘일을 하면 안 된다는 죄책감과 싸우는 시간’이 되었다. 텅 빈 시간, 그 공허함을 마주할 용기가 없었다. 차라리 코딩이 더 쉬웠다. 문제는 명확했고, 피드백은 즉각적이었으며, 해결했을 때의 보상은 확실했다. 하지만 삶과 관계의 문제는 모호했고, 피드백은 느렸으며, 노력한다고 해서 반드시 좋은 결과로 돌아오지도 않았다.
하지만 곰곰이 생각해 보니, 내가 두려워한 것은 성장의 멈춤이 아니었다. 어쩌면 일을 내려놓았을 때 남는, 내 삶의 진짜 모습을 마주하기 두려웠던 것 같다.
솔직히 말하면, 글을 쓰는 지금도 그 답은 잘 모른다. 여전히 일은 내게 큰 의미다. 하지만 그래도 그 대화를 시작으로 나는 ‘일 외의 나’를 생각하기 시작했다.
그렇게 몇 가지 작은 시도를 해보기로 했다. 단순히 내 삶의 균형을 위해서라기보다, 그동안 내가 미뤄왔던 주변 사람들을 위해서였다. 특히 내 곁에서 오랫동안 기다려준 여자친구를 위해서라도, 내가 조금은 달라져야겠다는 생각이 들었다.
업무 시간이 끝나면 노트북을 닫고, 퇴근 후에는 의식적으로 코드를 열지 않으려 했다. 친구와의 약속을 미루지 않고, 여자친구와의 대화에 조금 더 집중하려 했다. 주말마다 켜두던 원격 접속 프로그램도 한 번씩 꺼두기로 했다. 그 시간에 내가 놓치고 있었던 것들을 다시 돌아보고 싶었다.
물론 쉽지 않았다. 일을 하지 않는 시간에도 ‘지금 이 시간에 코드를 보면 더 성장할 텐데’라는 생각이 습관처럼 떠올랐다. 저녁 식사 자리에서도 머릿속 한편으로는 풀지 못한 버그를 디버깅했다. 친구들과 가진 오랜만의 모임에서는 다들 요즘 유행하는 드라마나 최근 다녀온 여행 이야기를 하는데, 나는 낄 수가 없었다. 내 머릿속의 유일한 화제는 ‘새로 도입한 모니터링 툴’이나 ‘리팩토링의 필요성’ 같은 것들뿐이었다. 내 사회적 근육이 완전히 퇴화해 버린 듯한 낯섦과 어색함이 밀려왔다. 일을 줄인다고 해서 마음까지 금방 여유로워지지는 않았다. 오히려 일을 하지 않는 시간을 견디는 것이 더 큰 고역이었다.
하지만 그렇게 만든 시간에 조금씩, 나를 둘러싼 다른 것들이 눈에 들어오기 시작했다. 계절이 바뀌는 풍경, 함께 시간을 보내는 사람들의 웃음소리, 나를 기다려주는 누군가들, 그리고 내 삶의 다른 영역들.
무엇보다, 나는 일을 내려놓는 게 생각만큼 쉽지 않다는 걸 깨달았다. 여전히 마음 한편에는 불안이 남아 있었다. 내가 코드를 보지 않는 동안 무언가 놓치고 있는 건 아닐까, 남들보다 뒤처지는 건 아닐까 하는 생각이 쉽게 사라지지 않았다. 그럼에도 하루이틀 성장이 더디다고 해서 나라는 사람이 바뀌는 건 아니라는 사실은 분명히 알 수 있었다. 그렇기에 불안을 안고서라도, 삶의 다른 부분들을 조금 더 들여다볼 필요가 있다고 느꼈다.
그런 불안과 작은 시도들을 거쳐 나는 점점 생각을 키웠다. 일과 삶, 둘 중 하나를 포기하지 않아도 된다는 것. 그 균형이 어렵고, 때로는 어느 한쪽으로 기울기도 하지만, 둘 다 소중하다는 걸 잊지 않으려면 노력이 필요하다는 것을.
그리고 ‘좋은 개발자’란 무엇인지 다시 생각했다. 24시간 코딩에 몰두해 기술적 성취를 이루는 사람일까? 물론 그것도 멋진 모습이다. 하지만 여자친구의 삼촌처럼 그 끝이 소진이라면, 이를 지속할 수 있을까?
내가 진정 닮고 싶은 사람은 기술만으로 가득 찬 사람이 아니라, 삶과 기술이 조화를 이루는 사람이었다.
여기까지 생각이 닿자 ‘좋은 삶’이 어떻게 ‘좋은 코드’로 이어지는지 어렴풋이 보이기 시작했다. 잘 쉬고 잘 먹는 삶은 무질서한 정보들을 뇌가 처리할 시간을 준다. 샤워하거나 산책하다가 그토록 풀리지 않던 문제의 해결책이 번뜩 떠오르는 경험은, 바로 그 쉼의 시간에서 비롯했다.
개발자로 살아간다는 것은 어쩌면 끊임없이 무언가를 쫓는 일인지도 모른다. 더 나은 코드를 짜고, 더 효율적인 구조를 고민하며, 매일 성장해야 한다는 압박 속에서 쉽게 다른 것들을 뒤로 미루곤 하는 일.
나 역시 그랬다. 좋은 개발자가 되기 위해, 좋아하는 일을 더 잘하기 위해, 내 시간과 에너지를 아낌없이 쏟아부었다. 그 과정에서 주변 사람들과의 관계, 그리고 내 삶의 다른 측면을 얼마나 미뤄두고 있었는지 뒤늦게 깨달은 것이다.
다시 말하지만, 나는 여전히 정답을 찾지 못했다. 일과 삶의 균형을 완벽하게 맞추는 방법을 알고 있는 것도 아니다. 어쩌면 그런 정답은 애초에 존재하지 않을지도 모른다. 그 균형은 매일 흔들리는 추와 같아서, 오늘은 일 쪽으로, 내일은 삶 쪽으로 끊임없이 무게중심을 옮겨가며 조율해야 하는 것인지도 모른다.
다만 이제는 안다. 일을 사랑하는 것과 삶을 사랑하는 것은 반드시 충돌할 필요는 없다는 것. 좋은 코딩은 좋은 삶에서 나온다는 것.
잘 먹고, 잘 자고, 잘 쉬는 건강한 삶은 더 나은 집중력과 문제 해결 능력을 준다. 사랑하는 사람들과의 교감과 정서적 안정감은, 복잡한 기술적 난제 앞에서도 쉽게 무너지지 않는 회복탄력성을 선물한다. 그리고 그 힘으로 나는 다시 즐겁게 ‘코딩’할 수 있다.
그 셋은 분리된 것이 아니라, 나라는 개발자를 지탱하는 하나의 유기적인 알고리즘이다.
그래서 오늘도 나는 고민한다. 어떻게 일도, 삶도, 사랑도 놓치지 않을 수 있을지. 또, 이 고민 자체가 어제보다 조금 더 나은 개발자, 그리고 어제보다 조금 더 나은 ‘나’로 나아가는 과정이라 믿는다.
먹고, 코딩하고, 사랑하라. 셋 모두가 내 삶에 오래 머물 수 있도록.
©️요즘IT의 모든 콘텐츠는 저작권법의 보호를 받는 바, 무단 전재와 복사, 배포 등을 금합니다.