나의 프로그래밍 공부법 - 제 1 장 적성과 센스

2012. 10. 21. 10:35기타/나의 프로그래밍 공부법

이 장에서 말하고 싶은 것은 지금 여러분이 하고 있는 일에 대해서 내가 얼마나 적성이 맞는지, 그리고 내가 그 일에 대해서 얼마나 센스가 있는지 생각해본 적이 있는가 생각해보자라는 것이다.


아이들이 어렸을 때 다양한 경험을 해볼 수 있도록 이것 저것 많이 시켜봐야 한다고들 한다. 그러한 의견에 필자는 진심으로 동의한다. 한번도 해본 적도 없는 일에 대해서 환상을 가지고 꿈을 키우다보면, 정작 그 꿈을 이루고 나서 크게 실망할 수도 있기 때문이다. 기대한 만큼 적성도 맞지 않고 센스도 없어서 꿈을 이루었음에도 행복하지 않기 때문이다. 


그래서 6살짜리 아들은 일주일에 한시간 정도 첼로를 배우고 있고, 11살짜리 딸은 얼마전부터 매주 일요일마다 3시간 반 동안 전문 미술 교육을 받고 있다. 물론 자신들이 하고 싶다고 해서 가르치고 있기 때문에, 우리 아이들은 이러한 교육을 자발적으로 즐겁게 받고 있다. 필자도 딸아이와 같은 나이인 11살에 어머니의 손을 잡고 컴퓨터 학원을 찾아 갔으며, 그 때부터 컴퓨터에 대한 충분한 경험을 쌓으면서 그것이 내 적성에 맞는지 그리고 내가 컴퓨터에 센스가 있는지를 확실하게 확인할 수 있었다.


여기서 필자가 주장하는 "센스"라는 부분에 대해서 모 편집자님께서는 꽤나 많은 거부감을 보이셨다. 뭔가 일반적인 이야기가 아니라고 생각하신 것인지, 아니면 운명은 타고 났다는 "운명론"과 같은 이야기라고 판단한 것인지는 모르겠다. 하지만, 내가 이야기하고 싶은 것은 나 자신이 어떠한 센스를 가지고 있는지 정확히 파악하는 것이 무엇보다 중요하다는 것이다. 그래서 이왕이면 나의 센스를 잘 활용할 수 있는 분야에서 더 많은 노력을 하는 것이 좋지 않을까 한다.


요즘엔 특히나 갈수록 꿈을 가지고 있지 않거나, 지극히 현실적인 꿈만 꾸는 사람들이 많아서 무엇이 자신의 적성에 맞는 일인지, 내가 어떤 센스를 가지고 있는지 관심도 없는 경우가 대부분이다. 단순히 돈을 벌기 위해 나의 적성이나 센스따위는 무시하고 사는 것이 과연 행복한지 묻고 싶다. 프로그래밍 공부도 역시 프로그래머라는 직업이 나의 적성에 맞는지, 그리고 프로그래밍에 대한 센스가 얼마나 있는지를 알고 시작해야 더 좋은 결과가 있을 것이라고 생각했기 때문에 1장부터 다루게 된 것이다.


------------

1 장 적성과 센스


“컴퓨터 프로그래머”는 컴퓨터 언어를 이용하여 프로그램을 설계하고 코딩 및 디버깅, 테스트 등의 과정을 거쳐서 컴퓨터 프로그램을 개발하는 사람을 가리킨다. 컴퓨터 프로그래머가 되기 위해서 특별하게 요구되는 학력이나 전공은 없는 편이지만, 소프트웨어 공학(전산학, 컴퓨터 공학, 정보통신공학 등)을 전공하면 취업에 유리하다. 컴퓨터 프로그래머는 수학적이고 분석적인 사고 능력, 창의력 등이 요구되며 컴퓨터 프로그래밍에 관련된 이론적인 지식과 실무 경험, 그리고 문제 해결을 위해서 책임성과 도전 정신이 필요하다. 컴퓨터 프로그래머는 2009년 기준 약 13만명 정도로 추산되며 여성은 10% 정도를 차지하고 있다. 학력별로 대졸이 70%이며 전문대졸과 석사이상이 각각 12% 정도이며, 월 평균 임금은 289만원이다. <출처: 한국직업능력개발원 “커리어넷”>


