구글 엔지니어는 이렇게 일한다: 성공적인 엔지니어링 리더십 로드맵


이 포스트에서는 관리자와 테크 리드에 대해 알아본다.
두 역할의 차이점과 중요성, 그리고 개인 기여자(IC, Individual Contributor) 가 이들을 어떻게 이해하면 좋을지에 대해 알아본다.



1. 관리자와 테크 리드

주니어 개발자에서 시니어로 성장하다 보면, 자연스럽게 다음 커리어 단계를 고민하게 된다.
코딩 실력 뿐 아니라 팀을 이끄는 ‘리더’의 역할에 관심을 갖게 되는데 이 때 가장 많이 언급되는 2가지 직책이 바로 테크 리드(Tech Lead)와 엔지니어링 관리자(Engineering Manager)이다.

두 역할은 종종 혼용되기도 하지만, 사실은 뚜렷하게 다른 책임과 역할을 가진다.


1.1. 리더의 2가지 길: 엔지니어링 관리자와 테크 리드

팀의 성장을 위해서는 기술적 방향을 이끄는 리더와 팀원의 성장을 돕는 리더 모두가 필요하다.

엔지니어링 관리자는 어떻게(How) 팀이 일할지에 대한 환경을 만들고, 테크 리드는 무엇을(What) 기술적으로 만들어낼지 결정한다.


엔지니어링 관리자: ‘사람’에 집중하는 성장 촉진자

“우리 팀이 어떻게 하면 더 성장하고 행복할까?”

엔지니어링 관리자는 자신이 관리하는 팀의 구성원 모두(테크 리드 포함)의 성과, 생산성, 행복을 책임져야 한다.

엔지니어링 관리자는 팀과 팀원의 성장에 집중하는 ‘사람’관리자이다.

<엔지니어링 관리자의 주요 책임>

  • 팀원 성장 지원
    • 1:1 미팅, 커리어 코칭, 성과 평가 등을 통해 팀원의 성장을 도움
  • 팀 생산성 관리
    • 팀의 전반적인 업무 프로세스를 개선하고, 장애물을 제거하여 팀이 최고의 성과를 내도록 지원
  • 팀 행복과 문화 조성
  • 채용 및 팀 빌딩

엔지니어링 관리자는 직접 코드를 작성하기보다는, 팀원들이 최고의 코드를 작성할 수 있는 환경을 만든다.


테크 리드: ‘기술’에 집중하는 방향키

“우리 제품에 가장 적합한 기술과 아키텍처는 무엇일까?”

테크 리드는 제품의 기술적인 면, 즉 기술과 관련한 결정과 선택, 아키텍처, 우선순위, 성능과 일반적인 프로젝트 관리를 책임진다.

테크 리드는 팀의 기술적 방향을 이끄는 ‘기술 리더’이다.
이들은 팀 내에서 가장 뛰어난 기술적 통찰력을 바탕으로 올바른 기술적 결정을 내리고, 제품의 품질을 책임진다.

<테크 리드의 주요 책임>

  • 기술 의사결정
    • 새로운 기술 스택 도입, 설계 결정 등 기술과 관련된 최종 결정을 내림
  • 아키텍처 설계 및 관리
  • 코드 품질 유지
    • 코드 리뷰, 기술 표준 정립 등을 통해 팀의 전반적인 코드 품질을 높임
  • 기술 멘토링

보통 테크 리드는 엔지니어링 관리자에게 보고하며, 두 리더는 긴밀하게 협력하여 팀을 이끈다.


1.2. 하이브리드 리더: 테크 리드 매니저

테크 리드 매니저는 관리자와 테크 리드 역할을 한 사람이 하는 것이다. (소규모 팀)

소규모 팀이나 스타트업에서는 한 사람이 엔지니어링 관리자와 테크 리드 역할을 동시에 수행하기도 하며, 이를 테크 리드 매니저라고 한다.
이 역할은 사람 관리와 기술 리딩을 모두 책임져야 하므로 상당한 경험과 넓은 시야를 필요로 한다.
따라서 주로 경력이 오래된 시니어 엔지니어에게 맡겨지는 경우가 많다.


2. 유능한 개발자의 성공적인 리더 전환법

“저는 코딩이 좋아요. 절대 관리자는 되지 않을 거예요.”

많은 뛰어난 개발자들이 한번쯤은 이런 다짐을 하지만, 아이러니하게도 주어진 역할을 성공적으로 완수하고 동료들의 신뢰를 받는 에이스일수록 어느 순간 팀을 이끄는 ‘리더’의 자리를 제안받게 된다.

여기서는 원치 않았지만 리더의 길에 들어선 사람들이 겪는 두려움의 실체와 이를 극복하고 ‘좋은 리더’로 거듭나기 위한 핵심 원칙인 ‘섬기는 리더십’에 대해 알아본다.
이 글은 여러분을 관리자로 설득하기 위함이 아니라, 최고의 리더들이 왜 겸손, 존중, 신뢰를 바탕으로 팀을 ‘지원’하는지에 대한 안내서이다.


