재미있는 일은 나를 행복하게 해 줄 수 있을까
<해커와 화가>라는 다소 낭만적인 제목의 에세이가 있다.
아마 개발자가 아닌 분들에게는 생소한 글일 것이다. 사실 20년 정도 된 글이라 젊은 개발자 중에서는 모르는 분도 있을 것 같다. 오래된 글이니, 다시 읽으면 공감하지 못하는 부분도 있긴 하다. 그래도 제목에서 보여주듯이 해커-여기서는 정보를 훔치는 사람이 아니라 코드를 이용해 소프트웨어를 만드는 사람, 즉 개발자를 말한다-에게는 화가와 같은 면이 있다는 말은 다시 읽어도 오묘한 기분을 느끼게 한다.
개발자는 창작자인가? 하는 질문에 100% 그렇다고는 못하지만, 나는 어느 정도 그런 부분도 있다고 생각한다. 개발자라는 직업을 선택했을 때는 분명, 창작에 대한 짜릿함이 있었으니까. 처음 웹페이지를 만들던 기억은 분명 강렬했고, 혼자 낑낑대며 웹 서버를 올려 사람들이 접속했을 때는 감동적이었다(요즘은 버튼 몇 개만으로도 가능하지만, 예전에는 서버 올릴 때 해야 할 것들이 많았다). 창작과는 다른 결이지만, 알고리즘 문제를 풀며 즐거움을 느꼈던 때도 있었다. 아마도 그런 짜릿한 경험이 좋아서 개발자가 되었던 것 같다.
물론, 개발이 마냥 좋아서 개발자가 된 건 아니었다. 아무리 개발이 좋아도 수입이 없다면 선뜻 직업으로 선택할 사람이 있겠는가. 안정적인 수입이 나오는 회사에서 일할 수 있다는 것도 개발자가 된 이유 중 하나였다. 그렇지 않았다면, 아마 개발은 취미로 머물렀을 것이다.
현실적인 이유로 개발자로 취직을 했지만, 그렇다고 열정이 없는 건 아니었다. 나는 잘하고 싶기도 했고, 소위 말하는 '개발 문화'에 열광했다. 회사는 모든 직원에게 평등한 호칭을 사용하게 했고, 새로운 기술에 적응할 수 있게 각종 장비를 지원해 주었다. 최신 기술들을 적용해 볼 수 있는 문화와 재미를 추구하는 환경 등 전통적인 회사 이미지와는 달랐다. 물론, 일반적인 회사의 모습이 아예 없었다고는 못하겠지만, 직원들은 회사에 적극적으로 의견을 내고, 열려 있는 문화를 지키기 위해 노력했다. 나는 그게 '개발 문화'라 믿었고, 개발 문화를 누리고 지키는 일에 자부심을 느꼈다.
이제 와서 개발 문화의 모든 게 잘못되었다고 생각하는 건 아니다. 개방적인 태도와 불필요한 직급이 없는 문화는 지금도 지향해야 한다고 생각한다. 오히려 경기가 나빠진 요즘 퇴보하고 있는 것 같아서 안타깝다. 특히, 개발 문화의 '개발자가 개발에만 신경 쓰는 환경'이라는 슬로건은 훌륭했다. 선후배 관계나 직급, 불필요한 문서를 만드는 등 보여주기식 업무 같은 것에 치이는 건 끔찍한 일이니까. 이건 개발자뿐만 아니라 모든 직업에 적용되어야 마땅한 일이었다.
그런데 그 말은 '개발자는 개발할 때만 행복한 존재'로 들리기도 하는 모양이다. 처음 뜻은 '다른 업무에 신경 쓰지 않는 문화'를 지칭하는 말인 것 같았는데, 정작 개발자들은 스스로를 '개발할 때 가장 행복한 존재'로 만들어 버렸다. 정확히는 개발할 때'만' 행복한 존재가 된 것 같았다. 낮에는 업무를 하고, 밤이 되면 토이 프로젝트를 하거나, 공부를 하는 등 열정을 불사르는 게 마치 바람직한 삶처럼 여겨졌다. 요즘 말로는 '개발자 갓생'이라고 해야 하나.
실리콘밸리에서 들려오는 '개발자 성공신화'는 얼마나 달콤한가. 지금은 대량 해고 바람이 부는 등 위상이 예전 같지는 못하지만, 당시에는 스타트업으로 떼돈을 벌었다는 이야기도 들렸고, 빅 테크 회사들은 소위 말하는 '뛰어난 개발자'를 뽑고 엄청난 연봉을 주었다. 덕분에 너도나도 뛰어난 개발자가 되기 위해 애를 썼다. 낮에는 어려운 문제를 척척 해결하는 능력자, 밤에는 남들이 별을 마구 눌러주는 개인 프로젝트, 가끔 강연도 뛰는 슈퍼맨이 되어야 당연한 것 같았다. 정작 내가 본 제일 뛰어난 개발자 분은 그런 거 하나도 신경 안 썼는데.
연차가 상대적으로 적은 개발자는 '주니어'라고 부르는데, 주니어 시절에는 나 역시 엄청난 개발자를 꿈꾸었다. 야근도 많이 하고, 공부도 많이 하고, 토이 프로젝트도 하고, 그 와중에 실리콘밸리에 가고 싶다며 영어 공부를 하고 운동도 했다. 그 당시에는 열심히 산다고 전혀 생각하지 않았는데, 이렇게 적고 보니 진짜 갓생을 살았던 것 같다. 그렇게 살아도 불평은커녕 개발자로서 자부심을 가지고 있었고, 더 열심히 살아야 한다고 생각했다. 지금 웃으면서 돌이켜 보건대, 회사 입장에서 이보다 좋은 노예가 있었을까. 그래도 그때의 나는 개발할 때 행복하다고 믿었다. 지금도 '행복'이 뭔지 모르는데, 그 당시에는 왜 그리 쉽게 내가 행복하다고 생각했을까.
요즘은 개발자 정년이 길어져서, 20년 차 개발자 분도 자주 보인다. 그분들 앞에서 10년도 채우지 못한 내가 감히 할 말은 아니지만, 조금 연차가 올라갔을 때 이야기다. 그래봤자 7-8년 정도로 간신히 주니어 티를 벗어난 정도지만. 유난히 '재미있다'는 말을 반복하는 주니어 동료가 있었다. 계속해서 그 말을 듣다 보니, '재미'라는 말이 어떤 말인지 자주 생각해보곤 했다. 어느 순간부터는 그 단어가 부자연스럽게 느껴졌다. 그리고 저번 화에서 말한 개발자 C의 '개발이 계속 재미있을 수가 있나요?'라는 질문에 덧붙여 생각해 보니, 그 부자연스러움의 정체를 조금 더 구체적으로 알 수 있었다.
위에서 말한 대로, 창작이라는 관점에서 개발은 재미있을 수 있다. 복잡한 문제를 풀어나가는 것도 재미있는 일이다. 그게 나를 개발자로 이끌기도 했고. 그런데 예술가들은 자기 일에 대해 이야기할 때, '재미있다'는 표현보다는 '사랑한다'는 표현을 사용한다. '음악이 재미있어서 이 일을 한다'는 말보다는 '음악을 사랑해서 이 일을 할 수밖에 없다'는 말을 더 많이 쓰는 것 같다. 나는 그 이유가 음악이 마냥 '재미'있을 수만은 없기 때문이 아닐까, 하는 생각이 들었다. 때로는 진절머리 나게 힘들고, 눈물이 날 만큼 원망스러워도 다 끌어안고 묵묵히 연습을 하기에 '사랑한다'는 표현을 쓰는 게 아닐까. 예술가들은 인간에게 고통과 절망이 있다는 걸 이해하는 만큼, 자기 일도 고통과 절망이 있다는 걸 알고 그걸 껴안으려고 하는 것 같다.
반면에 과학자들은 신기하게도 '재미있다'는 표현을 더 즐겨 사용한다. 물론 '사랑한다'는 말도 사용하지만, 수학이 재미있어서, 물리학이 재미있어서, 이 일을 계속한다는 말을 한다. 그렇다고 그들이 고통스럽지 않을 리 없다. 그들이 말하는 재미란, 고통을 겪고 난 후에 볼 수 있는 자연의 경이로움을 다르게 표현한 것이 아닐까? 어떻게 보면, 그것도 예술가들이 말하는 '사랑한다'는 표현과 일맥상통하는 거라고 생각한다.
그런데 왜 '개발을 사랑한다'는 말은 어색할까. 개발의 고통에 대한 수많은 밈과 짤에도 불구하고, 이상하게 '개발을 사랑한다'는 말은 어색하다. 개발자들도 고통을 겪고, 절망을 하는데도 불구하고 왜 개발은 사랑한다는 말이 이상할까. 나는 개발자들이 '나는 개발이 고통스러워'라는 말에 저항을 느낀다고 생각한다. 개발에 대한 고통과 절망을 인정하는 순간, 나 자신이 진정한 개발자가 아니라고 느끼는 것 같다. 뛰어난 개발자라면 언제나 즐거운 모습만 보여야 한다고, 고통 없이 마법처럼 문제를 해결해야 한다고 착각하는 건 아닐까. 그래서 고통과 절망을 희화화하며 피해 가려는 건 아닐까.
'재미'라는 말은 사실 지나치게 강조하면 폭력적인 면도 있다. '재미있지 않아요?'라는 말을 잘못 사용하면 '이 정도로 고통을 느낀다면 너의 실력이 모자란 것이다', '재미를 못 느끼는 너는 진정한 개발자가 아니다' 같은 이상한 압박을 준다. 창작자들은 재미를 볼모로 열정페이를 강요당하기도 한다. '너 그림 그리는 거 좋아하니까 한 장 그려줘'처럼 재미라는 말은 사용하기에 따라서 무서운 면이 있다. 무슨 일이든 열정에는 고통과 절망이 동반되는 법인데, 재미라는 말로 퉁쳐 버리면 그 모든 노력을 무시할 수 있지 않은가. 그건 프로게이머에게 '넌 재미있는 거 하면서 돈 버니까 좋겠다'는 말처럼 무례한 일이다.
재미는 나를 개발자로 이끄는 동력이 될 수 있지만, 위에서 말한 대로 고통과 절망을 가리기도 한다. 게임 만드는 일이 아무리 재미있어도 크런치 모드로 일하면 그 일이 정말 재미있겠는가. 오히려 행복한 삶을 살기 위해서는, 내가 하는 일이 고통스러울 수도 있고, 절망스러울 수도 있다는 걸 인정해야 하는 것 같다. 그래야 그걸 받아들이기도 하고, 불필요하면 피하기도 하면서 진짜 행복한 길을 찾을 수 있는 것 아닐까.
생각해 보면 하루 종일 게임만 하는 사람이 정말 행복한지도 모르겠고, 같은 곡을 12시간씩 연습하며 고통스러워하는 피아니스트가 불행한지도 모르겠다. 작곡을 하는 음악가나 소설을 쓰는 작가는 창작의 고통과 생활고에 시달린다. 그럼에도 불구하고 그 일을 놓지 못하는 걸 보면, 행복의 조건이라는 건 '무엇이다!'라고 정의하기 어려운 것 같다. 행복의 조건을 모르기에 행복이 무엇인지도 잘 모르지만, 지금의 나는 재미가 행복을 보장해 주는 건 아니라는 생각이 든다.
위에서 이야기했듯이, 나는 상당히 이상화된 개발자의 모습을 좇아 무리한 생활을 했다. 당연히 처음에는 재미있던 개발도 점점 힘들고 고통스럽기만 했다. 그렇게 힘들 때마다 그럴 수도 있다는 걸 인정하기는커녕, 나는 진정한 개발자가 아니라는 생각에 괴로워했다. 그게 개발자로서의 내 삶을 갉아먹었다. 그때, 그게 당연한 감정인 걸 인정하고, 무리하지 않는 생활을 해도 괜찮다는 걸 깨달았다면, 나는 지금 개발을 계속하고 있었을까? 글쎄. 개발을 그만둔 이유는 단순히 개발이 고통스럽다는 걸 인정하지 못해서가 아니었다. 저번 화에서 말한 개발자 C처럼 재미를 느끼지는 못해도 일은 할 수 있지 않은가. 내가 개발을 그만두게 된 건, 복합적인 이유에서였다.
다음 화에서는 조금 사회적인 이유를 이야기해보려 한다. 주니어 시절에 운이 좋아서 실리콘밸리를 견학한 적이 있었다. 당시의 실리콘밸리는 개발자의 유토피아처럼 여겨졌는데, 나는 그곳을 다녀오면 개발자로서 확실한 동기 부여도 되고 무언가 깨달을 거라고 생각했다. 하지만 그때의 경험은 오히려 씨앗처럼 마음에 심어져 있다가, 나중에야 개발에 대한 깊은 회의감으로 피어났다. 내가 개발자를 그만둔 이유에는 실리콘밸리에서의 경험이 한 몫한 셈이다. 무슨 일이 있었는지는 다음 화로 넘기려고 한다.
쓰다 보니 무척 길어졌는데, 긴 글을 끝까지 읽어주셔서 무척 감사합니다.