멈추지 않으려면, 나만의 속도로

by 위승주

달콤한 몽상, 기획의 시간


기획은 즐겁다. 아니, 솔직히 말하면 짜릿하다. 흰 화면 위에 내가 원하는 미래를 그린다. "이 버튼을 누르면 이런 경험을 주겠지?", "이 기능을 쓰면 사람들은 열광할 거야." 머릿속에서는 이미 내 서비스가 세상을 바꾸고 있다. PO로서 100개가 넘는 PRD를 쓸 때도, 이번 드링키지를 구상할 때도 기획 단계는 늘 도파민이 터지는 축제였다.


개발의 초반부도 마찬가지다. 텍스트로만 존재하던 기획안이 화면 위에서 깜빡이기 시작할 때, 내가 짠 코드 한 줄에 버튼이 반응할 때의 희열은 엄청나다. 이때까지만 해도 나는 생각했다. "요즘 1인 개발이 대세라더니, 생각보다 할 만한데? 아이디어와 추진력만 있으면 다 되는 세상이구나."


하지만 그 생각은 오만이었다. 낭만의 시간은 짧았고, 현실의 고통은 길었다.




화려한 화면 뒤, 보이지 않는 공포


개발의 진짜 벽은 '눈에 보이지 않는 곳'에서 나타났다. 바로 서버(Server)였다.


화면을 그리는 클라이언트(Client) 작업은 직관적이다. 코드를 고치면 색깔이 바뀌고 위치가 변한다. 하지만 서버는 다르다. 클라이언트 코드와 서버 코드는 서로를 직접 볼 수 없다. 오직 API라는 가느다란 선 하나로 연결되어 신호를 주고받을 뿐이다. 이 연결이 한번 꼬이기 시작하면 지옥이 펼쳐진다. 데이터는 오지 않고, 보안 이슈는 터지고, 배포 환경은 로컬과 다르게 작동한다.


"가볍게 알고 할 일이 아니다."


흔히들 '요즘은 툴이 좋아서 금방 만든다'고 하지만, 그건 겉핥기 식일 때나 통하는 말이다. 깃허브(GitHub) 관리부터 API 통신, 배포 시의 보안 설정까지... 혼자서 북 치고 장구 치려다 보면 어느 순간 늪에 빠진 기분이 든다.


특히 AI의 함정이 컸다. 초반엔 AI가 짜준 코드가 마법 같았다. 하지만 내가 그 원리를 이해하지 못한 채 '복사-붙여넣기'만 반복했을 때, 나중에 닥쳐온 대공사는 재앙에 가까웠다. 그때 뼈저리게 배웠다. "개발하며 새로 배우는 것들은 대충 넘기지 말고, 무조건 내 지식으로 만들어야 한다." 지금 당장 이해하지 못하고 넘어간 코드는, 반드시 나중에 더 큰 이자가 붙어 '기술 부채'로 돌아온다. 처음부터 모든 걸 공부할 순 없어도, 적어도 내가 쓴 코드가 무슨 짓을 하고 있는지는 알아야 했다.




이것은 앞으로 겪을 가장 작은 고난이다


하루 16시간씩 컴퓨터 앞에 앉아 있어도 진전이 없는 날들이 이어졌다. 분명 아침에 눈뜨자마자 시작했는데, 새벽 3시가 되도록 버그 하나를 못 잡고 잠들 때의 그 답답함. 가슴이 턱 막혀 미쳐버릴 것 같은 밤들이었다. "세상에 내 작품을 보여주고 싶은데, 만들지를 못해서 못 보여준다니." 하루에도 100번씩 포기하고 싶었다.

그때 나를 붙잡아 준 건, 평소 즐겨 보던 구루(Guru)들의 영상 속 한마디였다. "사업은 매번 더 큰 시련이 찾아온다. 지금 겪는 고통은 앞으로 겪을 고난 중 가장 작은 것일 뿐이다."



그 말이 묘한 위로가 되었다. 아직 겪어보진 못했지만, 사업이라는 거대한 파도 앞에서 지금의 이 개발 난관은 어쩌면 '튜토리얼'일지도 모른다. 내가 지금 당장 때려치우고 싶을 만큼 힘든 이 문제가, 훗날 돌아보면 가장 귀여운 수준의 고민이라면? "그래, 이게 가장 작은 고난이다." 그 생각이 들자, 엉덩이를 뗄 수 없었다. 그냥 다시 달렸다.




나만의 속도로, 고독한 싸움을 끝내는 법


심사 승인

우여곡절 끝에 앱 심사를 넣었다. 몇 번의 거절(Reject)을 당했다. 예전 같았으면 좌절했겠지만, 이제는 무덤덤하게 코드를 수정했다. 그리고 마침내 1월 17일, '승인(Approved)' 메시지를 받았다.


돌이켜보면 1인 개발은 그 누구도 시키지 않은 싸움이다. 상사도 없고, 동료도 없다. 내가 멈추면 프로젝트도 멈춘다. 위험하고, 지독하게 외롭고 고독한 싸움이다.


이 레이스에서 살아남는 유일한 방법은 '나만의 흐름'을 만드는 것이다. 남들이 얼마나 빨리 가든 상관없다. 나는 나의 호흡이 있다. 당장 눈앞의 작은 기능 하나를 오늘의 목표로 삼고, 하루를 시작시킨다. 너무 멀리 보면 지치고, 너무 가까이 보면 갇힌다. 그 사이에서 균형을 잡으며 번아웃이 오지 않게 나를 관리하는 것. 그것이 코딩 실력보다 더 중요한 1인 개발자의 생존 기술이었다.


결국 1인 개발은 누가 더 빨리 만드느냐의 싸움이 아니다. 누가 멈추지 않고 끝까지 자신의 속도로 완주하느냐의 싸움이다.


이제 배포 버튼은 눌러졌다. 나의 느리지만 확실했던 발걸음이, 세상에 닿았다.


작가의 이전글더하는 건 불안, 빼는 건 확신이다