2.1. 왜 우리는 ‘관리자’가 되기를 두려워할까?

‘관리자’라는 단어는 아래와 같은 이유로 개발자에게 종종 부정적인 뉘앙스를 풍긴다.

리더는 팀을 위해 존재하는 사람이다.
개인 기여자(IC, Individual Contributor)에서 리더로의 전환은 단순히 직급이 바뀌는 것이 아니라, 나의 성공 기준을 ‘개인의 성과’에서 ‘팀의 성공’으로 바꾸는 정체성의 전환이다.


1)”오늘 한 일이 없는데?” - 성과의 기준이 바뀐다.

코딩으로 가득 찬 하루의 끝에, 우리는 작성한 코드, 해결한 버그, 완성한 설계 문서를 보며 뿌듯해한다.
눈에 보이는 결과물로 나의 기여를 증명할 수 있기 때문이다.

하지만 관리자의 하루는 다르다.
미팅, 면담, 보고서 작성, 갈등 중재.. 하루종일 바쁘게 움직였지만 퇴근길엔 “오늘 내가 뭘 했지?”하는 허무함이 밀려오기 쉽다.

이는 매일 사과를 선별하던 전문가가 바나나 농장으로 옮긴 뒤 “오늘은 사과를 하나도 선별하지 못했군” 하며 푸념하는 것과 같다.
관리자의 성과는 ‘내가 생산한 코드’가 아니라, ‘팀이 최고의 성과를 내도록 만든 환경’으로 측정된다.

바나나를 재배하면서 사과 개수를 세는 함정에 빠져서는 안 된다.


2)”내가 잘할 수 있을까?” - 피터의 법칙(Peter Principle)의 함정

관리자가 되기를 꺼리는 또 하나의 이유는 ‘피터의 법칙’에 대한 두려움이다.

피터의 법칙(Peter Principle)

조직의 구성원은 자신의 무능력이 드러나는 직급까지 승진하는 경향이 있다.

직원이 현 직무에서 성과를 잘 내면 승진함 → 상위 직급다른 역량을 요구함 → 결국 능력을 발휘하지 못하는 자리에 도달함 → 비효율적인 관리자가 많아지고, 조직 성과가 저하됨

예) 개발자로 성과가 뛰어난 사람이 팀장으로 승진했는데, 팀 리딩이나 소통이 약해 팀 분위기가 무너짐

승진 기준을 성과에서만 판단할 것이 아니라, 다음 직무에 필요한 역량까지 고려해야 함
관리직 교육이나 리더십 코칭이 필요함

즉, 뛰어난 개발자였던 사람이 승진을 거듭하다 결국엔 형편없는 관리자가 되어 성장이 멈춘다는 것이다.
이는 개인의 불행일 뿐 아니라, 조직 전체를 무능한 리더들로 채우는 비극으로 이어질 수 있다.

참고로, 구글과 같은 기업들은 이 법칙을 피하기 위해 직원을 다음 직급으로 승진시키기 전, 현재 직급 이상의 역할을 성공적으로 수행하는지 일정 기간 지켜보며 역량을 검증하는 장치를 마련해두고 있다.


  • 두려움을 인정하자
    • 코드를 짜지 못하는 허무함, 무능한 관리자가 될지도 모른다는 불안감은 자연스러운 감정이다.
  • 성과 측정 기준을 바꾸자
    • ‘내가 만든 코드’가 아니라 ‘우리 팀의 성공’을 목표로 삼아야 한다.
  • ‘관리’가 아닌 ‘지원’을 하자
    • 최고의 리더십은 겸손, 존중, 신뢰를 바탕으로 팀의 성공을 돕는 섬기는 리더십에서 나온다.

만일 당신이 리더의 자리를 제안받았다면, 그것은 당신이 뛰어난 역량과 신뢰를 가진 사람이라는 증거이다.
그 신뢰를 바탕으로 팀을 ‘관리’하는 사람이 아닌, 팀을 위해 ‘존재’하는 리더가 되는 연습을 해야 한다.


2.2. 좋은 리더의 길: ‘관리’가 아닌 ‘지원’

두려움을 안고 관리자 역할을 처음 맡았다면 무엇보다 ‘팀원들을 관리하려는 충동’을 이겨내야 한다.
새로 부임한 리더가 의욕에 차서 팀원들을 능동적으로 ‘관리’하려 들 때, 그 결과는 보통 재앙으로 끝난다.
마이크로매니징, 저성과자 방치, 만만한 사람 채용 등의 병폐는 모두 여기서 시작된다.

