책표지
“테크티컬 라이팅이 무엇인가. 그리고 왜 해야하는가.” 에 대한 답을 찾아가자.
이번엔 어떤 행사에 참여할까 고민하면서 ”festa” 를 탐험하던 와중, “한빛미디어” 가 눈에 들어왔다.
일단 구매하고 생각했다.
1) 한빛미디어라는 출판사에 대한 신용
2) 2)요즘 나의 관심사인 문서화(Documentation)
위 두 가지 이유로 참석했다.
강연해주신 분은, 이 책과 연관성은 없으신 것 같다.
(직무가 동일하다는 점을 제외)
“문서화를 하지 않으면, 몸이 두 개도 모자를 것이다.”
이 문장은 내가 생각한 내용이다.
평소에 위처럼 느끼고 있다. 나의 일을 자동화하는 것에 요즘 관심이 많다. 나는 모바일 앱 개발자이다. 그러다보니, 배포와 테스트를 자동화 하는 것 그리고 코드 생성이 자동화 대상이다. code_runner
니 Xcode Cloud
니, GitHubAction
를 사용하여 문제를 해결한다. 그러다 보면 하나가 아쉽다. 정성적인 업무나 환경상 자동화 툴을 사용할 수 없는 업무는 해결할 방법이 없을까? 그 고민에 대한 해결책이 나는 “문서화” 라고 생각한다.
만약 어떤 기획자가 신입부터 열심히 일단위 서비스 매출 통계 정리
를 보고해왔다고 가정하자. 그런 그에게 1 년이라는 시간이 흘렀다. 그리고 후임이 들어왔다. 그 기획자는 선임이 되면서, 더 많은 그리고 다른 일을 해야했다. 그래서 후임에게 일단위 서비스 매출 통계 정리
를 위임하려고 한다. 이 때, 어떤식으로 업무를 알려주고 싶은가.
1) “말로 전달해야 아주 디테일한 설명까지 할 수 있어. 이게 피드백도 바로바로 되고 시간도 짧고 얼마나 좋아.”
2) “내가 지금 말로 전달하더라도, 듣는이가 100% 이해할 수는 없어. 그리고 까먹으면 나에게 또 물어볼텐데, 그때마다 알려주는게 더 큰 커뮤니케이션 비용이야. 문서로 작성해서 주자.”
사실 위 사례에서는 1번이든 2번이든 큰 문제가 되진 않는다. 그런데, 이게 조직이 커진다고 생각해보자. 그리고 내가 회사에서 업무를 하나만 하는 것이 아니다.
선택은 자유지만, 가능하면 2버..ㄴ
나를 위해, 그리고 전달받는 이를 위해, 문서화는 좋은 해결책이다.
요즘은 LLM 기술덕택에 이 문서화가 언젠가 챗봇 형태로 변경될 날이 올지도 모르겠다.
문서화를 하면, 두 번 설명할 정보의 양이 줄어든다. 그리고 지식전달의 퀄리티 관리에 유용하다. 만약 조금 일하고 많이 쉬는 것을 좋아한다면 문서화가 좋은 방법이다.
문서화를 하지 않으면, 몸이 많아야한다. 회사를 다니면서, 그런 경험 있지 않은가? 나는 신입인데, 이 회사에 대해서 아는게 하나도 없다. 좋은 회사라면 OT 정도 진행해주겠지. 그렇더라고 현업의 일을 하려고 한다면 모르는 것들 투성이다. 그 무거운 분위기 속에서 선임에게 질문을 한다는 것은 어려운 일이다. 나는 이 당시 속으로 별별 생각을 다했다. ”사회의 차가움이 바로 이런 것인가…“, ”집에 간다고 할까?“ 등
무거운 분위기에서 새로운 신입이자 팀원에게 한 줄기 빛은 바탕화면에 설치된 하나의 문서일 수 있다.
“000주식회사 온보딩 가이드”
혹은 돔황챠!!
잠깐 다른 경험에 대해서 이야기하면, 군대이야기를 해볼까 한다. 군대는 이미지가 아주 수직적이고 권위주의적일 지 모른다. 그런데, 시스템은 이보다 친절할 수가 없다. 만약 독자분이 군대에 군인으로 입대하면 아래와 같은 일이 벌어진다.
이렇게만 보면, 군대라는 조직은 온보딩에 상당히 좋다. 실제로 좋다. 그리고 위 과정이 하나도 빠짐없이 문서화가 되어 있다. 그 문서 하나만 없어져도, 군부대에서 난리가 날 정도니까.
다시 회사에 새로 합류한 신입의 상황으로 돌아가보자.
이런 과정이 없다. 그러면 나는 질문이 생기면, 선임에게 물어봐야 한다. 자꾸 물어보니까 선임이 귀찮아 한다. 눈치가 보인다. 회사가 싫다. 출근하기 싫다. 그렇게 퇴사한다…
농담반 진담반으로 논리적 비약을 했다. 하지만, 반은 진담이다. 사소한 것이 나를 위로하기도 하지만, 사소한 것이 나를 가장 힘들게 하기도 한다.파스칼이 말함
3 가지 부채에 대해서 설명해주셨다.
“지식부채” 라는 것이 구체적으로 무엇일까?
내가 경험해본 지식부채 중 제일 힘들게 만드는 것이, 아무리 추론해도 맞출 수 없는 지식부채이다. 예를들면, 어느 회사에서도 A 라는 방식으로 처리하지 않지만, 특정 회사만 A 라고 처리해서, 누군구 알려주지 않으면 절대 모르는 지식을 의미한다.
이렇게 문서화되지 않고, 구두로만 전달되는 지식은, 임직원이 많아질수록 커뮤니케이션 비용이 커질 것이다.
여기서 강연자분이 소개해주신 방법을 나열해보겠다.
글을 잘쓰기 위한 3 단계
1. 예상독자 설정(독자분석)
2. 시나리오분석
3. 문제점에 대한 해결책을 제시
글을 잘쓰기 위한 5 가지 노력
1. 좋은 표현들을 읽고 듣는다.
2. 비문학적 글쓰기를 한다.
3. 기억이 안난다.
4. 테스트를 한다.(검토하라는 말이겠지)
5. 시각적으로도 청각적으로도 정보를 전달한다.
위에 좋은 말씀이지만, 개인적으로는 책에 있는 내용을 추천한다. 왜냐하면, 위에 설명해주신 방법은 일반화된 내용이라, 구체적인 행동으로 실천단계에서 분명이 서로 다른 방향으로 진행될 것이다.
반면에 책에서는 양식을 준다. 해당 양식을 바탕으로 내가 써보는 노력을 하는게, 바로 당장 실천해볼 수 있는 방법이라 추천한다. 고민할필요 없이 그냥 그 양식맞추면됨
내가 강연과 책을 경험하고 남은게 무엇인지 곰곰히 생각해봤다.
그리고 다시 생각해봐야할 만한 강연에서의 한 구절
제품이 안좋으면 문서도 좋을 수 없다.
개인적으로는 제품은 제품대로 문서는 문서대로 작성할 수 있다곤 생각하지만, 그것은 아주 피상적인 레벨일 것이다. 진짜 좋은 문서를 작성하려고한다면, 제품이 좋아야 할 것이다.
제품의 실행까지 10 단계로 구성된 제품보다 1단계로 구성된 제품이 문서도 깔끔하지 않겠는가.
나는 어떤 행동에 대한 정량화가 중요하다고 생각한다. 그래야 피드백이 가능하다. 피드백을 떠나서, 기본적으로 엔지니어라고 한다면, 정량적 측정은 기본이다.
정량적으로 측정하기 위해서는 어떤 지표를 만들어야하고 그 지표는 특정 개념에 대한 정의로 부터 나온다. 그러면 그 정의는 어디에 적어둘 것인가. 그게 바로 문서라고 생각이 된다.
문서 위에 나의 정량적인 개념들을 나열하고, 설명한다. 그리고 그 문서를 전달한다. 피드백받으며 개선된다. 새로운 문서가 만들어진다.
이 책에 좋은 내용들이 많은데 내가 아직 오픈소스 README 를 작성해볼 경험이 없어서 이해하지 못한 부분이 있는 것이 아쉽다.