(폴그레이험) 같은 대상, 다른 패러다임 - 해커, 프로그래머, 개발자, 그리고 엔지니어


굉장히 많은 용어로 프로그래머를 지칭하는 말이 많은 것은 사실이다. 개발자, 소프트웨어 엔지니어, 그리고 최근에 들어서는 해커까지. 폴 그레이험에 의견에 따르면, 프로그래머가 표준어이고 개발자와 소프트웨어 엔지니어는 좀 관료주의적인 회사에서 부르는 용어라는 말이다. 해커는 시스템을 거부하고, 저항적인 ? 그런 프로그래머를 말하는 것 같다. 

*내가 생각하는 프로그래머, 개발자, 소프트웨어 엔지니어 그리고 해커 *

개인적으로 프로그래머, 개발자, 소프트웨어 엔지니어 그리고 해커에 대한 의견은 그렇다. 프로그래머는 말 그대로 표준어다. 프로그램을 하는 사람을 프로그래머라고 한다. 흔히는 웹 프로그래머, 서버 프로그래머, 시스템 프로그래머, 모바일 프로그래머 이렇게 나누듯이 말이다. 

개발자. 문제의 용어다. 우리나라 대한민국에서는 개발자라는 용어는 좀 불쌍한 현실은 대변하는 용어 그자체다. 폐를 잘라낸다던지, 대우를 제대로 못 받는 그럴때 많이 나오는 용어다. 그럼에도 불구하고 상당수의 아니 대부분의 외국 및 국내 기업에서는 개발자 컨퍼런스라는 용어를 많이 쓴다. 프로그래머 컨퍼런스 들어봤는가? 대부분 개발자 컨퍼런스다. 내가 생각하는 개발자를 정의하는 문구는 새로운것을 개발하는 것을 즐겨하는 사람이라고 정의하고 싶다. 이것은 아래에서 설명할 소프트웨어 엔지니어와는 다르다. 

폴 그레이험은 소프트웨어 엔지니어 라는 말을 대단히 관료적인 회사에서 사용하는 용어라고 생각하고 있다. 나도 그것에 대해서 동의하는 바이긴 한데. 좀더 개발자와 다르게 생각하면. 내가 생각하고 소프트웨어 엔지니어는 소프트웨어 기술 및 프로그래밍 언어에 대한 깊은 고찰이 있는 사람들이다. 예를 들면, 자바 전문가? 닷넷 전문가? 이런 사람들 말이다. 개발자와 다른 가장 큰 차이는 새로운 어떤 것을 개발하는 일을 즐겨하느냐의 차이라고 생각한다. 소프트웨어 엔지니어는 그런 측면에서는 조금 개발자와는 덜하다고 생각하며, 반대로 개발자는 새로운 것을 개발하는 것을 좋아하지만 하나만 깊게 파는 것에 더 목적을 두는것은 아닌것 같다. 

마지막으로 해커. 사실 해커라는 용어는 국내에서는 해킹을 하는 사람이라는 의미인데, 네트워크 상에 침투해서 정보를 빼오거나 바이러스를 퍼트리는 사람들로 더 잘알려져 있다. 최근에 해커라는 용어는 기존 시스템에 반하는 사람, 새로운 방법을 찾는 사람이라는 용어로 더 인식이 되어가고 있는것 같다. 그러나 우리나라에서 해커라고 소개할수 있는 사람이 몇명이나 될까? (네트워크에 침투하는 해커 말고)

필자가 개인적으로 좋아하는 용어는 사실 개발자(Developer) 이다. 왜냐하면 새로운 것을 개발하는 것을 즐겨하는 것 자체가 재밌기 때문이고 나 역시 그러하기 때문이다. 좀더 개발자에 대한 인식이 좋아졌으면 좋겠다. 더불어서 프로그래머처럼 개발자도 앞뒤로 재밌는 용어가 붙는 개발자들이 많아졌으면 하는 바램이다.