진정한 리더십은 군림하는 것이 아니라 섬기는 것에서 나온다.

섬기는 리더십(Servant Leadership)
섬기는 리더가 행하는 ‘관리’는 오직 팀의 기술적, 사회적 건강을 관리하는 것뿐이다.

섬기는 리더는 겸손, 존중, 신뢰를 바탕으로 팀을 위한 환경을 조성한다.
리더의 역할은 명령하고 통제하는 것이 아니라, 팀이 앞으로 나아가는 길을 평탄하게 만드는 것이다.

<섬기는 리더의 행동 강령>

  • 장애물 제거
    • 팀원이 혼자서 해결할 수 없는 관료적, 기술적 장애물을 대신 해결해 줌
  • 합의 촉진
    • 논쟁이 길어질 때 팀이 생산적인 방향으로 합의에 이르도록 도움
  • 환경 조성
    • 누군가 야근할 때 저녁을 챙겨주는 사소한 배려부터 시작해, 팀이 업무에만 집중할 수 있는 최상의 환경을 만듦
  • 궂은일 담당
    • 팀이 나아가는 길 앞의 균열을 메우고, 필요할 때 조언하며, 직접 손을 더럽히는 일을 주저하지 않음

3. 당신은 ‘감독관’인가, ‘조력자’인가?

“관리자는 밥맛이야.”

많은 엔지니어들이 ‘관리자’라는 직책에 대해 한번쯤 가져봤을 법한 생각이다.
이러한 부정적인 인식은 어디서 시작되었을까?
놀랍게도 그 뿌리는 산업혁명 시대의 공장으로 거슬러 올라간다.

팀원들의 손발을 통제하는 ‘감독관’이 아니라, 그들이 마음껏 뛸 수 있도록 든든한 울타리가 되어주는 ‘조력자’가 되어야 한다.

여기서는 구시대의 ‘감독관’과 오늘날의 ‘엔지니어링 관리자’가 어떻게 다른지 알아보고, 팀의 잠재력을 최고로 이끌어내는 현대적 리더십의 핵심에 대해 알아본다.


3.1. 우리가 ‘관리자’를 싫어했던 이유: 당근과 채찍의 시대

과거 공장들은 숙련되지 않은 고용자들을 고용해 기계를 돌렸다. 노동자들은 언제든 다른 인력으로 대체 가능한 ‘부품’으로 여겨졌다.
이들을 관리하기 위해 탄생한 ‘감독관(관리자)’은 작업 환경을 개선하거나 노동자를 존중할 필요를 느끼지 못했다.
그저 당근(보상)을 흔들어 동기를 부여하고, 일을 못하면 채찍을 휘두르면 그만이었다.

하지만 이 당근과 채찍 방식은 창의적인 사람의 생산성을 떨어뜨린다는 사실이 수많은 연구를 통해 증명되었다.

  • 단순 노동 vs 지식 노동
    • 수년 경력의 조립라인 숙련공은 신입 교육에 며칠이면 충분할지 모른다. 하지만 거대한 코드베이스를 다루는 소프트웨어 엔지니어를 대체하려면 새 인력이 팀의 속도를 따라잡는 데 수개월, 혹은 그 이상이 걸린다.
  • 지시 vs 자율
    • 소프트웨어 엔지니어는 지시받은 대로 일하는 사람이 아니다. 생각하고, 창조하고, 문제를 해결할 자양분과 시간, 그리고 공간이 필요한 지식 노동자이다.

3.2. 오늘날의 엔지니어링 관리자: 팀원을 ‘어른’으로 대하는 기술

사실 ‘관리자’라는 용어 자체가 시대에 뒤떨어진 이름일지도 모른다.
이 단어는 리더에게 팀원들의 업무를 세세하게 ‘관리’해야 한다는 강박을 심어주고, 이는 결국 부모-자식 관계 같은 비정상적인 역학을 만든다. 관리자가 부모처럼 간섭하면, 직원들은 아이처럼 수동적으로 반응하게 된다.

“전통적인 관리자는 일을 ‘어떻게’ 처리할지를 고민하는 한편, 훌륭한 관리자는 ‘무슨’ 일을 처리할지를 고민한다. 그리고 ‘어떻게’는 팀을 믿고 맡긴다.”

이것이 현대적 엔지니어링 관리자의 핵심 철학이다.
관리자가 팀의 전문성을 믿고 자율성을 부여한다는 명확한 신호를 주면, 팀원들은 그 신뢰에 부응해야 한다는 긍정적인 책임감을 느끼고 ‘어른’처럼 행동한다.


3.3. 실패해도 괜찮은 팀 문화

성공적인 프로젝트 뒤에는 수많은 도전과 실패가 숨어있다.
하지만 많은 팀이 실패를 피하는 데 급급한 나머지, 잠재력을 전부 발휘하지 못하는 ‘작은 성공’에만 안주하곤 한다.

