2008. 2. 25. 02:32
사랑하지 않으면 떠나라! - 10점
차드 파울러 지음, 송우일 옮김/인사이트


누군가의 블로그에서 알게 된 이 책을 읽으면서, 참 여러가지 생각이 들었던 것 같다. 나 자신 IT업계에 지난 수년간 몸담으면서, 이 책이 끊임없이 나에게 해오는 질문들에 대해서 제대로 대답하지 못하는 나를 뼈저리게 느꼈기 때문이었다.

이 책의 원제는 "My Job Went to India!"이다. OffShore 정책에 따라 많은 미국의 IT R&D Lab이 인도로 옮겨가게 되면서, 미국의 많은 개발자들은 실직의 두려움과 공포가 느꼈을 것이다. 그런 격변하는 상황 속에서 어떻게 자기 계발을 통해서 자신의 일자리 아니 자신의 자존심을 지킬 수 있는지가 저자인 차드 파울러가 이 책을 쓴 동기라고 말할 수 있겠다. 여담이지만, 나도 이 책에서 언급하고 있는 인도 방갈로르에 동료들이 있다. 그 친구들이 영어를 얼마나 잘하는지, 일은 또 얼마나 잘 하는지 나는 사실 잘 아는 편이다.

하지만 이 책은 일자리를 뺏기고 지키고 이런 것이 중요하지 않다고 말한다. 즉, 일자리가 중요한 것이 아니라, 자신의 일에서 얼마나 즐거움을 느끼는가 그리고 얼마나 잘 하기 위해서 노력하고 있는가 이런 것에 중요하다고 말한다.

"일자리를 지키는 것이 여러분의 유일한 목적이라면 이 책은 별로 도움이 되지 않을지도 모릅니다. 대신 자신의 분야에서 탁월한 무언가가 되기 위해 노력한다면 이 책을 계속 읽어나가시기 바랍니다"
- 저자 서문에서

그런 의미에서 이 책은 무언가를 알려주는 책이 아니다. 거꾸로 이 책은 독자에게 계속해서 질문을 던진다. 당신은 진정한 전문가입니까? 당신은 유능한 프로그래머입니까? 당신은 다른 사람들에게 도움을 줄 수 있을만큼 지식을 갖추고 있습니까? 등등..

부끄러운 말이지만, 나는 거의 제대로 대답하지 못했다. 책을 읽는 내내 얼굴이 화끈거렸고, 후회가 들었다. 나는 정말 훌륭한 개발자도 아니었고, 다른 사람들에게 도움을 줄 수 있는 좋은 사람도 아니었고, 정말 진정한 개발자가 아니었던 것이다. 개발자인척 폼만 잡고 있었던 것이다.

나는 이 책을 읽고, 앞으로 아래 세 가지 방향으로 나를 발전시켜 나가기로 했다. 이 책을 몇 년 뒤에 다시 들었을 때, 이 책이 던지는 질문들에 대해서 자신있게 대답할 수 있도록 말이다.



넓고도 또한 깊어지자.

넓게 공부를 해야 한다. 현재 나는 MS 닷넷 기반 개발을 주로 하고 있지만, 자바나 루비같은 다른 최신의 기술들도 공부해야 한다. 개발자이지만, IT Staff들이 많이 사용하는 셸 스크립트나 Perl같은 것들도 공부해야 한다. 지식의 폭이 넓어질 수록, 내가 현재 사용하는 기술에 대해서 더욱 잘 이해를 할 수가 있다.

그리고 넓으면서 동시에 깊어야 한다. 여러 가지 공부를 한다고 해서 맛만 보는 수준은 되지 말아야 겠다. 흔히들 넓으면 깊지 못하고 깊으면 넓지 못하다고 말하지만, 내가 보는 한 그 말은 틀렸다. 넓어야 깊을 수 있고 깊어야 넓을 수 있을 것이다. 즉, 다른 기술들에 대한 넓은 이해를 바탕으로 해야, 현재 내가 주로 사용하는 기술에 대해서 깊게 이해를 할 수 있을 것이다. 또 반대로 내가 주로 사용하는 기술들에 대해서 깊게 이해를 하고 있다면, 넓게 공부하는 것이 좀 더 쉬워질 것이다.

"유능한 사람은 다양성을 찾는다. 그런 사람들은 새로운 것을 배우기 좋아하기 때문이다. 또한 이질적인 경험이나 환경을 통해 더 성숙하고 다재다능한 소프트웨어 개발자가 되기 때문이다"
- 04. 지성에 투자하라 중에서



