웹 개발 업무를 하는 중이었습니다. 대시보드에 올바른 데이터가 나올 수 있도록 잘 가공하는 일이었습니다. 그런데 특정 부분에서 자꾸만 틀린 데이터가 나오는 버그가 발생하는 상황이었어요. 이틀을 고민해도 해결을 할 수가 없었습니다. 물론 다른 업무와 병행하는 중이었다고는 해도 사소한 버그를 고치지 못하고 있다는게 자존심이 상했습니다. 제가 작성한 코드였음에도 잘 이해하기 힘든 복잡한 형태였어요. 그러다 보니 계속 보고 있으면 어느 순간 머리가 멍해지면서 두뇌가 파업을 하는 듯한 현상이 벌어졌습니다.
결국 토요일 아침 커피와 함께 식탁에 앉았습니다. 노트북을 켜고 원격 접속을 통해 사무실 pc로 들어갔습니다. 처음으로 돌아가서 현재 이 버그를 고치지 못하고 있는 근본적인 원인에 대해 생각했습니다. 코드가 이해하기 너무 복잡하다는 생각이 가장 먼저 들었습니다. 그렇다면 코드를 읽기 쉬운 형태로 고치자는 생각이 들었습니다. 기존 코드에서 계산이 잘 되도록 머리를 싸맸던 고민 대신 근본적인 문제를 해결하기로 한거죠. 결과적으로 버그를 고치는데까지 두시간 정도가 걸렸습니다. 이틀을 고민해도 해결이 안되던 버그가 싱거울 정도로 간단하게 해결된 것입니다. 물론 코드를 다듬는 작업이 후행되어야 하니 두시간에서 더 시간을 투자해야겠습니다만.
노트북을 덮고 생각을 해봤습니다. 사무실에서는 끙끙거리며 고민했던 문제를 싱거울 정도로 빠른 시간에 해결한 이유가 뭘까. 답답한 느낌이 드는 사무실 공간에서 벗어나 편안한 집에서 커피를 마시며 일을 해서일까? 충분한 수면 뒤 맑은 정신을 보전할 수 있는 이른 아침이어서일까? 둘 다 틀린 답은 아니지만 제일 중요한 것은 한걸음 물러서서 생각했기 때문이지 않을까 싶습니다.
어떤 그림이 벽에 걸려있습니다. 저는 바로 코앞에서 그림을 관람중입니다. 특정 부분의 색감이나 붓 터치, 질감 등은 훨씬 잘 느낄 수 있었으나 작가가 무엇을 그렸는지, 어떤 느낌을 표현하고자 한 건지는 알 수 없습니다. 작은 부분만 보며 그림의 전체에 대해 상상하는 것이 고작입니다. 상상하던 그림이 실제와 동일할 확률은 매우 적습니다.
사무실에서 근무를 할 때가 딱 이 느낌이라는 생각이 들었습니다. 버그를 고치려는 목적에 급급하여 작성한 코드를 뚫어져라 쳐다보고 있었습니다. 한발자국 물러나서 바라보고 나서야 코드의 방향 자체가 잘못된 것을 알았습니다. 문제를 직시하니 어떻게 수정해야 할지 생각하는 것은 어렵지 않았습니다.
비단 개발에서만 이런 상황이 벌어지는 것은 아닙니다. 다양한 상황에서 문제점에 직면하고 해결 방법이 떠오르지 않아 스트레스를 받기도 하고 좌절하기도 합니다. 내가 이 문제를 과연 해결할 수 있을까? 라는 생각이 들고 자신이 없어집니다. 자연스럽게 포기하고 싶다는 생각이 듭니다. 그런데 태산같아 보이던 것이 멀리서 바라보면 생각보다 별거 아니라는 생각이 들기도 합니다. 저걸 어떻게 올라가지라고 생각했는데 길이 딱 보이기도 하구요. 길이 있으면 올라가기만 하면 되니 그때부터는 마음이 편안해집니다. 그것을 넘고 뒤돌아봤을때의 뿌듯함은 무엇보다 달콤한 보상입니다. 앞으로도 어려워 보이는 문제가 있다면 한걸음 물러서서, 혹은 다양한 방향에서 살펴보며 제대로 파악하고 직시하려 합니다.
'취미 > 코딩일기' 카테고리의 다른 글
| [회고] TDD를 처음 실무에 적용하며(Spring boot, Java) (0) | 2025.08.20 |
|---|---|
| 어떤 개발자가 되고 싶으신가요? (1) | 2025.01.25 |
| [일상]23년 3월 13일 코딩일기..는 아니고 그냥 기록(애드센스 승인됐다!) (16) | 2023.03.13 |
| [코딩일기]23년 3월 9일 - 오타 정도는 유도리 있게 해석하면 안되나?(feat.NoSuchBeanDefinitionException) (6) | 2023.03.09 |
댓글