리더의 가장 중요한 역할 중 하나는 팀원들이 안심하고 도전할 수 있는 ‘심리적 안정감’을 만들어주는 것이다.
여기서는 실패를 비난이 아닌 성장의 기회로 삼고, 더 큰 성공을 쟁취하는 팀 문화를 만드는 방법에 대해 알아본다.

사람들은 본능적으로 위험을 피하려 한다. 특히 자신의 실패가 비난이나 불이익으로 돌아오는 환경에서는 더욱 보수적으로 변한다. 하지만 혁신은 언제나 위험을 감수하는 데서 시작된다.

“불가능한 목표에 도전하면 실패할 가능성은 그만큼 크다. 하지만 불가능에 도전해 실패하면, 성공이 확실하리라 생각한 일을 성취했을 때보다 십중팔구 훨씬 큰 것을 얻는다.

팀에 심리적 안정감이 있다면, 팀원들은 ‘실패하면 어떡하지?’라는 걱정 대신 ‘어디까지 해볼 수 있을까?’라는 기대를 품고 더 큰 위험에 기꺼이 맞선다.
이것이 바로 평범한 팀과 혁신적인 팀의 결정적인 차이이다.

리더의 역할은 팀이 실패해도 괜찮다는 믿음을 심어주는 것이다.

“실패해도 괜찮다!”

이 한 마디가 팀의 문화를 바꿀 수 있다. 물론 똑같은 실수를 계속 반복하는 것은 논외이다.
여기서 말하는 실패는 ‘성장을 위한 빠른 배움의 기회’이다.

프로젝트 초기에 빠르게 실패하면, 적은 비용으로 치명적인 문제를 발견하고 방향을 수정할 수 있다. 잃을 것이 적을 때 실패하는 것은 오히려 이득이다.

실패는 비난의 대상이 아니라 분석의 대상이 되어야 한다.
‘누가 잘못했나?’가 아니라 ‘우리는 무엇을 배웠나?’라고 질문을 바꾸는 순간, 실패는 귀중한 자산이 된다.

<리더의 실패 관리 가이드>

  • ‘개인의 실패’가 아닌 ‘팀의 경험’으로 만들라
    • “팀으로서 함께 실패하고, 실패로부터 함께 배운다.”
    • 누군가 실수했을 때 그 사람을 지목하는 것은 최악의 방법이다. 설령 한 명의 실수로 보일지라도, 그 배경에는 부족한 코드 리뷰 문화, 불명확한 요구사항 등 팀 전체의 문제가 있을 수 있다.
    • 성공적인 리더는 실패를 특정 개인의 책임으로 돌리지 않고, ‘우리 팀이 이 경험을 통해 더 강해지려면 무엇을 개선해야 할까?’라는 관점으로 접근하여 팀의 시스템을 보완하고 집단적인 성장을 이끌어낸다.
  • 칭찬은 공개적으로, 비판은 개인적으로
    • 특정 개인이 이룬 성과는 팀 전체가 보는 앞에서 구체적으로 칭찬하자. 이는 당사자에게 큰 동기부여가 될 뿐 아니라, 다른 팀원들에게도 ‘어떤 행동이 좋은 평가를 받는가’에 대한 명확한 기준을 제시한다.
    • 실패나 개선점에 대한 피드백은 1:1로, 다른 사람이 없는 공간에서 ‘건설적인’ 태도로 전달해야 한다. 상대방의 인격이 아닌 행동과 결과에 초점을 맞춰, 해결책을 함께 고민하는 방식으로 접근해야 한다.
  • 절대 공개적으로 망신주지 말라
    • 팀원이 실패했다면 다른 팀원들은 이미 그 사실을 대부분 알고 있다. 리더가 공개적인 자리에서 그 실패를 다시 언급하며 질책하는 것은 긁어부스럼을 만드는 일이다.
    • 이는 심술궂고 잔인한 처사일 뿐만 아니라, 당사자를 방어적으로 만들어 성장의 기회를 완전히 차단해버린다.
    • 또한, 그 모습을 지켜보는 다른 팀원들에게는 ‘이곳에서는 절대 실패하면 안 된다’라는 공포심을 삼어주어 팀 전체를 얼어붙게 만든다.

실패는 비난의 대상이 아니라, 빠르게 배울 수 있는 최고의 기회이다.
리더는 ‘함께’ 실패하고 배우는 경험을 설계해야 한다.


4. 관리자 안티패턴

훌륭한 팀을 만들고 싶다는 선한 의도를 가진 리더조차 자신도 모르게 팀을 병들게 하는 함정인 안티 패턴에 빠지곤 한다. 이런 안티패턴은 단기적으로는 리더에게 안정감을 줄지 몰라도, 장기적으로는 팀 전체의 생산성과 사기를 갉아먹는 독이 된다.


