제 블로그나 제가 가입한 카페 쪽지등을 통해서 Programming에 입문을 하시려는 분들께 종종 받게되는 질문이 있습니다.
"제 실력으로 캐나다에 가서 일을 할 수 있을까요?"
"제가 프로그래머가 될 수 있을까요?"
"제 나이에 프로그래밍 공부를 하는게 문제 없을까요?"
"프로그래밍은 좀 타고난 천재들만 할 수 있는 것이 아닐까요?"
......
이제 약관의 나이에 접어든 어린 친구들에게도 이런 질문이 나오기도 하지만, 아무래도 30대에 들어선 이후 이민을 위해, 혹은 새로운 커리어를 위해 뒤늦게 Software를 공부하고자 하시는 분들이 특히 많이 하시는 질문 같습니다.
제가 그다지 훌륭한 사람도 아니고, SW역사에 한 줄을 남길만한 업적을 세우지도 않았고, 그냥 전 세계에 있는 수백만명의 SW 개발자 중 단 한명일 뿐이지만, 제 생각에는 누구나 할 수 있는 일이라는 것입니다.
저도 어린 시절 이러한 질문들을 스스로에게 던진 적이 많이 있었습니다. 10대 초반에 Basic이라는 언어를 처음 접하게 되어 혼자 이것 저것 해보던 시절에 컴퓨터 학원을 통해 다양한 자료구조 구현을 몸으로 익힌 친구들이 만들어내는 로직을 보면 이게 뭐지??? 싶었죠.
대학교에 입학을 한 이후에도 처음에는 눈에 띄지 않았지만 2~3학년이 넘어선 이후에는 다른 친구들과는 확실히 차별화된 코딩 실력으로 과제건 프로젝트건 척척 해내는 친구나 선배들을 보기도 했습니다.
그리고 회사에서 일을 할 때에도 정말 찾기 힘든 디버깅 문제도 술술 찾아내고, 복잡하고 지저분한 예외처리를 통해 풀어낸 문제들에서 진짜 root cause를 찾아내 간단하게 해결 해 내는 선배들을 보기도 했죠.
그럴 때 마다 저 역시도... "내 실력으로 계속 이 짓거리를 하면서 먹고 살 수 있을까?", "이 일이 과연 나에게 맞는 일일까?", "무언가 나만의 경쟁력을 찾아서 스스로를 차별화 시켜야 하지 않을까?" 많은 고민을 해왔죠.
하지만 지금에 와서야 느끼게 되는 저만의 답은, 세상의 모든 살리에르에겐 자신만의 아마데우스가 있다는 것입니다.
세상을 크게 변화시키는 사람은 아마데우스 같은 천재 일 것이지만, 세상을 움직이게 하고 이끌어 가는 사람은 살리에르같은 수많은 범인들입니다.
리누즈 토발즈나, 리차드 스톨만, 혹은 마크 쥬커버그 같은 천재가 아니라 해도 세상에는 수 많은 개발자들이 살고 있습니다. 그리고 세상에는 그리 많은 수의 천재가 있지 아니하기에, 몇몇 천재들이 만들어낸 새로운 이론이나 제품의 개발을 위해서는 수많은 범인들이 같이 참여해야만 하죠.
그리고 제가 직접 만났던 뛰어난, 천재성을 지닌 개발자 분들은 단순 천재성에 의지해서 그 위치에 오른 분들이 아니였습니다. 그 누구보다 열정을 가지고 많은 시간을 투자해 계속 연구하고 공부하신 분들이였습니다.
이미 천재적인 실력을 가지고 계신 분을 당장 옆에서 보기에는 그다지 많은 노력을 하지 않는 것으로 보일 수 있지만, 그렇다면 적어도 그 분들은 과거에는 그만한 노력을 했고 어느 정도 수준에 다다른 이후에 상대적 여유를 가지고 사는 것입니다.
이미 이쪽 업계에 올 생각으로 발을 딛기 시작하신 분이라면, 내가 해 낼 수 있을까 라는 고민을 하시기 보다는 그럴 시간에 조금 더 공부하고, 단순히 여러가지 API들을 한번 씩 사용해 보는데 그치지 말고, 각 언어별, 플랫폼별 내부를 들여다 보는 기회를 만드시고, 조금 더 생각하고 조금 더 연습하시는 것이 좋다고 생각되네요.
저도 아직 많이 모자라기에 남들보다 조금이라도 더 많은 시간을 일하고, 오늘 회사에서 close하지 못하고 온 문제들은 집에서 저녁이나 아침 식사를 하면서 한번 더 생각 해보고, 주변에 구루급인 지인들에게 의견을 구하며 계속 배우고 있습니다. 그리고 이러한 노력들은 알게 모르게 회사 생활에 큰 도움이 되죠. 본인 커리어에도... 그리고 연봉에도요 ^_^