팟캐스트 '나는 프로그래머다'와 후원사 한빛미디어는 해마다 한 두 차례 개발자 컨퍼런스를 개최한다.
뉴욕에서 14시간 비행기를 타고 와서 행사에 참여하는 일은 육체적으로 고단하지만 즐거움이 많기에 매번 행복한 심정으로 달려오게 된다. 행사 도중이나 저녁 네트워크 파티에서 다양한 참석자를 만나 현장 이야기를 듣는 것은 그런 즐거움 중에서 으뜸이다.
여러 사람과 대화를 나누면 한국 개발자의 현실, 밝은 면과 어두운 면을 골고루 듣게 된다. 그런데 그 중에 나를 놀라게 만드는 공통적인 이야기가 있다. 컨퍼런스에 참석하기 위해서 휴가나 반차를 냈다는 이야기다. 그것도 직장 상사나 동료의 눈치를 보면서. 심지어 거짓으로 병가를 냈다는 사람마저 있었다. 우리가 개최하는 컨퍼런스가 알려지지 않은 탓이 클 것이다. 하지만 많은 회사가 개발자의 컨퍼런스 참여를 개인활동으로 간주하는 것 같다. 놀라운 일이다.
개발자의 컨퍼런스 참여는 개인활동이 아니라 회사가 고마워해야 하는 일이다. 회사에서 좋은 컨퍼런스를 찾아 참가비를 내주며 보내지 못할망정, 스스로 컨퍼런스에 참여하는 개발자에게 휴가를 쓰게 하는 것은 부끄러운 일이다. 예를 들어서 컨퍼런스에 참여하기 위해서 개인휴가를 쓰라고 말하는 것은, 회사에서 코딩을 할때 인터넷에서 API를 검색하는 시간을 업무시간에서 제외하라고 말하는 것과 다르지 않다.
대기업에 다니는 개발자는 스스로의 생태계에 갇힌 회사가 외부 행사에 참여하는 문화를 모르기 때문에 눈치를 본다. 중소기업에 다니는 개발자는 살인적인 일정과 일상적인 비상사태 때문에 말을 꺼내지 못한다. 그래서 눈치를 보느니 마음 편하게 휴가를 내는 것이다. 이런 이유로 휴가를 낸 직원이 있으면, 회사의 매니저나 HR 담당자는 소급적용을 해서라도 휴가를 되돌려주어야 한다. 개발자의 컨퍼런스 참여는 개인적인 놀이가 아니라 회사 일의 연장이기 때문이다.
어째서 그런가. 컨퍼런스에 참여해서 사진을 찍고, 피자 한 조각 먹고, 볼펜 한 자루 받아와서 좋아하는 행위가 어떻게 회사 일의 연장이란 말인가? 책상에 앉아서 한 줄이라도 코드를 더 작성하는 것이 회사에 도움이 되는 것 아닌가? 전혀 아니다. 회사의 비즈니스를 위해서 소프트웨어 개발 역량이 중요한 회사라면, 매니저나 HR 담당자가 이 사실을 제대로 이해하는 것이 중요하다. 개발자가 작성한 코드의 줄 수와 컨퍼런스에 참여한 개발자가 먹은 피자의 수 중에서 회사의 장기적인 발전을 위해서 중요한 것은 말할 필요도 없이 피자의 수다.
프로그래밍이라는 행위는 키보드를 두드려서 화면에 코드를 적는 동작이 20%를 구성하고, 나머지가 80%를 차지한다. 프로그래밍은 어떤 면에서 글을 쓰는 일과 비슷하다. 창작활동을 하는 작가들은 1페이지의 글을 쓰기 위해서 10권의 책을 읽는다. 100잔의 술을 마시고, 수많은 밤을 뜬눈으로 상상하며 보낸다. 빈둥거리는 것처럼 보이는 시간 속에서 정보를 흡수하고, 생각을 정리하고, 습작을 하고, 그러다 영감이 몰려오면 글을 쓴다. 창조를 하는 것이다.
개발자들이 키보드를 두드리지 않는 80%의 시간은 산술적으로 따져도 20%의 시간보다 중요하다. 하지만 그것이 진짜 중요한 이유는 따로 있다. 개발자들이 감당해야 하는 개발환경이 빛의 속도로 변하고 있다는 사실이다. 개발환경이 너무나 빠르게 변하기 때문에 80%의 시간을 의미 있게 보내지 못하는 개발자는 키보드를 두드리는 20%의 시간에도 의미 있는 코드를 만들어낼 수 없다. 이게 핵심이다.
머신러닝, 클라우드, 모바일과 같은 커다란 변화를 생각할 것도 없다. 개발자가 사용할 수 있는 프로그래밍 언어만 해도 수십 가지가 쏟아져 나오고 있고, 데이터베이스, 오픈소스 라이브러리, 아키텍처, 개발방법론 등에 이르면 가능한 조합이 무제한이다. 이 중에서 무엇이 기술적 실체고 무엇이 상업적 광고인지, 무엇이 장기적 대세고 무엇이 일시적 유행인지 구별하는 것은 쉽지 않다. 하루종일 책상에 앉아서 키보드를 두드리고 집에 돌아가면 잠자기 바쁜 개발자라면 이런 변화에 어울리는 안목을 키우는 것이 불가능하다.
그런 개발자는 바깥 세상에서 무슨 일이 일어나는지 모른다. 관심도 없다. 대기업의 갈라파고스에 갇힌 개발자든 중소기업의 불가마에 던져진 개발자든 마찬가지다. 손은 키보드를 두드리지만 영혼은 안드로메다로 날아간 채 꾸역꾸역 하루를 보낸다. 이런 개발자가 작성한 코드 100줄은 컨퍼런스에 참여해서 피자를 먹으며 영감을 얻은 개발자가 작성한 코드 1줄보다 가치가 없다. 열정의 밀도, 혹은 상상의 밀도가 비교가 되지 않기 때문이다. 코드의 품질과 생산성이라는 측면에서 둘은 커다란 차이를 보인다.
컨퍼런스는 구체적인 기술이나 API를 배우러 가는 곳이 아니다. 새로운 영감을 얻는 곳이다. 그래서 책이나 인터넷 강의로 대체할 수 없다. 글을 쓰는 작가들이 친구들과 밤새 술을 마시며 새 글을 위한 영감을 구하는 것처럼, 코드를 작성하는 프로그래머들은 처음 만난 사람들과 피자를 나눠먹으며 영감을 얻는다. 다른 개발자들이 어떤 기술을 사용하는지, 어떤 것에 관심을 가지고 있는지 확인하며 업계 전반을 아우르는 넓은 시야를 키운다.
컨퍼런스에 참여하는 목적은 또한 동기부여(motivation)를 얻는데 있다. 반복되는 일상에서 벗어나 각지에서 모여든 업계 리더들의 이야기를 들으며 자기 발전의 방향을 포착한다. 열정으로 가득찬 업계 동료들과 이야기를 나누다보면 마음 속에 공부하고 싶은 욕구, 코드를 작성하고 싶은 욕구, 회사 일을 멋지게 해내고 싶은 욕구가 들끓게 된다. HR팀에서 직원들을 위한 교육을 아무리 반복해도 만들어낼 수 없는 강력한 동기부여가 발생하는 것이다.
관련기사
- 이름없는 개발자를 위하여2016.09.26
- IT, 비용인가 투자인가2016.09.26
- 실리콘앨리의 반격2016.09.26
- 개발자, 이직의 자격2016.09.26
물론 개발자의 입장에서도 지켜야 하는 윤리가 있다. 회사일이 실제로 너무 바쁘면 컨퍼런스를 가지 않는 것이 옳다. 컨퍼런스에서 다루는 내용이 회사에서 하는 일과 거리가 멀면 개인휴가를 쓰는 것이 맞다. 기본적으로 컨퍼런스에 참여하는 타이밍과 내용은 회사의 매니저나 HR이 충분히 납득하고 동의할 수 있는 수준이어야 한다. 무조건적인 것은 아니다. 하지만 어떤 개발자에게 참석하고 싶은 컨퍼런스가 있다는 것은 마음 속에 뜨거운 열정이 끓고 있다는 사실을 반증한다. 소프트웨어는 바로 그 열정을 먹고사는 나무다. 개발자의 열정이 뜨거울수록 소프트웨어는 높고 크게 자란다. 그래서 개발자의 컨퍼런스 참여는 회사에게 고마운 축복이다.
오는 11월 25일, 잠실에 있는 삼성SDS 사옥에서 열리는 나는 프로그래머다 컨퍼런스에 많은 개발자의 참여가 있기 바란다. 휴가나 반차, 혹은 병가를 내지 않은 개발자의 정상적인 참여 말이다. 아직 두 달이 남았지만 지금부터 가슴이 설렌다.
*본 칼럼 내용은 본지 편집방향과 다를 수 있습니다.