2009년 07월 02일
소프트웨어 개발자(혹은 지망생)를 위한 설문 혹은 자가 진단
어제 대학 동아리 게시판에서 후배들과 '신입생 교육 과정' 개선에 대한 토론을 했습니다. 매년 컴퓨터공학과 동아리에 신입 회원들이 들어오면, 관례에 따라 먼저 C 언어를 가르칩니다. 그리고, 여름 방학이 되면 하나씩 주제를 정해서 미니 프로젝트를 수행하게 하죠. 대략 10년 넘게 변함없는 커리큘럼을 유지하다 보니 도저히 시대에 뒤떨어진 것 같아서, '개혁'의 필요성을 제기 했는데 여러가지 의견들이 나왔습니다.
커리큘럼 구성에 대한 의견 뿐만 아니라, 어떻게 가르쳐야 좋은지, 배우는 입장에서 아쉬운 점은 무엇이었는지 다양한 의견이 오고 갔습니다. 좀 더 밀도 높고 체계적인 강의를 해야 한다는 주장을 했는데 찬성하는 의견도 있고, 대학 1학년 때 너무 많은 것을 가르치면 안된다는 의견도 나왔습니다. 무엇보다 '흥미'를 느낄 수 있어야 한다는 주장도 강하게 제기 되었죠. 저는 '재미'라거나, '아마추어로서 느끼는 즐거움', '퍼즐을 푸는 듯한 가벼운 느낌' 만으로 프로그래밍 기술을 배우기는 어렵지 않느냐는 반론도 내 놓았습니다.
무엇이 옳은 걸까요? 각자의 경험과 상황, 그리고 의지가 다르기 때문에 정답을 찾기는 어렵겠지요. 그래서, 후배들 개개인에게 스스로를 돌아볼 수 있는 설문을 적어 봤습니다. 아래 항목들에 대해서 주욱 답을 쓰고, 스스로 적은 답을 몇번이고 다시 읽어 보라고 했습니다. 춤을 배우는 사람들이 거울 앞에서 춤을 추고, 자신의 모습을 돌아보면서 자세를 교정하듯이... 자신의 현재 생각을 적어놓고 객관적으로 들여다 보면서, 진심을 파악해 보는 것도 괜찮지 않을까 생각합니다.
지난 주말 MT를 가서 새벽까지 술을 마시며, 젊은 친구들의 생각들을 들어볼 기회가 있었습니다. 성적에 따라 전공을 선택하기도 했고, 공부를 더하면 무언가 찾을지 모르다는 막연한 생각 혹은 창작하는 즐거움을 따라, 각자 다른 이유 때문에 동아리에 가입한 후배들입니다. 한 배를 타고 가면서도 어디로 가는지 무엇을 향해 가는지, 관성에 따르거나 혹은 혼란스러운 친구들에게 별 다른 얘기를 해줄 수는 없더군요. 자신을 돌아보라고 할 밖에요.
1. 왜 프로그래밍을 공부하는가? Just for fun or Make money, To be a star?
2. 장차 어떤 것들을 만들고 싶은가? 게임, 서비스, 어플리케이션, 보안 등
3. 프로그래밍을 공부하면서 어떨 때 재미 혹은 흥분을 느끼는가?
4. 프로그래밍이 지겨울 때는 어떻게 자신을 달래는가?
5. 만일 전공을 다시 선택할 수 있다면 컴퓨터공학과를 선택하겠는가?
6. 프로그래밍 기술을 연마해서 성공(돈, 명예, 지위, 권력 등)할 수 있다고 보는가?
7. 만약, 성공한다면 어느 정도의 성과(돈, 명예, 지위 기타)를 얻을 수 있다고 보는가?
8. 자신에게 프로그래머 로서의 재능(talent)이 있다고 보는가?
9. 재능이 없다면, 어떻게 보완을 하고 있는가?
10. 먼 훗날 컴퓨터 관련 일을 하지 않게 된다면 어떤 일을 하고 있을까?
11. 프로그래밍을 공부하면서 스스로가 자랑스럽게 느껴진 적이 있는가?
12. 스스로 제대로 나아가고 있다고 생각되는가?
13. 불안하다면 어떤 식으로 개선해야 한다고 보는가?
14. 이런 설문은 의미가 있는 것일까? 혹은 의미 없는 것일까?
15. 공부하면서 가장 어렵다고 느껴지는 기술은 무엇인가?
16. 당신은 낙천적인 사람인가, 아니면 회의론자인가? 혹은 현실주의자인가?
17. 혼자서 공부하는 것이 편한가 아니면 함께 토론하는 것을 좋아하는가?
18. 새로운 것을 만들어 내는 것에 흥미를 느끼는가 아니면, 남이 만든 것을 즐겁게 사용하는가?
19. 돈과 여유 중에서 어느 쪽을 선호하는가?
20. 질문이 많아서 짜증나는가 혹은 흥미로운가?
절대로, 답변의 내용이 중요한게 아닙니다.
모든 질문에 답을 내놓은 후에 자신의 감정 상태가 어떤지 가슴에 손을 놓아 보시길 바랍니다.
답답하다면, 뭔가 해법을 찾아야 겠지요. (알고 보면 프로그래머 전용 심리 테스트 이거든요. ^^;)
# by | 2009/07/02 02:12 | History | 트랙백(2) | 덧글(3)



