Karen
13k
2018-11-13 09:39:23
1
2087

개발자의 삶 - Domain Knowledge ① 기술 지식




소프트웨어 뿐 아니라 대부분의 분야에서, Developer와 End User와의 커뮤니케이션은 쉽지 않습니다. 왜 그럴까요? End User의 도메인 지식 (Domain Knowledge)이 부족하기 때문인데요. 도메인 지식에 대해 간단히 고민해 보았습니다. 물론 소프트웨어 사업 분야에 한정된 것입니다.



1) 조금 넓은 의미로 이해할 필요가 있다.


Wikipedia에 보면,

“도메인 지식이란, 인간활동 영역이나 자율적인 컴퓨터 활동이나, 다른 전문 분야에서 사용되어지는 유효한 지식을 말한다.”

(Domain knowledge is valid knowledge used to refer to an area of human endeavour, an autonomous computer activity, or other specialized discipline.)

고 기술되어 있습니다.


소프트웨어 기술에서 Domain Knowledge라 한다면, 목표 시스템이 운영되는 환경에 대한 지식을 이야기합니다.

하지만, 창업이나 사업을 준비하다보면 Domain Knowledge를 조금 더 “넓은 의미”에서 이해할 필요가 있습니다.



2) 무엇을 도메인 지식이라고 할까?


의류 브랜드 사장님이라면 컨셉만으로 사업 전략을 짜진 않습니다. 직접 만나보면 대부분 옷감, 나염의 종류, 세탁 방법, 무게와 재질 등에 해박한 지식이 있습니다. 이런 준비없이 의류 사업을 시작했다가 망한 경우를 주변에서 많이 보셨을 것입니다.


자동차 회사의 디자이너나 마케터도 마찬가지입니다. 엔진, 시트(재질, 질감, 내구성), 전기 제품 등에 대한 지식이나 이해도가 결코 낮지 않습니다. 반도체, 건설, 백화점, 유통업도 마찬가지입니다.


현장에서 그 업무 도메인을 안다 이렇게 이야기 할 때는 보통 ‘기술 지식’,  ‘업무 지식’,  ‘재무 지식’ 세 가지를 갖추었다고 생각합니다. 이 세 가지는 산업 분야마다 달라서 매번 새로 익혀야 하는 것들입니다.



3) 기술 지식이 직접 생산 수단이다.


시장을 돌아다니다보면, 종종 세부 계획이 기술팀 없이 수립되기도 합니다. 또는 그냥 “구현자”로서의 조언 정도로만 치부되는 경우가 많습니다.


하지만, IT 회사에서 기술 지식을 모르고 제품 기획이나 전략 수립이 가능할까요? 경험적으로 불가능합니다. 현장을 모르고 만든 전략은 반드시 ‘구현’이나 ‘성장’ 단계에서 고꾸라지고 맙니다.


소프트웨어는 소비자에게 “효용가치를 주는 제품”이라는 측면에서 하드웨어와 동일합니다. ‘기술 지식’이 ‘제품’ 자체를 의미하므로 ‘업무 지식’이나 ’재무 지식’에 못지 않게 중요합니다.


소프트웨어의 특성, 가치, 제작 방법, 제작 후의 유지 보수, 그에 필요한 기술 지식 등을 이해하지 못하고, 어떻게 좋은 전략과 디자인이 나올까요? 사업 논리에 묻혀 기술 논리를 등한시한다면 ‘제품’ 없이 제조업하겠다는 말과 동일합니다.



4) 개발팀이 일을 하는 당사자다.


여기서 개발팀이란 소프트웨어 개발자만 의미하지 않습니다. 디자이너, 기획자 등 ‘제품 제작 참여자 모두’를 말합니다.


  • 개발팀을 시키는 대로만 만드는 조직으로 인식하면 안 된다.
  • 개발팀이 의견을 능동적으로 개진할 수 있어야 한다.
  • 그들의 에너지를 어떻게 받아들여서 활용할 것인가를 고민해야 한다.


즉, 개발 지식이 없을 때는 개발팀 의견을 유도해서 듣고 고민할 필요가 있습니다. 그런데, 그것은 회사 분위기나 시스템에 따라 많이 좌우됩니다. 그리고, 그런 시스템을 만드는 것은 CEO나 CTO들의 역할입니다.



5) 사업을 이해할수록 기술 지식은 성숙해진다.


개발팀의 의견들이 사업적으로 쓸만해지려면, 비즈니스에 대한 이해가 선행되어야 합니다.


중동 지방의 기후 특성이나 고객 기호를 이해하지 못하고, 아랍 판매용 자동차를 만들 수는 없습니다. 중동 지방은 밤낮의 온도차가 크고 모래 바람이 심해, 도장 처리나 철판의 팽창, 수축에 대한 심화 지식이 필요하기 때문입니다.


제작자라면 사업 이해도가 높은 것이 매우 당연하면서 자연스러운 일입니다. 큰 회사건 작은 회사건 개발자들의 사업에 대한 이해가 없다면, 핵심과는 동떨어진 기술과 아이디어들로 많은 시간을 낭비하게 될 것입니다.



6) 기타


“도메인 지식”에 있어 업무 지식이나 재무 지식도 매우 중요합니다.

다음에는 IT 산업에서의 ‘업무 지식’과 ‘재무 지식’ 등에 대한 관련 포스팅을 해보겠습니다.






김수보 소장님 블로그 - IT의 중심에서 


4
2
  • 댓글 1

  • 로그인을 하시면 댓글을 등록할 수 있습니다.