29 September 2024

“코드 밖 커뮤니케이션”은 기술적 역량 못지않게 중요한 개발자의 소프트 스킬, 특히 커뮤니케이션 능력 향상에 초점을 맞춘 실용서다.

이 책의 가장 큰 강점은 실제 개발 현장의 구체적인 상황을 예로 들며 효과적인 방법과 피해야 할 사례를 명확히 대비시킨다는 점이다. 예를 들어, 시스템 아키텍처를 설명하는 다이어그램 작성에 있어 복잡한 구조를 계층별로 명확히 구분하고 직관적인 아이콘을 사용한 좋은 예시와 과도한 색상과 화살표로 혼란을 주는 나쁜 예시를 함께 제시한다. 이러한 비교를 통해 효과적인 시각적 커뮤니케이션 방법을 직관적으로 이해할 수 있었다.

또한 이 책은 개발자 간 소통에만 국한되지 않고 디자이너, 프로젝트 매니저, 비개발 이해관계자들과의 효과적인 의사소통 방법까지 폭넓게 다루고 있다. 특히 기술적 내용을 비전문가도 이해할 수 있게 설명하는 방법에 대한 조언이 인상적이었다.

원격 및 하이브리드 근무 환경에서의 커뮤니케이션 전략을 다루는 부분은 현 시대의 개발 환경을 잘 반영하고 있다. 비동기 작업 중심의 ‘원격 우선’ 정책이나 시간대 차이를 고려한 ‘대칭 이메일’ 사용 전략 같은 내용은 글로벌 팀과 협업하는 개발자들에게 실질적인 도움이 될 것으로 보인다.

특히 주목할 만한 부분은 ‘아키텍처 결정 레코드(ADR)’ 사용법과 ‘GitHub에서 문서를 코드처럼 관리하기’ 같은 실용적인 팁들이다.

파트별로 해당 내용을 정리해 보면,

PART 1 | 시각적 커뮤니케이션

이 파트에서는 다이어그램과 시각적 자료를 통해 복잡한 정보를 어떻게 명확하고 일관되게 전달할 수 있는지를 다룬다. 독자의 수준에 맞춘 추상화 레벨 조정, 시각적 일관성, 접근성을 고려한 디자인 등 실제 현장에서 자주 부딪히는 문제들을 해결하는 방법을 구체적으로 설명한다. 예를 들어, 시각적 정보의 과부하를 방지하고, 다이어그램의 흐름과 구조를 명확히 하여 독자가 쉽게 이해할 수 있는 자료를 만드는 방법을 다룬다.

PART 2 | 멀티모달 커뮤니케이션

여기서는 서면, 언어적, 비언어적 커뮤니케이션을 다룬다. 기술 문서에서 자주 저지르는 실수들, 메시지를 인코딩하고 디코딩하는 방법, 설득력 있는 커뮤니케이션을 위한 수사학적 전략을 통해 개발자가 더 나은 커뮤니케이터가 될 수 있도록 돕는다. 특히, 서면 커뮤니케이션에서 간결함을 유지하고, 기술 용어와 축약어 사용을 적절히 조정하는 방법은 코드 리뷰나 기술 문서 작성에서 매우 유용하다.

PART 3 | 지식 전달하기

지식 관리와 문서화의 중요성을 다룬다. 프로젝트의 일시적인 요구에 휘둘리기보다는, 지속 가능한 문서화를 통해 지식을 관리하고 공유하는 방법을 설명한다. 아키텍처 결정 기록(ADR)과 같은 도구를 활용해 팀 내에서 지식 자산을 효율적으로 관리하는 데 도움을 준다. 이를 통해 개발자는 단순한 코더를 넘어 팀 내에서 중요한 지식 전달자로 자리매김할 수 있다.

PART 4 | 원격으로 소통하기

원격 근무 환경에서 발생하는 소통 문제와 그 해결책을 다룬다. 동기식·비동기식 커뮤니케이션의 차이를 이해하고, 각 상황에 맞는 도구와 방법을 선택하는 것이 중요하다. 이 파트에서는 팀이 서로 다른 시간대에 있어도 효율적으로 협업할 수 있는 패턴과 전략을 제공한다. 이는 원격 근무 환경에서의 생산성과 협업 능력을 높이는 데 도움이 된다.

이 책은 단순한 이론서가 아닌 실제 현장에서 즉시 적용 가능한 실용적인 가이드북이다. 뛰어난 개발자란 우수한 코드를 작성하는 능력뿐만 아니라 그 코드의 가치를 효과적으로 전달할 수 있는 능력을 갖춘 사람이라는 점을 이 책은 잘 보여주고 있다.

이 리뷰는 한빛미디어의 나는 리뷰어다 이벤트를 통해 책을 제공받아 작성했습니다.