4.1. 나보다 부족한 사람만 고용하기

리더 개인의 안정을 위해 팀의 성장을 포기하는 행위이다.

관리자로서 자신의 자리가 불안하다고 느껴질 때, 가장 쉽게 택할 수 있는 유혹이 있다. 바로 나의 권위나 위치를 위협하지 않을, 내가 완벽히 통제할 수 있는 사람들만 고용하는 것이다. 나보다 실력이 부족하고, 의욕이 적으며, 더 위태로운 사람들로 팀을 채우는 전략이다.

그 결과를 어떨까? 리더의 자리는 아주 공고해질 것이다. 하지만 모든 일은 리더인 당신이 직접 처리해야 한다. 팀은 당신이라는 목줄에 묶인 강아지처럼, 당신이 끌어주지 않으면 한 발짝도 나아가지 못하는 수동적인 조직으로 전락하고, 팀의 생산성은 나락으로 떨어진다.

진정한 리더는 정반대의 길을 선택한다. 나보다 똑똑하고, 심지어 나를 대체할 역량을 갖춘 사람을 적극적으로 찾아 나선다. 물론 이것은 매우 어려운 결정이다. 실제로 그들은 당신의 의견에 도전하고, 때로는 당신의 위치를 위협하는 것처럼 보일 것이다.

하지만 이 뛰어난 인재들은 당신에게 강렬한 자극을 주고, 상상치도 못한 멋진 결과물을 안겨줄 것이다. 그들은 스스로 할 일을 찾아서 확장하고, 팀을 이끌고 싶어할 것이다. 이를 당신의 권위에 대한 ‘도전’으로 받아들여서는 안된다. 오히려 팀을 성장시키고, 또 다른 팀을 꾸릴 ‘기회’로 삼아야 한다. 당신보다 똑똑한 사람들로 주변을 채울 때, 리더인 당신의 전문성 역시 비약적으로 성장할 수 있다.


4.2. 저성과자 방치하기

“모든 치아를 공평하게 대해야 하지만, 때로는 치과 의사도 되어야 한다.”

단기적인 불편함을 피하려다 팀 전체를 병들게 하는 행위이다.

팀에서 기대에 미치지 못하는 저성과자를 다루는 것은 리더가 마주하는 가장 고통스러운 과제 중 하나이다. 하지만 아프다고 해서 ‘썩은 이’를 방치하면, 그 고통은 팀 전체로 번져나간다.

리더가 ‘언젠가 나아지겠지’ 라는 희망으로 저성과자를 방치하는 사이 어떤 일이 벌어질까?

  • 고성과자의 에너지 소진
    • 다른 뛰어난 팀원들이 저성과자의 부족한 몫까지 떠안느라 귀중한 에너지를 낭비한다.
  • 팀 사기 저하
    • ‘왜 우리만 힘들게 일해야 하는가?’라는 불만이 쌓이며 팀의 사기가 서서히 떨어진다.
  • 핵심 인재 이탈
    • 리더가 문제를 해결하지 않는다고 판단한 핵심 인재들은 더 나은 환경을 찾아 팀을 떠난다.
  • 악순환의 반복
    • 결국 팀에는 스스로 떠날 능력이 없는 저성과자들만 남게 된다.

리더가 아무리 모른 척해도, 저성과자의 존재는 팀원 모두가 알고 있다. 그들을 업고 뛰는 당사자가 바로 그들이기 때문이다.

저성과자를 다루는 과정은 어렵지만 피해서는 안 된다. 단기적인 마이크로매니징이 필요할 수도 있지만, 목표는 상대방을 존중하는 태도 위에서 명확한 계획을 제시하는 것이다.

  • 기간 설정
    • 개선을 위한 명확한 기간을 정한다.
  • 구체적인 목표 제시
    • 크고 막연한 목표 대신, 작고, 점진적이며, 측정 가능한 목표를 구체적으로 제시한다.
  • 작은 성공 경험 제공
    • 달성 가능한 작은 목표들을 통해 스스로 성공을 경험하고 자신감을 찾을 기회를 준다.

이러한 과정을 통해 저성과자는 자신의 미래가 보이지 않음을 인정하고 스스로 다른 길을 찾거나, 혹은 독하게 마음먹고 기대에 부응하기 위해 노력하는 긍정적인 결과를 이끌어낼 수 있다.


4.3. 만인의 친구가 되려는 함정

대부분의 리더는 함께 일하던 동료들 사이에서 승진하여 탄생한다. 그러다 보니 어제의 동료였던 팀원들과의 우정을 잃고 싶지 않은 것은 너무나 자연스러운 마음이다. 오히려 그 관계를 지키기 위해 이전보다 더 친구처럼 행동하려 노력하기도 한다.

