엔지니어에게 기술은 중요한 것이 아니다?


새로운 시스템의  개발을 위하여 컨설팅 제안 업무를 진행하다 보면 고객들과 간혹 부딪히는 문제들 중에 하나가 바로 신기술의 적용 부분입니다. 신기술이라고해서  모든 문제를 해결해 주는 도깨비 방망이는 아니지만 대부분 지금까지 나온 문제를 새로운 방식으로 접근할 수 있게 하거나, 과거의 문제를 조금 더 편하게 처리할 수 있도록  하게 합니다.

몇몇 고객분들 역시 신기술 적용 부분에 대해서 동의하고 시스템에 적용되기를 바라지만, 그 분들 역시  기존 시스템과의 호환성이나 운영 시 유지보수 문제를 간과할 수 는 없습니다. 그래서 검증된 솔루션 또는 적용 사례를 찾게 되는 것이 현실입니다. 
이것이 꼭 나쁘다고 할 수는 없지만, 아무리 좋아도 검증되지 않은 방식에 대해서는 진행을 하지 않겠다는 것에 대해서는 긍정적으로만 볼 수도 없습니다. 아마도 이 부분은 국내 기업의 문화가 오랜 기간 동안 불신의 시대를 거치다 보니 (...사실 아직도 우리는 불신의 시대의 중심이 있는 것 같습니다만...) 문제가 발생하면 해결책보다는 책임을 지을 사람을 먼저 찾는 것이 우리의 현실입니다.  ‘돌다리도 두드려보고 건너가지는  않는다’는  말이 있을 정도로 레퍼런스가 없는 신규 방식에 대한 투자나  모험을 기피하는 문화의 탓도 있습니다. 

‘내가 모르는 것  =  나쁜 것 또는 위험한 것 ’라고  생각하는 분들도 적지 않습니다.  문제는 과거의 시스템의  호환성 문제 때문이 아니라 운영인력의 기존 개발 방식의 지난친 익숙함과 그로 인한 신기술에 대한 불신 때문에 신기술 적용을 거부하는 것 입니다.
예를 들어,  ASP.NET에서는 Code Behind기술을 이용하여  웹 UI와 개발자의 코드를 분리할 수 있습니다.  이 문제는 기존 ASP 의 스파게티 코드의 문제를 해결할 수 있는 획기적인 방법이었습니다. 개발자는 더 이상 웹 디자이너의 화면 변경에 따라 코드를 재작성하지 않아도 되고 웹디자이너 역시 개발코드 때문에 UI적인 손해를 보는 부분이 적어지게 되었습니다.  하지만, 기존에 ‘디자인과 코드가 섞여있는 것이 난 더 편해~’라고 생각하는 웹 개발자 때문에  ASP.NET이 확산되기 어려웠던 적이 있습니다.
이러한 문제는 비단 ASP.NET의 사례에만 있는 것이 아닙니다. 

생각해 보면, 이러한 문제들의 원인은 기술을 냉철한 머리로 받아들이 않고, 뜨거운 가슴과 몸으로 받아 들이기 때문에 발생하는 문제라고 생각합니다.  더욱이 IT부서의 기획담당자들은 신기술 도입 시점에 주변 사람들의 말뿐만 아니라 본인 스스로 냉철하게 판단하고 결정을 내리는 능력이 필요함에도 불구하고 책임의 회피와 기존의 익숙한 방식(...절대 편리함의 차원이 아님...)때문에 올바른 결정을 내리지 못하게 됩니다.

열심히 일을 하려는 과정에서 실수한 사람에 대한 사회적인 관용이 부족한 세상에서 살고 있는 엔지니어에게 기술은 중요한 문제가 아닐 수도 있을 것 같습니다.


Photo by Keon

by 키온 | 2009/07/28 17:18 | 일상다반사 | 트랙백 | 덧글(16)

트랙백 주소 : http://keon.egloos.com/tb/5024980
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented by 음.. at 2009/07/28 17:47
ASP.NET을 사용하고 있는 사람이지만, ASP.NET의 경우 코드와 태그의 분리 말고도 생소한 접근방식이 여럿 있어서 문제가 되었던게 아닌가 싶습니다. 즉 스파게티가 익숙해서 ASP만 쓰는 것이 아니란 말이지요.

컨트롤 기반, Event-driven 접근 방법이라든지, 데이터바인딩이라든지, Viewstate 유지 등이 지나치게 생소했던 면이 있지 않나 싶습니다.