위의 내용은 컴퓨터 프로그래머라는 직업에 대한 일반적인 설명이다. 개발자(앞으로는 컴퓨터 프로그래머를 소프트웨어 개발자 또는 개발자로 통칭함)가 되고자 하는 이유는 저마다 다르겠지만, 일반적인 관점에서 본다면 “기술직”에 가깝기 때문에 관련 기술에 대한 사전 지식이나 경험이 상대적으로 많이 요구되는 전문 직종이기도 하다.


필자는 “천재는 99퍼센트의 노력과 1퍼센트의 영감으로 이루어진다”라는 에디슨에 말에는 전적으로 동감을 한다. 어떤 일을 하던지 “노력”이라는 요소는 성공의 가장 중요한 밑거름이기 때문이다. 그래서 필자는 “좋은 개발자는 타고나서 다듬어진 프로그래밍 센스와 한결같이 꾸준한 노력으로 만들어진다”라고 말하고 싶다. 적성이 맞지 않은 사람이 무조건 열심히 노력만 한다고 좋은 개발자가 되는 것은 아니기 때문이다.


무엇을 하든 그 일에 “적성”이 맞아야 하고, 그 일을 수행하기 위해서 필요한 “센스”가 있어야 한다. 가끔 보게 되는 TV에서 “생활의 달인”이라는 프로그램을 볼 때마다 느끼는 것이지만, 그 프로그램에 나오는 “달인”들은 다른 사람들과 비교했을 때 상대적으로 그 일에 적성이 맞아 보이고 그에 필요한 센스가 있다는 것을 느끼게 된다. 이처럼, 여러분도 프로그래밍의 달인이 되려면 개발자라는 직업이 적성에 맞는지 그리고 프로그래밍 센스가 있는지를 먼저 확인해보는 것이 가장 중요할 것이다.


다행히도 필자는 컴퓨터를 다루는 것에 대해서 남들보다 적성이 맞았고 다행히도 센스도 있는 편이었던 것 같다. 그래서 28년 동안을 컴퓨터와 함께 살아왔지만 한번도 컴퓨터를 이용하여 무언가를 하는 것이 힘들거나 어려웠던 적은 없었다. 오랜 기간 동안 프로그래밍을 해오다 보니, 새로운 기술이나 개념을 접할 때마다 수 많은 난관에 부딪쳐왔지만 좌절하지 않고 매번 그러한 어려움을 극복할 수가 있었기 때문에 지금의 필자가 만들어질 수 있었다.


만일 불행히도 필자가 프로그래밍에 적성이 맞지 않았고, 그나마 프로그래밍 센스 조차 없었다면 어떠한 인생을 살고 있을까 하고 생각을 해보면 막막한 기분이 든다. 마찬가지로 여러분들도 적성이 맞지 않는데도, 센스가 없음에도 불구하고 프로그래밍을 공부하겠다 라고 생각을 했다면, 지금이라도 당장 여러분에게 맞는 일을 찾아갈 것을 권유하고 싶다. 이 세상에는 우리가 생각했던 것보다 할 수 있는 일이 엄청나게 많고 “나”를 필요로 하는 곳은 어디엔가는 반드시 있기 때문이다. 매일 매일을 즐거운 마음으로 일을 하지 못하고, 마치 도살장에 끌려가듯이 어쩔 수 없이 앉아서 프로그래밍을 하고 있는 것보다는 나에게 맞는 일을 찾는 것이 훨씬 더 가치가 있다고 생각한다.

------