개발자가 커뮤니케이션 능력이 좋다는 것은?
나는 University Makeus Challenge(UMC)라는 동아리에서 개발 팀을 모아 어플 개발을 진행해본 적이 있다. 개발 공부를 하는 기간이 끝나면 아이디어톤에서 나온 기획안에 지원을 하면 팀이 만들어져 개발을 진행하던 방식이었는데 다들 개발을 해본적도, Git으로 협업을 해본적도 없다보니 많은 어려움을 겪었다. 그나마 "소통"은 쉬울 줄 알았는데 그것도 아니였던 것 같다... 스터디 과제이기도 하고 진짜 개발자가 커뮤니케이션 능력이 좋다는 건 정확히 어떤 걸 의미하는지 알아보고자 한다.
개발자의 생명은 커뮤니케이션 능력
한 전문가의 칼럼에서 내가 궁금한 내용을 다루었다. 이 칼럼의 필자는 프로그래머(programmer)와 개발자(developer)은 비슷하지만 다르다는 것부터 지적했다. 코딩을 하는 사람을 프로그래머라 하지만 기업이나 큰 프로젝트에 속해 다른 사람들과 협업을 통해 코드를 만들어내는 사람을 개발자라고 얘기한다. 내 꿈도 정확히 말하면 개발자에 속하기 때문에 다른 사람들과 협업을 위한 소통이 정말 중요한 요소 중의 하나라고 생각한다.
칼럼의 필자가 말하는 커뮤니케이션 능력에 대해 알아보자.
- 명확하지 않은 이야기 속에서 지엽적인 것을 걸러내고 본질을 파악하는 능력
- 복잡한 논리나 추상적인 개념을 상대방이 이해할 수 있게 설명하는 능력
- 타인의 감정을 이해하는 공감능력
많은 사람들이 모이게 되면 원래 논의하고자 했던 쟁점에서 벗어나기 마련이다. 그런 상황에서 본질을 파악하는 능력이 요구된다. 대화에 집중하고 상대방이 말하고자 하는 바를 정확히 파악하는 능력이 가장 중요하다.
내 머릿속에선 정돈이 잘 되어 있지만 다른 사람들도 어느정도 내가 생각한 걸 알아들을 수 있게 하기 위해선 논리정연하게 설명할 수 있는 능력이 필요하다. 혼자 생각하고 끝내는 게 아닌 누군가에게 쉽게 설명하기 위한 연습이 필요한 부분이다. 특히 다른 개발팀이나 아예 비전공자인 기획자와의 소통이 있을 수도 있다. 그럴 땐 전문용어를 뽐내기보다는 상대방의 분야에 맞춰 이해하기 쉽게 전달해주는 것도 중요하다.
개발자는 기업에서 다른 사람들과 함께 일하는 사람들이다. 결국은 그들도 "사람"이기 때문에 일을 하면서 서로에 대한 공감능력이 필요할 것이다. 구현이 힘든 상황이라면 왜 구현이 안되는지 설명해줄 필요가 있으며 상대방이 요구한 기능들이 좋은 기능이라는 공감을 해주는 것도 좋다. 학교에서 공부만 잘하면 끝이 아닌 것처럼 사회생활을 하기 위한 어느정도의 사회성이 필요하다.
커뮤니케이션 능력 기르기
소통을 잘한다는 건 역시 많은 사람들을 만나보고 그 중에서 좋은 사람들에게 영향을 받는게 가장 좋은 것 같다. 많은 사람들을 만나보면서 세상엔 정말 다양한 사람이 있고 이런 사람들에게 기분 나쁜 말을 듣는다해서 화내기 보다는 어떻게 대처해야 할지 한번씩 생각해보는 것도 좋은 것 같다. 같은 의미여도 어떤 사람은 조금 직설적으로 어떤 사람들은 두리뭉실하게 상대방의 기분을 상하지 않게 잘 얘기하는 사람들도 있다. 주변에 성격 좋은 사람들이 어떻게 말하는지 주의깊게 보고 닮아가려 노력하고, 말하기 전에 다시 한번 생각해보는 그런 습관을 들이는 것이 좋을 것 같다.
추가적으로 자바를 사용하는 개발자는 javadoc을 이용해 소스파일을 문서화하여 개발시 다른 사람들이 참고하기 좋게 해주는 것도 좋은 커뮤니케이션 능력 중 하나이다.
참고 자료 :