하지만 부드럽고 지지적인 리더십과 그저 ‘좋은 친구’가 되는 것을 혼동해서는 안 된다.
리더는 때로 팀이 목표를 위해 불편한 피드백을 주거나 어려운 결정을 내려야 한다. 이 때 ‘좋은 사람’으로 남고 싶은 욕심이 앞서면, 리더로서의 책임을 다하지 못하게 된다.

특히 자기 관리가 안되거나 성과가 나지 않는 친구를 관리해야 하는 상황은 리더에게 엄청난 스트레스를 안겨준다. 가능하다면 처음부터 친구를 관리하는 상황을 피하는 것이 좋지만, 어쩔 수 없다면 그 관계에 특별한 주의를 기울이며 ‘리더’로서의 역할과 ‘친구’로서의 역할을 의식적으로 분리해야 한다.


4.4. ‘일단 뽑고 보자’는 채용 기준 타협

“A급 인재는 A급 인재를 뽑고, B급 인재는 C급 인재를 뽑는다.” - 스티브 잡스

프로젝트는 급한데 인력은 부족할 때, ‘이만하면 괜찮겠지’ 라며 채용 기준을 낮추고 싶은 유혹에 빠지기 쉽다.
하지만 이는 팀에 돌이킬 수 없는 손실을 입히는 최악의 결정 중 하나이다.

적합하지 않은 사람 한 명을 잘못 뽑았을 때 우리가 치러야 하는 비용은 단순히 그 사람의 연봉이 전부가 아니다.

  • 팀 생산성 손실
    • 새로운 인력을 교육하고, 그의 실수를 수습하느라 다른 팀원들의 생산성까지 함께 저하됨
  • 팀 전체의 스트레스
    • 기술적, 문화적으로 맞지 않는 팀원으로 인해 팀 내 갈등과 스트레스 증가
  • 관리 시간 낭비
    • 리더는 해당 직원을 관리하는 데 엄청난 시간 허비
  • 해고의 비용
    • 그를 내보내야 할 때, 복잡한 서류 작업은 물론 팀 전체가 겪는 감정적 스트레스까지 감수해야 함

단기적으로 공석을 유지하는 고통이, 장기적으로 잘못된 사람과 함께하는 고통보다 훨씬 낫다.


4.5. 팀을 ‘어린이’처럼 대하기

이것은 리더가 팀을 신뢰하지 못함을 보여주는 가장 대표적인 신호이다.

사람들은 당신이 대하는 대로 행동한다.

팀원들의 업무 방식을 사사건건 확인하는 마이크로매니징, 팀원들의 능력을 믿지 못하고 스스로 책임질 기회를 주지 않는 것. 이런 행동들은 모두 팀을 미성숙한 ‘어린이’로 대하는 것과 같다.

문제는, 사람들은 자신을 대하는 방식대로 행동하는 경향이 있다는 것이다. 리더가 끊임없이 간섭하고 불신하면, 팀원들은 정말로 스스로 생각하고 판단하는 것을 멈춘 채 지시만 기다리는 수동적인 어린아이처럼 행동하게 된다.
팀의 자율성과 주도성은 그렇게 사라진다.

팀원들에게 어른다운 책임감을 기대한다면, 먼저 그들을 자신의 일을 책임질 능력이 있는 성숙한 전문가로 대우하고 신뢰해야 한다.


5. 훌륭한 리더가 실천하는 5가지 습관

위에서 리더가 빠지기 쉬운 여러 안티패턴에 대해 알아보았다.
하지만 단순히 함정을 피하는 것만으로는 충분하지 않다. 훌륭한 리더는 팀의 성공을 위해 의식적으로 올바른 패턴을 만들고 실천한다.


5.1. 개인의 ‘자존심’을 버리고 팀의 ‘자부심’ 세우기

자존심을 버리라는 것은 자신감 없이 납작 업드리라는 의미가 아니다. 겸손은 자신감 결여와는 분명히 다르다.

리더도 사람인 이상 잘못된 결정을 내릴 수 있고, 모든 문제의 답을 알지 못한다. 그럼에도 불구하고 스스로가 완벽한 척 행동한다면 팀원들의 존경을 빠르게 잃게 될 것이다. 리더의 역할은 개인의 자존심을 지키는 것이 아니라, 팀이라는 ‘집단’의 자부심과 정체성을 강화하는 것이다.

  • 피드백을 수용하세요: 비판에 마음을 열고, 방어하고 싶은 충동을 이겨내세요.
  • 실수를 인정하세요: “제가 잘 몰랐네요” 또는 “그 부분은 제 판단이 틀렸습니다” 라고 말할 수 있는 용기가 진정한 자신감입니다.

5.2. 정답 대신 ‘질문’으로 이끌기

팀원이 조언을 구하러 올 때, 리더는 곧장 ‘문제 해결 모드’로 전환하려는 강한 유혹을 느낀다. 하지만 직접 해결책을 제시하는 것은 가장 마지막에 써야 할 카드이다.