남을 도우면서, 나 자신 또한 도와주자.

나는 그동안 혼자서 개발만 하는 사람은 아니었다. SI업체에 있을 때에는 주로 개발 표준이나 코드 리뷰 등의 업무를 많이 맡았기 때문에, 각종 프로젝트에서 그래도 가장 다른 개발자들과 접촉이 잦았던 개발자 중의 하나였다. 그것은 그다지 쉬운 일은 아니었다. 사실 가장 편한 일은 자기 것만 하는 것이다. 하지만, 나는 그런 경험들을 통해서 정말 많이 배울 수가 있었다. 다른 개발자들의 질문에 대답해주면서, 나 자신 관련 기술들에 대한 이해를 좀 더 깊게 할 수가 있었다. 결국 남을 돕는 것은 나 자신을 돕는 것이었다. 현재는 그런 공통적인 일을 하는 팀이 아니라 혼자서 할 수 있는 일을 하고 있지만, 계속해서 내가 먼저 다가가서 다른 개발자들의 문제를 같이 고민해주고 같이 해결해주고 싶다. 그리고 그 모든 것들은 나에게 다시 돌아올 것이다. 더 크게..

"무엇인가를 정말 배우고 싶다면 그것을 다른 누군가에게 가르쳐 보라. 어떤 것에 대한 이해를 구체화하는데 가장 좋은 방법은 다른 사람들이 이해할 수 있도록 그것을 표현하는 것이다. 말을 한다는 것은 단순한 행동이지만 불분명한 사고를 다루는 데는 특효약이다."
- 13. 멘토가 되라 중에서

진정한 신뢰받는 전문가가 되자.


나는 사실 전문가여만 한다. 고객이나 PM 등이 나에게 프로그램에 대한 질문을 할 때에는 기본적으로 이 사람에게 물어보는 순간 모든 고민이 해결될 거라는 생각을 갖고 하게 될 것이다. 하지만 내가 그런 질문들에 잘 응대를 했던가 하는 반성을 하게 되었다.

일단, 관련된 기술 전체에 대해서 폭넓게 이해를 해야겠다. 닷넷 개발자이지만, 윈도우 서버에서 어떻게 우리의 서버 응용 프로그램들이 동작하는 지 알려면 서버나 네트워크에 대해서 알아야 한다. 오피스 애드인 프로그램에 문제가 있다면, 오피스의 동작원리나 애드인을 어떻게 처리하는 지에 대해서도 알아야 한다. 우리 제품 그 자체뿐 아니라 제품이 동작하는 환경 전체에 대해서 전문가가 되어야 한다.

그리고, 우리 제품의 가장 밑바닥에 있는 비즈니스 로직에 대해서도 알아야겠다. 내가 현재 개발하고 유지보수를 하는 제품은 기업 회계 소프트웨어이다. 하지만 솔직히 말하자면 나는 기업의 회계나 재무 분석에 대해서는 현재 백치나 마찬가지이다. 진정으로 전문가가 되기 위해서 나는 당장 회계 기초 책을 사서 공부할 생각이다. 그러지 않고서는 나는 내가 만든 소프트웨어로부터도 소외를 당하는 것이다.

"그렇다면 소프트웨어 분야에서 전문가는 어떤 사람이어야 할까? 어떤 상황이 닥치더라도 80%정도는 '그거요, 해봤습니다.' 라고 말할 수 있고 나머지 20%의 상황에서는 기존 지식의 깊이를 사용해 문제를 처리할 수 있는 사람을 원했다. 상위 수준 추상화를 다루면서 그러한 추상화 구현의 세세한 부분을 이해할 수 있는 사람을 원했다. 앞으로 부딪힐 수 있는 문제를 풀 수 있다거나 풀지 못한다면 최소한 도움을 요청할 만한 사람을 아는 사람이 필요했다."
- 06. 진정한 전문가가 되라 중에서



이상, 내가 앞으로 나의 계발을 위해서 할 것들을 정리해보았다. 다 정리해보니 사실 눈앞이 캄캄하다. 앞으로 놀기는 글렀다.^^ 하지만, 이제 더 이상 후회하지 않기 위해서, 더 이상 내 직업에 부끄럽지 않기 위해서 오늘부터 노력할 것이다. 아니 지금 당장부터 노력을 할 것이다. 매일 아주 바쁘겠지만, 기분이 좋다. 상쾌하다. 앞으로의 나의 진로와 미래가 기대된다. 두근두근거릴 정도로...


마이크로소프트 Hero 블로그
Posted by kkongchi