2011년 11월 1일 화요일

같이 일하려면 적어라.

"협업은 말로 하는 것이 아니라 문서로 하는 것이다."

동서고금을 막론하고 개발자들은 적는 것을 싫어하고 또 잘 적지 못한다.

우리나라 개발자들은 그 정도가 훨씬 심하다.

우리나라에서는 회사가 크던 작던 상관없이 대부분 5년, 10년 개발한 제품도 변변한 문서가 하나 없는 것이 현실이다. 이것만 보더라도 협업의 수준이 얼마나 낮은지 알 수 있다.

협업이란
  1. 여러 사람들이 가지고 있는 지식과 경험의 도움을 받고
  2. 서로 머리를 더해서 더 좋은 생각을 이끌어내 내고 
  3. 일을 서로 나눠서 하는 것을 말한다.

이런 협업을 하는데 있어서 Template은 중요하지 않다. 협업이 필요한 내용이 공유를 할 수 있을 만큼만 적히면 된다. 적힌 것이 있어야 서로 공유를 하고 도움을 받을 수 있다. 만약 적히지 않고 머리 속에 있는 내용을 공유하려면 매번 말로 설명하는 수밖에 없다. 얼마나 피곤한 일인가. 또한 본인도 기억하지 못하는 사태가 벌어진다.

대표적으로 스펙과 설계는 협업이 매우 중요하다.
스펙과 설계를 제대로 적지 않고 리뷰를 하면서 계속 발전시켜나갈 수 없다. 한사람의 머리속으로 기억을 하면서 말로 공유를 하면 일을 서로 나눠서 개발하기도 어렵다.

하지만... 우리나라에서는 소프트웨어 개발을 할 때 변변한 문서도 없이 여러명이서 나눠서 개발을 잘도 한다. 물론 효율적으로 협업이 되지 않는다. 스펙과 설계가 불명확하여 개발자들이 코딩할 때 다 알아서 하고 나중에 통합도 잘 안된다. 스펙과 설계를 적기가 어려워서 최근에는 Agile 방법론이 인기를 끌고 있지만, 이것도 하나의 방법일 뿐이다. 

뭔가 적어야 할 때 Template을 꺼내놓고 틀에 맞춰서 적으려고 고민하기 보다는 서로 협의하고 확인을 받아야 하고 도움을 받아야 할 내용들을 적어서 수시로 리뷰를 하면서 진행을 해보라. Text 에디터로 Plain text로 적어도 아무 상관이 없다. 이렇게 효과적으로 적고 협업을 자주 하다보면 스펙과 설계를 어떻게 적어야 효과적으로 프로젝트가 진행이 될지 조금씸 감을 잡을 수 있을 것이다.

댓글 6개:

  1. 회의 소집 했더니, 필기도구도 안가지고, 맨 몸으로 옵니다...
    아이디어를 글로 적어보라고 하면, 못합니다...
    말로만 떠듭니다...
    그걸 그림으로라도 대강 그려보라고 하고, 다시 말해보라고 합니다... 전혀 다릅니다...

    그래도 계속 강제로 글 쓰게끔 합니다. 언젠가는 늘겠죠.

    답글삭제
  2. 디밥님 안녕하세요.

    제가 자주 하는 말입니다. "지금 말한걸 그대로 적으세요.", "제가 그대로 적어 드릴까요?"

    말한 것을 그대로 적는 것도 쉽지 않은 것 같습니다.

    회의록을 작성하고 follow up 하는 것을 당연히 여기는 문화는 또 그렇게 흔하지 않더군요. 이 부분은 대기업이 조금 더 낫더군요.

    답글삭제
  3. 개발자들은 원래 말보다 코드로 설명하는걸 좋아하거든요 ㅋㅋ
    단지 표현 수단으로서 인간의 언어/말 대신 프로그래밍 언어/코드로 표현을 하는 것일 뿐이에요

    답글삭제
  4. 구차니님 안녕하세요.

    Psudo 코드 같은 것을 적는 것도 좋은 방법입니다. ^^

    답글삭제
  5. 옳으신 말씀. 특히 인수 인계때 필기도구 안가지고 오는 용감한 분들은 이해가 안갑니다. 그런분들이 꼭 매뉴얼 안보고 자기 머리로 소스코드만 보더라구요. 자기머리로 어쩔라구. 항상 좋은 글 잘보고 있습니다. ㅋㅋ

    답글삭제
  6. 미물님 안녕하세요.
    혹시 한번 들으면 모든 것을 기억하는 천재가 아닐까요? 그렇다고 하더라도 다른 사람들을 위해서 적어야겠죠?

    답글삭제