오히려 ASP.NET MVC가 차라리 (개념을 지금보다도 훨씬 단순화해서) 처음부터 나왔어야 했다는 생각도 들고요..
Commented by 키온 at 2009/07/28 18:08
일반적인 경우의 예는 아니었고 제가 말한 특정한 사례도 있었다는 것입니다. 말씀하신대로 ASP.NET이 널리 사용되지 못한 이유는 여러 가지가 있었습니다.
Commented by xeraph at 2009/07/28 18:07
가령 동적으로 컨트롤을 생성하면서 이벤트 처리한다든가 하려면 어중간하게 배워가지고는 아예 원하는 기능 개발이 불가능하다는 문제가 있었죠 ㅎㅎ 옆에서 2주 넘게 손도 못대고 삽질하는걸 결국 명절 때 나와서 대신 땜빵쳤던 1인 (..)
Commented by 키온 at 2009/07/28 18:12
세랍님, 완전히 절묘한 예를 드셨는걸요...ㅋㅋ
Commented by xeraph at 2009/07/28 18:10
아 그런데 사진 멋있네요.. 어디서 찍으셨는지.. ㅎㅎ
Commented by 키온 at 2009/07/28 18:13
벤쿠버 박물관에서 찍은 사진입니다. 잘 보시면 사진속 거울에 비친 제 모습도 있다능~
Commented by 함부르거 at 2009/07/28 19:48
신기술을 적용한다면서 망쳐놓는 사례도 많기 때문에 그런 경향이 있는 것 같습니다. 어설프게 .NET으로 짠다고 엉망진창으로 짜 놓은 웹사이트 보수하느라 청춘을 다 보냈죠. ^^ 같은 기능을 하는 클래스들은 전부 엉망진창으로 나뉘어 있고, 데이터 흐름은 어디로 가는 지 종잡을 수도 없고...

대체로 신기술을 적용할 때는 충분한 시간을 가지고 검증과 학습을 통해서 진행해야 합니다만 한국 현실에선 저 충분한 시간이란게 가장 어려운 일이죠. ^^
Commented by 키온 at 2009/07/29 11:23
예, 충분한 시간을 가지고 검토하고 준비해야 하는데 그렇지 못하다보니...실패사례가 늘고... 또 문제가 반복되는것 같습니다
Commented by organizer™ at 2009/07/28 20:20
신기술이 만능이 될 수도 없지만, 적어도 구기술은 뭔가 검증된 구석이라도 있지요.

신기술, 신기술 하니까, 장터 구석에 있던 약장수가 생각납니다. (뭐든 다 해결한다고 하던...)
Commented by 키온 at 2009/07/29 11:24
문제는 검증된 구기술때문에 정말 좋은 신기술 마저도 거부하는 경우도 종종 있어서요.
Commented by 비로그인 at 2009/07/28 23:15
신기술이라고 해도 이름만 신기술로 포장되어 나온 구기술들이 많기 때문에 구기술에 대해 잘 알고 있는 사람이라면 신기술도 금새 배울수 있다고 생각합니다. 대개 신기술을 꺼려하는 것은 자신이 아는 문법이 달라서 그렇지 개념 자체가 천지차이로 나서 꺼려하는 건 아닌 것 같습니다.
Commented by 키온 at 2009/07/29 11:26
아주 일부의 엔지니어의 이야기지만 일종의 선입관이라고 해야 하나요...본질을 보면 어렵거나 아주 새롭지 않은데 무조건 익숙하지 않다는 생각때문에 거부하는 현상이 종종 있는것 같습니다.
Commented by 지나가던... at 2009/07/29 08:53
글에 적합한 사진 고르기가 쉽지 않은데, 왠지 잘 어울리네요. ^^
Commented by 키온 at 2009/07/29 11:27
뭐 그냥...우연하게...연결된 것 같습니다.
Commented by vsjun at 2009/07/29 09:30
고객의 입장에선 어떤 기술이냐에 따른 수치적으로 느껴지는 장점이 없을수 있지요. "새로운 기술이라 이런 저런 기능이 있습니다." 라고 이야기해도 수치적으로 생산성 향상이나 유지보수 비용이 줄어든다라는 식의 이야기는 어려운 편이지요.

그리고 엔지니어의 입장에서도 새로운 것을 배우고 시도하는 능동적인 마인드가 필요하지만 참 어려운 것 같습니다.
Commented by 초보 at 2009/07/29 13:33
얼마전 답답한 경험을 했습니다. 저는 자바를 주로 사용하는데 자바는 JDBC 드라이버를 통해 특정 DB의 클라이언트가 설치되지 않아도 DB 작업을 할 수 있습니다. 이건 대부분의 개발자들이 알고 계실겁니다.

새로운 서버를 설치하면서 옛날 서버를 살펴보니 버전 확인이 어려울 정도로 오래된 JDBC를 사용하더라구요. 그래서 '요즘은 굳이 DB 클라이언트를 서버에 설치할 필요가 없습니다. 특히 최신 JDBC를 쓰면 CLOB처리가 매우 간편해 집니다.'라고 말을 했더니 그게 검증된 기술이냐, 성능 차이가 많이 나느냐, 나는 처음 듣는다 라는 이야기를 들었습니다.

굳이 닷넷에 비유를 하자면...
개발자 : ODAC for .NET을 설치하면 더이상 ODBC를 사용할 필요가 없습니다.
다른사람 : 그게 검증된 기술이냐? 성능 차이가 많이 나느냐? 나는 처음 듣는다.

고객이 신기술에 대해 거부감을 느끼는 것은 어느정도 이해가 됩니다만 같은 분야에 종사하는 사람에게 10년 전으로 돌아간 느낌을 받았습니다.

:         :

:

비공개 덧글

◀ 이전 페이지          다음 페이지 ▶