본문 바로가기

DevOps.

개발자가 관리자로 전환을 고려할 때, 고민해봐야 하는 것들

728x90

 

다른 많은 직업과 달리 소프트웨어 엔지니어는 경력 개발을 위해 관리직으로 옮길 필요가 없다. 개발 작업에 전념하고 계속해서 기술을 다루고자 하는 개발자가 추구할 수 있는 수석 엔지니어, 특별 엔지니어, 아키텍처, CTO 등 다양한 진로가 있다.

 

그러나 관리직, 이른바 개발자 관리자에 관심이 있다면 자신의 전문 지식이나 결과물보다는 팀에 더 초점을 둬야 한다는 점에 유의해야 한다. 개발자 관리자의 주된 업무는 인력 채용과 유지, 육성, 팀으로 오는 요청의 이해와 조정, 달성 및 반복 가능한 실행 목표 설정, 기술 부채 관리 등이다.

1. 전혀 다른 일임을 인식하라

소프트웨어 엔지니어링 분야에서 관리자 대부분은 관리직으로의 전환을 경력 측면에서 위로 올라가는 것이 아니라 전혀 다른 스킬 셋과 우선순위가 필요한 수평 이동으로 생각한다. 그리고 실제로 그렇게 생각하는 것이 맞다.

 

엔지니어링 관리는 소프트웨어 엔지니어링의 대체 경력 진로다. 어떤 이유인지, 우리는 자신의 역할에 필요한 기술을 숙달했고 선임 엔지니어로 몇 년을 일해왔다면 다음 단계는 엔지니어링 관리자가 되는 것이라는 환상을 갖고 있다. 개발자 관리자가 된다는 것은 완전히 새로운 직무를 익히는 것을 의미한다. 프로그래밍과 프로그래머 철학에 관한 지식은 여전히 유용하지만 그것이 더는 본업이 아닌 상황이 된다.

 

코딩을 배우는 데 대부분의 시간을 보낸 사람은 이런 과정에서 상당한 적응 기간이 필요할 수 있다. 또 예전처럼 코드 베이스를 직접 다룰 일이 많지 않다는 사실을 인식하는 것은 새로운 개발자 관리자가 가장 배우기 어려운 부분이기도 하다. 그런데도 좋은 개발자 관리자는 여전히 팀이 산출하는 코드의 품질을 책임진다. 예전처럼 코드를 많이 쓰지는 않지만 의사 결정의 타당성을 확인하기에 충분한 정도의 감은 계속 유지해야 한다.

2. 관리직으로 가는 일반적인 경로를 파악하라

많은 개발자가 팀 내에서 특정 영역의 전문가로 확고하게 자리를 잡은 후 어느 순간 관리직으로 옮겨가는 상황을 맞이한다. '기술 수석'으로 임명돼 해당 기술에 초점을 둔 팀을 구성하라는 지시를 받는 경우도 있다.보통 회사는 기술적인 역량을 이유로 어떤 사람을 관리직에 앉힌다. 이때 가장 흔히 일어나는 실수는 유능한 기술자로 그 자리에 오른 만큼 자신의 복사판으로 팀을 구성해야 한다고 생각하는 것이다.

 

관리직으로 가는 또 다른 보편적인 경로는 선임 개발자가 인력 관리 쪽으로 차츰 기울거나 엔지니어링 담당 직원만이 아닌 더 폭넓은 비즈니스와 접촉하게 되는, 더 유기적인 경로다.

3. 다양한 경험을 추구하라

엔지니어링 부서 너머로 시야를 확대하는 것은 관리직으로 가는 길의 중요한 단계가 될 수 있다.

4. 핵심 관리 스킬을 먼저 개발하라

엔지니어링 관리자의 핵심 스킬은 개발 팀원과는 매우 다르다. 일반적으로 관리자는 관리자 개인의 코드 기여도가 아니라 팀의 업무 만족도와 성과에 따라 평가된다.

 

팀원들을 보살피고 예측 가능한 성과와 품질 수준으로 이들을 이끄는 역량 외에 고차원적인 통찰력도 지녀야 일급 관리자가 될 수 있다. 관리자는 단순히 실행하는 것이 아니라, 기업이 어떤 것에 접근하는 이유와 방법에 관한 전략과 비즈니스에 대한 이해도 겸비해야 한다.

 

문화를 만드는 측면도 있다. 리더의 역할은 단 하나, 사람들이 번성하는 조직을 만드는 것이다. 사람들이 즐거운 마음으로 일하고 자신이 책임지는 일을 이해하는 환경을 만들어야 한다. 나머지는 간단하다.

5. 커뮤니케이션을 마스터하라

모든 유형의 리더에게 가장 중요한 스킬은 당연히 커뮤니케이션이다. 팀과의 커뮤니케이션이 가장 중요하다. 그래야 팀이 내가 하는 말을 신뢰하고 이를 달성하고자 노력한다. 리더가 되기 위해서는 사람들이 나를 따르고 싶어 하도록 해야 한다.

 

유능한 관리자는 우선순위를 정확히 파악하고 비즈니스 요구사항과 기술적 실현 가능성 사이에서 균형을 잡는 능력을 갖춰야 한다. 여기서 커뮤니케이션 능력이 정말 유용하다.

 

사람들과 공감하고 기술적 관점과 비기술적 관점에서 모두 이야기할 수 있는 것이 중요하다. 결국 관리자가 하는 일은 사람을 관리하는 것이고, 여기에는 설명서가 없으므로 스스로 학습해야 한다. 이 과정은 어려울 때도 있고 시행착오도 겪게 되지만 중요한 경험이다.

6. 경계를 설정하라

엔지니어링 관리자에게 또 다른 중요한 스킬은 엔지니어를 위한 경계를 설정해 솔루션을 구매하기보다는 스스로 만드는 쪽으로 기울거나 신선하고 새로운 기술에 쉽게 현혹되는 이들의 자연스러운 성향을 억제하는 스킬이다.

7. 기업 내에서 주목받도록 행동하라

관리직을 염두에 두고 있다면 팀 내에서 그러한 성향과 역량을 보여주는 것만으로는 부족할 때가 있다. 조직 내 적절한 사람들의 관심을 끌어야 한다. 진전하기 위해서는 나를 진전시켜줄 사람들이 나의 존재를 알아야 한다. 스스로를 마케팅하고 팀원에게도 스스로를 마케팅하도록 독려하는 것이 좋다. 강연하거나 문서를 배포하고 뭔가를 발표하라. 유능한 관리자는 팀원이 자신이 하는 일에 관해 이야기하도록 적극적으로 독려한다.

 

결국 대면, 그리고 디지털 채널을 통한 적극적인 소통 의지가 중요하다. 피드백을 주고 새로운 위원회와 그룹에 참여하고 멘토를 찾고 더 폭넓은 비즈니스를 이해할 수 있는 위치로 스스로 들어가는 것 등이 모두 주목받기 위한 중요한 방법이다.

 

출처

개발자가 관리자로 전환을 고려할 때 알아야 할 7가지

 

728x90
반응형
LIST