이 글을 브런치에 쓸까 싶다가도 내 블로그를 찾아주는 고마운 개발자 여러분과 개발자 지망생이 있는 듯하여 그냥 여기에 작성해보기로 했다. 추후 포트폴리오로 쓰일 수도 있는 이 블로그에 이 글을 쓰는 것은 큰 문제가 될지도 모르지만, 이는 나와 같은 20대를 보내는 사람들에게 있어, 그리고 20대들이 겪는 흔한 고민 중 하나인 '꿈'을 생각하며 고민하는 것들에 대해 적어나가고 싶었다. 다른 직업도 아닌 개발자에 대해서 말이다.
고2 때부터 시작한 개발이 벌써 7년이 지났고, 여전히 개발자로 지내고 있다. 남들에게 이야기할만한 공식적인 개발 경력은 많이 없는 편이다만 이 일을 하면서 개발자라는 직업에 대해 어느 정도 노력을 했다고 자부하며 이야기할 수 있다. 프로젝트를 위해 밤을 새운 적도 많고, 개발에 빠져 잠을 이루지 못해 코드 편집기만 붙들고 지낸 적도 많았다.
어떤 문제점을 발견해 해결책을 제시하고 프레임워크를 제작하는 등 적어도 내가 개발자로서 할 수 있는 최선을 다했다고 자부한다. 어떤 대단한 개발자처럼 나와 비슷한 나이에 기업을 창업해서 사회에 기여했다던가, 대회에 나가 수상을 했다던가 그러지는 않았지만 지금까지의 나는 이 직업에 진심이었다.
헌데 여전히 마음속에 무언가 찝찝함이 남아있다. 매일 코드 편집기를 붙들고 있으면서도 망설여진다. 그 망설임은 근거 없는 것이 아니다. 그러한 무언가가 수년째 이어오다가 2021년에 들어서 개발자 말고 다른 일을 찾아야 할까 하며 진지하게 고민해보게 되었다.
무엇을 위해 개발자를 하고 있는가?
초등학교에 다닐 때는 대체로 하고 싶은 직업에 대해 어른들이 묻는 경우가 많았다. 어린 마음에 의사가 되고 싶다는 답변과 함께 그 이유는 고통받는 사람을 치유하고 사회에 기여하는 것이었다. 여기서 중요한 것은 의사라는 직업이 아니라, 그 직업이 왜 하고 싶고 직업을 가진 뒤 어떤 일을 하고 싶다고 말할 수 있냐는 것이다. 즉, 나도 모르게 꿈은 직업이 아닌 그 직업을 가짐을 통해 행동하고 결과를 도출해내는 동사의 관점에서 접근한 것이다.
20대 중반의 막바지에 이르고 있는 지금, 그 질문을 다시 한번 던졌다. 중학교 때 나는 게임중독이었고, 그냥 무작정 게임을 만들어보면 좋지 않을까? 싶어서 특성화고에 진학했다. 학교에서는 C언어로 'Hello, world'를 출력하는 것을 먼저 했지만, 고등학교 때를 생각하면 프로그래밍은 그저 학교 수업에 있으니까 하는 숙제 같은 것이었다. 개발을 좋아하는 다른 친구는 이미 그 수준을 넘어 다른 것을 탐구하고 있던 것을 보았던 기억이 난다. 그렇게 3학년 때 개발을 하는 회사에 처음 취직한 것이 내가 지금까지 개발일을 하게 된 계기였다.
지금까지 내가 적은 내용을 보면 어떤가? 어떤 개발에 대한 목적의식과 사명감이 눈에 보이던가? 흔한 자기소개서에 쓰이는 것처럼 개발의 어떤 점에 매료되어 시작했다거나, 어린 시절에 생긴 계기나 관심으로 인해 시작했다거나 그런 것이 하나도 없다. 개발자로서 성공했다는 사람들의 이야기를 들어보면, 적어도 국내에만 따지더라도 학창 시절 마인크래프트 플러그인을 개발했다거나 별도의 게임모드를 만들어서 배포했다거나 하는 이야기를 많이 들은 적 있다. 정작 난 그런 적은 하나도 없는데 말이다.
그냥 '우연히' 학교에서 하니까 했고 취직을 개발회사로 했으니까, 내가 할 수 있고, 남들보다 그나마 잘할 수 있는 개발뿐이어서 한 게 전부다. 아마 고등학교를 인문계로 갔다거나 다른 것을 하는 특성화고로 갔다면 개발을 안 했을지도 모른다. 돌이켜 생각해보면 어릴 때 의사라고 대답한 것보다도 더 바람직하지 않은 직업생활을 하고 있던 것이다.
행복에 물음표를 던지다
난 지금 내가 왜 개발자를 하고 있는지 모른다. 적어도 돈 때문은 아니다. 내 직업선택의 기준과 가치관에는 돈이 직업선택의 기준의 상위권에 위치하지 않는다. 내가 직업을 고려하면서 생각하고 있는 것은 행복, 가치, 보람, 목적의식, 사명감, 재미, 미래, 시너지다. 행복에는 잠시 물음표를 던지더라도 보람과 목적의식, 사명감은 존재하지 않았다. 그러나 개발은 가치 있는 일이며 미래에 유망하고, 다른 분야와 시너지도 좋은 편인 것 또한 사실이다.
내가 만든 프로그램을 배포하고 사람들이 고맙다고 인사할 때도, 개발자 커뮤니티에서 별을 받아 그 분야에서 1등을 해도 전혀 기쁘지 않았다. 이 얘기는 결국 7년간 개발 일을 하면서도 보람을 느낄 때는 거의 없었다는 것이다. 정확히 말하면 '개발자 하길 정말 잘했다!'라고 생각한 적이 없다.
나는 이것에 대해 목적의식의 결여 때문이라고 결론지었다. 목적의식이 없어서 자바, 파이썬, C, PHP, Js, Go 와 같이 여러 언어를 찍먹 하게 된 것이다. 목적을 가지고 개발하게 되면 그러한 일은 발생하지 않는다. 나보다 개발을 늦게 시작하고 이제 3년 차인 사람이 웹 개발을 하겠다는 목적의식으로 시작하니 나보다 개발을 잘한다.
직업이 명사에서 그쳐 동사로 이어지지 않았다. 개발자로서 왜 개발을 하고 싶고, 어떤 기술을 써서 어떻게 세상에 기여하고 더 나은 미래로 만들 것인지 스스로에게 질문을 던 진결과 대답할 수 없었기 때문이다. 그저 코딩이 재미있으니까 한다는 말은 아쉽게도 내게 있어서 대답이 되어주지 못한다. 생각이 단순하지 못한 것은 슬픈 일이다.
행복에 물음표를 던지게 된다는 것도 큰 문제점이다. 개발 자체에 대해 재미는 있는 편이었지만 행복으로 이어지지는 않았다. 작가가 글 쓰는 것이 행복해야 하듯, 개발자는 어찌 되었든 코드를 작성하고 개발을 하는 행위에서 행복을 얻어야 하는 것도 중요하니까 말이다. 개발의 결과물로 인해 발생하는 현상에 대해서도 보람이 느껴지지 않았다. 그렇다고 목적을 임의로 만들어내는 것은 좋지 않다고 생각했다. 다시 지금과 같이 똑같은 고민에 빠질 것은 분명했다. 왜냐면, 이미 두 번이나 그랬다.
'하고 싶다'가 아닌, '해야만 해'가 되어버린 건에 대하여
다른 직업처럼 개발자가 공부'해야 할 것'들은 많다. 기술은 끊임없이 변화하고 개발자도 공부를 지속해서 '해야 한다.' 몇 년이 지나면 지금 내가 배운 기술은 큰 의미가 없어질 수도 있다. 문제는 마음가짐이다. 내가 과거 게임중독 상태 일 때를 돌이켜보면 어떤 캐릭터에 대해 연구하고 몰두하는 것에 대해 '해야 한다'라고 여긴 적이 없다. 게임이 패치되어 과거에 연구한 것이 쓸모가 없어진다고 하더라도 설레며 연구에 임했다. 그렇게 하다 보니 자연스레 랭킹권에도 가보고 예선전에도 나가보고 했었다. 그냥 하고 싶으니까 하다 보니 그렇게 된 것이다. 그 당시에는 대가가 딱히 없었음에도 게임 블로그도 운영했었으니까.
지금의 내게 개발은 '하고 싶다'가 아닌 '해야만 해'가 되어버렸다. 그건 그저 '지금까지 개발을 해왔기 때문'이라는 이유 이외에 다른 이유는 없다. 웹 개발이든 AI 든 검색을 하다 보면 무엇을 배워야 하고 필요한지 보이기 마련이다. 이는 자연스럽게 경험을 통해 생긴 과정이 아니라 스스로 또는 다른 사람이 그렇게 정해서 인위적으로 챙겨야 하는 숙제와 다름없다.
어릴 때부터 부모님들은 숙제는 '해야 하는 것'이라고 가르친다. 어쩌다 보니 내게 개발이 그렇게 되었다. 하루에 알고리즘 한 문제는 취업을 위해 '해야 하는 것'이며, 하루에 개발 서적을 20페이지 이상 공부하고 블로그에 개발 글을 쓰는 것은 '해야 하는 것'이라고 나도 모르게 그렇게 생각하며 지금까지 지내왔던 것 같다. 그건 내면에서 자연스럽게 발생한 일이 전혀 아니다.
일부 개발자들이 강박을 가지는 것 중에는 '1일 1 커밋'이라는 것이 있다. 매일같이 코드 편집기를 보기 위한 일종의 운동 같은 것이다만, 사실 매일같이 개발을 한다면 1일 1 커밋 같은 건 신경 쓸 필요가 없다. 하다 보면 자연스럽게 연결되기 때문이다. 커밋은 안 하더라도 매일같이 코드를 본다면 커밋에 규칙성이 발생한다나 끊어지는 타이밍 같은 것은 존재하지 않는다. 여기서 말하는 규칙성이란 취직을 하고 나니 갑자기 커밋이 끊겼다거나, 평일에만 커밋이 있고 주말에는 커밋이 없다거나 하는 것이다. 난 그렇지 않다 보니 깃허브 잔디에 규칙성 같은 건 없다.
하지만, 그만두면―
너무 아까워!
그래, 제목 그대로 그렇기에 그만두기 두려운 것이다. 진로에 대해 고민하면서 여러 영상들을 보았는데 그중에 하나에는 그 직업을 하면서 충분히 연구하고 노력했냐는 것이다. 난 이 부분에 대해 동의한다. 어떤 새로운 기술이 나오면 익히고자 했고 궁금한 게 있으면 검색을 했으며 개발로 밤을 새우는 경우도 많았기에 노력을 했다고 자부한다. 남들이 얼마나 노력했냐는 중요하지 않다. 내가 노력했다고 여긴다면 그건 최선을 다한 것이다. 그래서 더욱 그만두기 두렵다. 어떤 일을 수년간 하고 새로운 시작을 하는 사람들은 정말 대단하고, 존경스럽다.
시험을 보더라도 아무것도 안 한 상태로 그냥 논 상태에서 시험을 망쳤다면 그것에 미련은 없다. 왜냐하면 그건 내가 놀았기 때문에 그렇게 된 거니까. 그런데, 열심히 공부했는데 그에 부응하는 성취를 이뤄내지 못했다면 어떨까? 너무 슬프지 않은가, 내가 100만큼 공부했는데 80만큼만 얻었다니 말이다. 너무나도 '기분'이 안 좋을 것이다.
성취에 대해서도 불만이 있긴 하지만 다른 것보다도 그렇게 열심히 한 것치고는 그만한 만족감을 얻지 못했다는 것이 너무나도 슬픈 일이다. 결과가 아닌 기분의 문제다. 난 내가 노력했다고 생각은 하는데, 그만큼의 만족감은 느끼지 못한다. 부족함을 느끼는 것이 성장의 발판이라고는 하나, 이것은 그것과는 미묘하게 다르다.
새롭게 시작하기에는
새로운 시작에 대한 두려움과 미련이 있다는 것은 진로를 바꾸는 그 어떠한 사람이든 있을 것이다. 나 같은 경우에는 그 벽이 다소 높은 편이다. 고민 끝에 어렴풋이 떠오른 것이 있다면, 중학교 때 또 다른 취미는 다른 사람의 이야기를 들어주고 공감하며 소통하는 일이었다. 그 직업에 부합하는 일은 '상담사' 또는 '정신과 의사'에 가까웠다. 둘 다 대학을 다시 나와야 함은 물론이요 수능도 새로 준비해야 하는 처지에 놓여있다. 현실적으로 생각하면 어려운 일이라는 고민도 들지만 미련은 계속 남을 것 같아 부담스럽다.
누군가에게 채찍질을 받게 된다면, '어중간하게 할 거라면 시작도 하지 말라'거나, '집안과 현실을 고려하라'라고 이야기할지도 모르겠다. '하고 싶은 것을 하라'는 것도 이해는 가고, 여러모로 어려운 고민이다. 무엇이 되었든 내가 원하는 것은 사회에 기여하고 세상을 변화시키는 일이며 그로 인해 보람과 행복을 얻는 것이다. 내가 생각해도 터무니없다. 사실 가장 이상적인 것은 개발과 '사회에 기여하고 세상을 변화시키는 일이며 그로 인해 보람과 행복을 얻는 것'을 접목시키는 일이다. 이게 정답인가?
만약, 지금 당신이 개발자이거나 되고 싶다면
사람마다 추구하는 가치가 달라 이야기하기 조심스럽지만, 한 가지 물어보고 싶다. 개발자를 하고 있다면 왜 하는지, 개발자가 되어서 어떤 기술을 공부하고 그것으로 무엇을 하고 싶은지 말이다. 나는 가지고 있지 않은 이 이유들. 이 이유를 분명히 가지고 있는 사람들은 망설이지 않고 앞으로 나아가는 모습을 많이 보았기에 궁금해지기 시작했다. 어떤 개발자는 '세상을 바꾸려고 시도하는 행위에서 보람을 얻는다'라고 이야기했다. 당신은 어떠한가?
그것은 누군가에게 있어서 생계이자 돈이 될 수도 있고 그저 'IT가 뜬다길래' 시작하는 사람도 보았다. 이것이 잘못되었다고 하는 것이 아니라 내 개인적인 입장에서 궁금한 것이다. 내게 그렇게 복잡하게 생각하지 말고 단순하게 하라고 이야기할 수는 있지만, 흔들리는 것은 인생에서 필연적으로 찾아오는 일이 아닐까 싶다.
고민에 대한 답이 나오기까지는 오랜 시간이 걸릴지도 모른다. 아마 또 평일이 되면 평소와 같이 취직 이외에 무엇을 목적으로 하는지 알지 못한 채 알고리즘 문제를 풀고 개발 서적을 볼 것이다. 그저 '불안'이라는 감정에 동요되어서.