「겁 없이 만들되, 무지하게 만들지 않기」라는 초안을 쓰다가 멈췄다.

쓰다 보니 이게 새 글이라기보다, 저번에 쓴 글을 또 쓰고, 또 쓰고 하는 느낌이었다. 「바퀴를 재발명하지 않기」, 「AI에게 멈추라고 말할 권리」 나는 도대체 무슨 말이 그토록 하고 싶었던 걸까? 무엇이 나를 이렇게 만들었나. 나는 요즘 왜 이렇게 만드는 일을 조심스럽게 하게 되었을까.

예전에 「풀사이클을 개발을 해봐야 하는 이유」라는 글이 썼다. 거기에 이런 말을 남겼더라.

신입 개발자는 하얀 도화지이다. 이 도화지에 멋지든 후지든 붓을 대고 그림을 그려봐야 하는데, 회사에서 점차 연차가 쌓일수록 다른 분야에 대한 기준과 지식이 점차 생겨나기 시작하면서 도화지에 어떻게 멋진 그림을 그릴까 생각만 할 뿐 그림을 그리지 못하게 된다.

사실 저때 저 말을 아무것도 모르고 썼다.

이제와서 생각해보면 그렇게 될거란 것을 꽤 잘 알았던 모양이다.

최적화라고 생각했다

ig_0b9822217edac1f0016a2047d25d948191afd92f21bdc7cd89.png
이렇게, 이렇게, 이렇게요. 쉽죠?

바퀴를 재발명하지 않기」라는 글을 쓴건, 내가 바퀴를 만드는 것을 너무 사랑했기 때문이다.

그냥 만드는 것이 재밌었다. 내가 이해한 만큼 만들고, 만들기 위해 이해하지 못한 부분까지 공부하게 만드는 좋은 원동력이 되었다. 그렇게 반복을 거듭하면서 나만의 개발 패턴, 나만의 효율적인 플로우를 만들었다. 회사에서 이런 기반들은 대체로 도움이 되었다. 누군가는 내가 뭐든지 척척 해내는 사람이라고 생각했고, 이런 평판이 쌓이면서 어느 순간 팀의 플로우까지 만드는 순간이 왔다.

“이 프로젝트엔 이게 맞다.”

나에게 1순위가 되는 것은 창작 (개발), 그 외의 것들이 노이즈가 되어선 안 됐다. 반복 작업을 줄이고, 실수할 여지를 줄이고, 배포나 운영 과정에서 사람이 놓칠 수 있는 부분은 없어야 했다. 그런 기준은 나에게 거의 기본값에 가까웠다. 더 효율적으로, 더 안전하게, 더 깔끔하게. 문장만 보면 그럴듯해 보인다.

사람들도 대체로 괜찮다고 하는 것 같았다. 적어도 누군가 강하게 막지는 않았다. “이건 너무 이상하다”거나 “이 방식은 받아들이기 어렵다”는 말을 듣지는 않았다.

그래서 나는 괜찮은 줄 알았다.

내가 보기엔 잘 굴러갔다. 흐름도 있었고, 절차도 있었고, 자동화된 부분도 있었다. 이전보다 나아졌다고 생각했다.

그런데 시간이 지나고 나서 이상한 일이 생겼다.

“이거 어떻게 해요?”

내가 그 팀에 계속 있을 때는 잘 몰랐다. 어차피 내가 옆에 있었고, 문제가 생기면 내가 볼 수 있었고, 판단도 자연스럽게 내가 빠르게 했다. 그러니 그게 구조의 문제인지, 그냥 내가 담당자라서 그런 건지 잘 구분되지 않았다. 이렇게 하다보면 사람들이 언젠가 익숙해질 것이라 믿었다. 내 생각에 이건 비교적 간단했으니까.

그런데 팀을 옮기고 나서도 질문이 나에게 왔다.

  • 배포를 어떻게 해야 하는지

  • 어떤 절차를 따라야 하는지

  • 이건 왜 이렇게 되어 있는지

  • 문제가 생기면 어디를 봐야 하는지

