📖 구조 노트 목차 Chapter 24 읽는 중

24. 프로그래머는 세상을 어떻게 보는가

구조 노트 Chapter 24 2026. 07. 18.

팀장을 맡고 나서 겪었던 그 반복을 다시 떠올려 본다. 엔진을 몇 개의 모듈로 나누고 사람들에게 하나씩 배분하면, 몇 달 뒤에는 모듈 사이의 경계가 팀원들 사이의 소통 경계와 똑같은 모양으로 굳어 있었다. 조직도를 다시 그려 소통 구조를 바꾸면 코드의 경계선도 슬그머니 따라 움직였다. 그때는 이 현상이 신기했다. 조직과 코드는 전혀 다른 재료로 만들어진 것인데, 어째서 같은 모양으로 자꾸 겹치는지 궁금했다.

이제 와서 그 장면을 다시 보면 그때 이미 하고 있던 일이 눈에 들어온다. 조직도를 마주할 때 눈여겨본 것은 누가 어떤 사람인지가 아니라 누가 누구와 자주 대화하는가였다. 코드를 마주할 때 눈여겨본 것도 어떤 모듈이 무엇을 담고 있는지가 아니라 어떤 모듈이 어떤 모듈을 호출하는가였다. 두 질문은 결국 같은 질문이었다. 대상 안에 무엇이 들어 있는지보다, 대상들 사이에 어떤 화살표가 그어져 있는지를 먼저 보는 습관. 그 습관이 조직도와 코드 위에서 각각 다른 이름으로 나타났을 뿐, 실제로 하고 있던 동작은 하나였다.

이 연작이 지나온 자리를 돌아보면 매번 이 동작이 반복되고 있었다. 젓가락 두 짝을 같다고 부를 때도, 체스판의 나이트가 재질과 무관하게 나이트일 때도, 조직도와 선수과목 체계도가 우연히 같은 그물을 그릴 때도, 원본 서버와 프록시 서버가 클라이언트 앞에서 같은 서비스로 취급될 때도 붙잡고 있던 것은 하나였다. 대상 그 자체가 아니라 대상들 사이의 관계, 그리고 그 관계가 재료를 바꿔 가며 얼마나 자주 되풀이되는가.

이 감각은 프로그래밍 안에서만 작동하지 않는다. 낯선 문제를 만났을 때 세부 내용보다 먼저 “이거 어디서 본 모양인데”라는 감각이 앞서는 순간들, 서로 무관해 보이는 두 상황을 나란히 놓고 공통된 뼈대를 찾아보려는 습관. 프로그래밍은 이 습관이 가장 선명하게 드러나는 장소였을 뿐이다. 코드를 보며 익힌 이 습관은 어느새 코드 밖에서도 같은 질문을 던지고 있었다.

팀장을 맡았던 그 시절에는 이 반복이 그저 신기한 우연이라고 생각했다. 이제는 안다. 우연이 아니라 습관이 우연을 가장해서 매번 같은 자리에 나타났던 것뿐이다. 그리고 이 습관은 연작이 끝난다고 함께 끝나지 않는다. 다음에 마주칠 낯선 코드 앞에서도, 낯선 조직 앞에서도, 가장 먼저 손을 드는 것은 아마도 이 습관일 것이다.