조언을 구하는 사람은 보통 정답을 알려주길 바라는 것이 아니다.
스스로 문제를 해결하도록 도와주길 바라는 것이다. 팀원의 성장을 이끄는 가장 쉬운 방법은 바로 ‘질문하기’이다.

  • “이 문제에 대해 어떻게 생각하세요?”
  • “어떤 방법들을 시도해 보셨나요?”
  • “만약 ~하다면, 결과가 어떻게 달라질까요?”

리더의 질문은 팀원이 문제를 다른 각도에서 바라보고, 스스로 해법을 탐색하도록 돕는 훌륭한 가이드가 된다.


5.3. 팀의 ‘장애물’ 제거하기

팀원 개인이 해결하기에는 불가능에 가까운 장애물(예: 다른 팀과의 협업 문제, 복잡한 회사 정책)도 리더의 위치에서는 쉽게 치울 수 있는 경우가 있다.

리더는 팀이 가는 길을 막는 장애물을 제거해 줄 수도 있고, 또 기꺼이 그럴 의지가 있다는 사실을 팀원 모두가 알게 해야 한다.
당신이 모든 해법을 직접 알 필요는 없다. 문제를 해결해 줄 수 있는 다른 사람이나 팀과 ‘연결’해주는 것만으로도 리더의 역할은 충분하다.
당신의 시간과 권한은 팀이 막힘없이 달릴 수 있도록 길을 닦는데 사용되어야 한다.


5.4. ‘정답지’가 아닌 ‘성장판’을 열어주는 멘토 되기

리더로서 가장 고통스러운 순간 중 하나는 ‘내가 하면 20분이면 끝날 일을 3시간 동안 붙잡고 있는 주니어 팀원을 지켜보는 것’일 것이다.

하지만 팀원에게 스스로 배우고 성장할 기회를 주는 것은 훌륭한 리더십의 핵심 요소이다.
특히 새로 합류한 팀원이 조직 문화와 코드베이스에 익숙해지는 과정에서 이 ‘기다림의 시간’은 매우 중요하다.

훌륭한 멘토는 아래 3가지 능력을 갖춰야 한다.

  • 팀의 프로세스와 체계에 대한 경험
  • 다른 사람에게 무언가를 설명하는 능력
  • 멘티에게 도움이 ‘얼마나’ 필요한지 측정하는 능력

이 중 가장 중요한 것은 세 번째 능력이다. 도움이 될 것이라는 생각에 너무 많은 정보를 한꺼번에 쏟아내면 멘티는 부담을 느끼고 그냥 듣는 척만 하게 된다. 멘티가 스스로 해결할 수 있도록, 딱 필요한 만큼의 힌트만 제공하는 감각을 기르는 것이 중요하다.


5.5. 솔직하고 정직하게 소통하기

피드백은 리더십의 핵심 도구이다. 특히 직접적인 비판이나 개선점을 전달해야 할 때, 메시지를 애매하게 포장하거나 왜곡해서는 안 된다.
좋은 관계를 유지하고 싶다는 마음에 피드백을 부드럽게 뭉개버리면, 상대방은 문제의 심각성을 전혀 인지하지 못하게 된다.

정직한 피드백은 정확하고 왜곡없이 전달될 때 가장 효과적이다.
물론 존중하는 태도는 기본이지만, 전달하려는 핵심 메시지만큼은 명확해야 한다.


6. 리더의 시선은 회사 담장을 넘어야 한다

훌륭한 리더는 팀원을 ‘자원’이 아닌 ‘사람’으로 본다. 이는 팀원의 회사 밖 삶과 장기적인 커리어에 관심을 갖는다는 의미이다.


팀원의 사생활 존중하고 배려하기

팀원들에게는 회사 밖의 삶이 있다. 이 사실을 망각한 리더는 비현실적인 업무 시간을 기대하게 되고, 결국 팀원의 존경을 잃고 번아웃을 유발한다.
사생활을 파고들라는 의미가 아니다. 그저 팀원이 어떤 상황에 처해있는지 ‘인지’하는 것만으로 충분하다.

가정에 어려운 일이 생긴 팀원이 있다면, 리더의 작은 배려와 약간의 여유는 그에게 큰 힘이 된다. 그리고 이렇게 쌓인 신뢰는, 훗날 팀이 정말 마감에 쫓겨 달려야 할 때 팀원이 기꺼이 힘을 보태는 원동력이 된다.


‘5년 후’를 함께 고민해주는 커리어 파트너 되기

팀원의 행복에서 ‘커리어 성장’은 매우 큰 비중을 차지한다. 하지만 대부분의 사람은 “5년 후에 무엇을 하고 싶나요?”라는 질문에 쉽게 답하지 못한다.

