
프로그래밍의 범위가 넓은 만큼 개발자들은 협업을 중요시한다. 하나의 기능을 나눠서 개발하기도 하고, 코드 작성, 라이브러리 사용 등의 규칙을 정하는 것은 프로젝트 내부에서 빈번하게 일어나는 상황이다. 개발자들 간의 의사소통이 매우 중요한 만큼 의사소통이 어려운 경우가 두가지 있다. 첫번째는 모르는데 아는 척 넘어가는 사람이 있을 경우이고, 두번째는 동료와 프로덕트 (최종 결과물)을 고려하지 않는 사람이 있을 경우이다.
이런 상황을 피하기 위해서는 개발자 스스로 함께 일하고 싶은 동료가 되어야한다. 개발자들이 함께하고 싶은 동료로는 첫번째로 병목을 줄일 수 있는 사람이다. 병목을 줄인다는 의미를 알기 위해서는 먼저 프로젝트가 어떤 순서로 진행되는지를 알아야한다. 프로젝트는 기획자, 디자이너, 개발자 순으로 작업이 진행되기 때문에, 개발자의 일은 마감기한에 가까운 날에 시작된다. 그래서 기획단계, 디자인 단계가 끝나기전에 미리 개발을 준비하고 의사소통을 하면 병목현상을 줄이고 생산성을 높일 수 있는 것이다.
두번째는 팀플레이가 가능한 사람이고, 세번째는 함께 성장하기 위해 노력하는 사람이다. 이 두가지 모두 개발자 개인에 집중하는 것이 아닌 팀 동료와 함께 의사소통하며 팀 전체의 목표를 향해 달려갈 수 있는 사람이 동료로서 환영받을 수 있음을 뜻한다.
네번째는 근거를 통해 본인의 의견을 설득할 줄 아는 사람이다. 이 또한 의사소통 능력에 속하는 조건이지만, 근거가 없이 본인의 의견을 강요하는 것은 팀내에 불화를 발생할 수 있다는 점에서 중요하다. 다섯번째로 본인의 생각이 있는 사람을 동료로 함께하고 싶어한다. 여기서 본인의 생각이란 그저 관성적으로 개발을 하는 것이 아닌, 생태계의 흐름을 따라가면서 이에 대한 지식을 갖춰야한다는 것이다. 이런 지식은 성장할 수 있는 발판이 되고, 새로운 기술이 나오더라도 뒤쳐지지 않을 수 있다.
정리하자면 의사소통이 매우 중요하고, 의사소통을 기반으로 서로 협업해나가며 발전할 수 있는 개발자가 되는 것이 함께하고 싶은 동료가 되는 가장 빠른 길이다.