프로그래밍 오리엔테이션

전공자와 비전공자

프로그래머라는 직업은 사실 하나의 단일 직업이 아니라고 생각합니다. CPU 인스트럭션 셋을 만드는 사람들, 프로그래밍 언어를 만드는 사람들, 운영체제를 만드는 사람들, 브라우저를 만드는 사람들, 웹사이트를 만드는 사람들 모두가 사실은 직업이 다른 것 같습니다. 이 사람들 간의 동질성이란 컴퓨터에 대한 이해가 필요하다는 것과 코드를 다루는 사람들이라는 점 정도이고 실제로 이들에게 요구되는 지식이나 재능은 꽤 다르거든요. 프로그래머라는 말은 너무 포괄적이기 때문에 이것을 좀 세분화시켜서 논의해보는 것도 유익할 것 같습니다.
 
컴퓨터를 다루는 이유는 문제를 해결하기 위해서 일 것입니다. 이 글의 맥락에서 저는 문제를 두가지로 나누고 있습니다. 하나는 해결해야 할 대상이 컴퓨터 자체인 경우이고, 다른 하나는 현실의 문제를 해결하기 위해서 컴퓨터를 사용하는 것입니다. 
 
전공자가 반드시 필요한 분야가 바로 컴퓨터 자체의 문제를 해결하는데에 있다고 생각합니다. 실제로 전공자들의 커리큘럼은 바로 컴퓨터 자체의 문제를 해결하는데 방점이 맞춰져 있습니다. 하지만 컴퓨터를 만들고 또 컴퓨터의 성능을 향상시키기 위한 많은 문제들이 이미 해결 되었기 때문에 전공자들이 해결해야 할 문제의 대상은 빠른 속도로 사라지고 있는 것 같습니다. 자연스럽게 현실의 문제를 해결하는 쪽으로 관심을 갖게 되겠죠.
 
현실의 문제란 사람들의 삶을 더 편리하게 해주는 앱이나 웹이나 게임과 같은 것들이 대표적일 것입니다. 생물학자가 DNA를 분석한다거나, 금융 거래 시스템을 구축하는 것과 같은 일도 여기에 속하는 문제일 것입니다. 해결해야 할 문제가 현실의 문제라면 그것을 누가해야 하는가에 대한 질문은 조금 복잡해지는 것 같습니다. 이를테면 금융 프로젝트를 한다고 했을 때 금융을 10년 했던 금융 출신의 1년차 비전공 개발자와 적금이 무엇인지 잘 모르는 10년차 개발자가 프로젝트에 투입된다면 누가 더 잘할까요?
 
물론 금융맨 출신의 개발자가 더 잘한다!고 할 수는 없을 것입니다. 그렇지만 전공자가 더 잘한다고 확신하기도 어렵습니다. 금융은 금융공학이라는 말이 있을 정도로 복잡한 하나의 분야니까요. 그렇다고 금융처럼 신뢰성이 중요한 분야를 컴퓨터에 대한 이해가 부족한 사람이 하는 것도 역시 문제가 있겠죠. 결국에는 협력이나 통섭이 중요해지는 것이 아닐까요? 컴퓨터 공학자가 금융을 배우는 것처럼 금융을 하는 사람들이 컴퓨터 공학을 배우는 것도 비슷한 일이라고 생각합니다. 
 
제가 아는 실력 좋은 개발자 중에는 비전공자들이 꽤 많이 있습니다. 이들은 자신의 문제를 해결하기 위한 방법으로 개발을 시작했습니다. 문제를 해결하니 문제는 사라지고 개발능력이 남았습니다. 그 능력을 살려서 개발자의 길을 가게 된 것이죠. 이 분들은 꾸준히 전공자들의 공부를 섭렵해서 컴퓨터에 대한 이해를 넓혀나아가고 있습니다. 거기에 자기 분야의 경험을 조화롭게 융합하고 있습니다.
 
반대로 제가 아는 실력 좋은 컴퓨터 엔지니어중에는 다른 분야로 이동한 경우도 많이 있습니다. 컴퓨터 공학을 전공하고 물리학자의 길을 간 분도 계시고, 명망있는 해커였는데 지금은 생명과학을 연구하고 계신 분도 있습니다. (개발자들에게 DNA와 RNA를 알려주고 싶다고 하십니다.) 이 분들은 자신의 전공을 버린 것이 아니고 오히려 컴퓨터에 대한 높은 이해를 바탕으로 해당 분야에서 두각을 나타내고 있습니다.
 
최초의 컴퓨터 공학자는 컴퓨터 공학자가 아니었을 것입니다. 수학자, 물리학자였습니다. 심지어 노암촘스키는 언어학자인데 이분이 프로그래밍 언어에 미친 영향은 심대한 것으로 알려져있습니다. 또 올바른 객체지향을 위한 길잡이인 디자인 패턴도 건축가들이 올바른 설계를 하기 위해서 고안한 방법론을 차용한 사례이고요.
 
현실은 다양한 분야들이 복잡하게 조우하는 교차로가 아닐까 싶습니다. 이러한 복잡성을 어떻게 조합해 나가는가는 컴퓨터를 전공해서 다른 전공자들의 문제를 해결하려는 사람이건, 컴퓨터를 이용해서 자기 전공 분야의 문제를 해결하려는 사람이건 중요한 숙제인 것 같습니다. 

댓글

댓글 본문
작성자
비밀번호
  1. Daniel Sun
    글 동영상 모두 쏙쏙 들어오게 참 잘하시네요~ 비전공자로서 감사드립니다. 이제 시작이지만 열심히 해보도록 하겠습니다 ㅎ
  2. nomad2gleam
    철학과 물리학을 함께 전공하고 (7년차) 처음 프로그래밍을 접하게 되어 공부하고 있습니다.
    단순하게 보일지 모르지만 정말 좋은 글이라 생각합니다.
  3. 완료!
    감사합니다~완료
  4. 폭스킴
    현실은 다양한 분야들이 복잡하게 조우하는 교차로~
  5. Gina Choi
    글이 한문장 한문장 명필이네요
  6. JustStudy
    고맙습니다
  7. Metanoia
    Convergence!!!

    May the force be with you!!!
  8. 오빠는다르다
    감사합니다!!!
  9. nouj
    융합학문에서 가장 핵심적인것이 프로그래밍이라고 생각합니다. 실제로 저도 전공은 유전자 쪽이지만 실제로 프로그래밍으로 전향해서 공부중입니다. 글에서 언급하신 개발자를 위한 DNA와 RNA 수업 궁금하네요 ㅎㅎ.
  10. 검사무운
    잘 봤습니다.
    전공자가 한길을 파면 생각의 폭은 좁아지고 깊어지지만
    다른길을 더하면 생각의 폭까지 넓어지는것 같습니다.
    많은 생각을 하게 하는 글 이었습니다.
  11. Frank
    고맙습니다.
  12. 바람과 나무
    감사합니다. 좋은글이네요
  13. 방랑객
    통섭과 협력.. 비전공자로서 잘 읽었습니다.
  14. 강구임돠
    좋은 말 씀 감사합니다. 공감합니다.
  15. Nacora
    잘봤습니다 ㅎㅎ
  16. Bongchul Ki
    감사합니다..
  17. 찍찍이얌
    감사합니다.
  18. jaballet
    짝짝짝! 대단히 공감합니다.
  19. 우옹우옹
    좋은 말씀 감사합니다
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기