becoming_a_better_programmer / 부록: 국내 개발자 8인의 이야기 / 2.7 글로벌 리더십을 가진 프로그래머 되기
2.7글로벌 리더십을 가진 프로그래머 되기
구글, 서주영님의 이야기
의사소통
혼자 개발하는 경우는 드물기 때문에, 효과적인 의사소통 능력이 매우 중요하다. 의사 결정, 회의, 코드 리뷰 등 다양한 상황에서 자신의 생각을 명확하고 논리적으로 표현할 줄 알아야 한다. 또, 기술적인 지식을 상대방의 이해 수준에 맞춰 효과적으로 전달할 수 있어야 한다. 또한 프로젝트 진행 과정에서 발생하는 요구 사항을 명확하게 파악하고, 다른 사람의 의견을 존중하는 태도도 필수적이다.
의사소통 능력은 어떻게 개발할 수 있을까?
- 고수에게 배우기: 어떤 것을 배우든 가장 효율적이고 속도감 있는 학습법은 그 분야에서 뛰어난 사람들로부터 배우는 것이다. 조직 내에서 인정받으며 탁월한 의사소통 능력을 지닌 사람들의 소통 방식을 주의 깊게 관찰하고 그들의 언어, 제스처, 패턴을 익히고 습득해 내 것으로 만드는 노력이 필요하다.
- 커뮤니티 참여하기: 프로그래머 커뮤니티를 통해 뛰어난 프로그래머를 만나고 그들로부터 많은 것을 배워야한다. 서주영님은 오픈 소스 활동을 통해 개발실력뿐 아니라 의사소통, 영어 실력도 도약했다고 한다.
- 세미나 발표하기: 지속적으로 자신을 소통해야 하는 상황에 노출시키는 것이 소통 능력 향상에 도움이 된다.
영어라는 날개 달기
글로벌 리더십을 발휘하는 프로그래머가 되기 위해서는 영어 소통에 익숙해야 한다. 개발도 잘하고 영어도 잘하는 프로그래머들이 많다. 팀을 위해 최고의 인재를 선발하는데, 시간이 조금 더 걸릴지언정 굳이 위험을 감수해 영어를 못하는 프로그래머를 뽑진 않는다.
리더십으로 성장하기
개발 경력이 쌓일수록 리더십이 중요하다. 프로그래머의 리더십은 단순히 기술적인 전문성을 지닌것을 뛰어넘어, 프로젝트의 목표와 방향을 명확하게 제시하고, 팀원들에게 동기를 부여하며, 프로젝트를 성공적으로 이끌어 조직의 목표를 달성하는 영향력을 말한다.
그렇다면 리더십은 어떻게 개발할 수 있을까?
- 고수에게 배우기: 역시 고수에게 배우는 것이 유효하다. 조직 내외에서 리더십을 발휘해 프로젝트와 팀을 성공적으로 이끈 리더들을 관찰하고, 자신의 능력으로 흡수한다.
- 전략적 사고: 특정 문제를 해결할 때, 지엽적인 부분이나 기술에 집착하지 않고 전체적인 프로젝트의 흐름을 이해하고, 문제 해결책의 장단점 및 영향을 의도적으로 파악하려고 노력해야 한다. 특히 다양한 팀이나 여러 팀원들이 엮여있다면 이들의 역학 관계를 이해하려고 노력한다.
- 리더의 입장에서 생각하기: 실제 조직 내의 리더 관점에서 사고한다.
맺음말
의사소통, 영어, 리더십 3가지는 주니어 시점에서는 당장 현실로 다가오지 않을 수 있으나 장기적인 커리어 목표 설정에는 반드시 필요할 것이다. 글로벌 리더십은 갑자기 생기는 것이 아니라 의식적이고 지속적인 노력과 고찰, 꾸준한 자기개발을 통해 점진적으로 향상되는 것이다.