뭔가 이상했다.

  • 왜 아직도 나에게 오지?

  • 편하라고 만들었는데, 왜 불편해하지?

  • 효율적이라 생각했는데, 왜 막혀있지?

그때부터 잘못됐다는 느낌이 들었다. 좋은 의도로 만든 것이었다. 더 편하게 하고 싶었고, 더 안전하게 하고 싶었다. 그런데 결과적으로는 내가 빠지기 어려운 방식이 되었을지도 모른다.

ig_0b9822217edac1f0016a217552c6688191a61dfd24c36cd49f.png
그랬구나... 나만 쉬웠구나...

“이거 어렵네요 😓”

다른 팀으로 옮기면서 더 직접적인 피드백을 들었다.

이거 어려운데요.

그 말만 들었을 때는 바로 인정하기 어려웠다. 속으로는 “이게 왜 어렵지?”에 가까웠다. 나는 오히려 복잡한 것을 걷어냈다고 생각했기 때문이다. 근데 그 말이 뭔가 계속 마음에 남았다.

피드백은 그게 끝이 아니었다.

  • 표준이 아니라서 파악하기 어렵다.

  • 표준이 아니라서 좋은 방법인지 모르겠다.

  • 익숙한 방식이 아니어서 판단하기 어렵다.

그 말을 듣고 나서야 예전 일들이 같이 떠올랐다.

  • 내가 설계했던 구조들

  • 내가 만든 개발 플로우

  • 나에게 돌아오던 질문들

나는 그동안 효율적으로 개선하고 있다고 생각했다.

하지만 어쩌면 비용을 줄인 것이 아니라 옮긴 것일 수도 있다. 아키텍처를 설계할 때도 그런 걸 느꼈다. 100% 무결한 시스템은 어디에도 없다. 무엇이든 트레이드 오프가 있고, 어딘가는 항상 쓰레기통 역할을 하게 된다. 내가 생각하는 “표준 패턴”에서 보이는 비효율적인 부분은 비교적 합리적인 비용일지도 모른다. 그저 나만 불편했을 뿐.

조금은 채워져버린 도화지

그래서 이제는 뭘 만들기 전에 스스로를 검열하기 시작했다.

  • 이게 정말 좋은 방식인가, 아니면 내가 좋은 방식인가?

  • 이게 팀에게 쉬운가, 아니면 나에게만 쉬운가?

  • 보편적인 패턴인가, 아니면 비표준인가?

이 질문들을 너무 이르게 하면 아무것도 시작하지 못하게 된다.

그렇다고 무시하기엔 슬픈 경험들을 했다.

그렇다고 버릇을 고치는 것도 어렵다. 아직도 비효율적으로 보이는 부분이 보이면 신경이 곤두서고(?), 새로 만들고 싶고, 플로우를 효율적으로 다듬어야 할 것 같은 강박이 느껴진다. 다시 예전처럼 아무것도 모르는 상태로 만들고 싶은 건 아니다. 하지만 만드는 일을 너무 무서워하고 싶지도 않다. 나는 여전히 만들고 싶고, 직접 고치고 싶고, 더 나은 방식을 제안하고 싶다.

그래서 「겁 없이 만들되, 무지하게 만들지 않기」라는 말을 쓰고 싶었던 것 같다.

무지하게 만들지 않는다는 말은, 내가 만든 것에 대한 충분한 책임을 져야한다는 뜻인 것 같다. 그 방식이 나를 중심으로 돌아가게 되는지, 아니면 모두를 중심으로 돌아가는지 고민해봐야 한다. 사람들을 충분히 설득하고 충분한 동의를 얻어내야 한다. 소통 없이 만든 효율은 또 다른 이해 비용을 만든 것에 불과하다.

나는 만들기 좋아하는 사람이었다.

그리고 이제는, 만들기 전에 조금 따가운 질문을 하나 더 하게 된 사람이 된 것 같다.

글 정보

작성자
baealex

창작을 사랑하는 개발자

최초 발행
저자 홈페이지
https://baejino.com