훌륭한 리더는 여기서 한발 더 나아간다. 팀원들이 미래에 원하는 것을 성취할 수 있도록 그 방법을 함께 고민하고, 또 이런 고민을 하고 있다는 사실을 팀원들이 알게 해야 한다.
이는 팀원에게 ‘이 리더는 나의 성장에 진심이구나’라는 강력한 믿음을 준다.


7. 경험이 쌓인 리더를 위한 3가지 조언

리더십에도 경험치가 쌓인다. 노련한 리더는 아래와 같은 기술을 통해 팀의 효율과 신뢰를 극대화한다.

  • 위임하되, 가장 곤란한 일은 직접 처리하라
    • 초보 리더라면, 일이 더디게 진행되더라도 의식적으로 팀원에게 위임해야 한다. 이는 리더 자신의 정신 건강을 지키고 팀원에게 배움의 기회를 주는 길이다.
    • 숙련된 리더라면, 때로는 직접 소매를 걷어붙여야 한다. 특히 아무도 하려 하지 않는 ‘지저분한 일’을 리더가 직접 떠맡을 때, 팀원들의 존경을 얻고 팀의 속도를 높일 수 있다.
  • 당신을 대신할 사람을 키워라
    • 나를 대신할 사람을 키우려면, 먼저 그럴만한 역량을 갖춘 사람을 뽑아야 한다. 그리고 그에게 더 많은 책임을 맡기고, 때로는 팀을 이끌어 볼 기회를 주며 재목을 가려내야 한다.
    • 단, 가장 뛰어난 엔지니어를 그의 의사에 반하여 관리자로 내모는 우를 범해서는 안 된다. 이는 최고의 엔지니어 한 명을 잃고, 평균 이하의 관리자 한 명을 얻는 최악의 결과를 낳는다. 뛰어난 개인 기여자(IC)로 남고 싶어 하는 선택은 존중받아야 한다.
  • 팀을 위한 ‘방패’가 되어주어라
    • 리더가 되어보면 비로소 깨닫게 된다. 회사는 원래 혼란스러운 곳이었고, 이전 리더가 그 혼란으로부터 나를 지켜주고 있었다는 사실을 말이다.
    • 회사의 상위 레벨에서 일어나는 일을 투명하게 공유하는 것도 중요하지만, 불필요한 불확실성이나 다른 팀의 시시콜콜한 요구로부터 팀을 보호하는 공중 엄호(Air Cover) 역시 리더의 핵심적인 역할이다.

8. 내적 동기

리더의 궁극적인 역할을 팀원 개개인에게 무엇이 필요한지 파악하고 제공하는 것이다. 마치 정원사가 식물마다 다른 햇빛과 물을 주듯 말이다. 정체된 팀원에게는 동기를, 길 잃은 팀원에게는 방향을 제시해야 한다.

사람들에게 가장 강력하고 지속적인 동기를 부여하는 비결은 돈과 같은 ‘외적 동기’가 아닌, 내면에서부터 샘솟는 ‘내적 동기’이다. (물론, 돈 걱정이 없을 만큼의 충분한 임금은 기본 전제이다.)
내적 동기를 깨우는 3가지 방법은 아래와 같다.

  • 자율성(주도성)
    • 다른 사람의 간섭없이 스스로의 판단으로 행동할 수 있는 권한
    • 자율성은 일에 대한 주인의식을 키움
  • 숙련(전문성)
    • 현재의 기술 수준을 높이고 새로운 것을 배울 기회
    • 숙련의 기회를 제공받은 사람은 더 잘하고 싶은 욕구를 느낌
  • 목적
    • 내가 하는 일이 어떤 의미를 갖는지 이해하는 것
    • 아무리 자율성과 숙련의 기회가 주어져도, 일의 목적을 찾을 수 없다면 동기는 생기지 않음

정리하며..

훌륭한 소프트웨어 엔지니어가 저절로 좋은 관리자가 되는 것은 아니다.
그래서 현명한 조직은 개인 기여자(IC)와 관리자를 위한 별도의 성장 경로를 제공한다.

좋은 관리자는 팀이 스스로 일을 잘하도록 돕고, 올바른 목표에 집중하게 하며, 외부의 방해 요소를 차단해주는 사람이다.

이제 전통적인 의미의 ‘관리’를 내려놓자.
대신 리더십, 영향력, 그리고 팀을 위한 봉사에 집중하자.
가능하면 위임하고, 팀이 올바른 방향속도로 나아가는지에 모든 신경을 집중하자. 그것이 바로 팀과 당신을 성공으로 이끄는 길이다.


참고 사이트 & 함께 보면 좋은 사이트

본 포스트는 구글 엔지니어는 이렇게 일한다 를 읽으며 정리한 내용들입니다.






© 2020.08. by assu10

Powered by assu10