기본 콘텐츠로 건너뛰기

시작하는 리더를 위하여(멘토링)


팀 리더의 자질.. 

이 이야기는 2016년에 멘토링을 하면서 작성한 내용 입니다. 

멘티와의 이야기 속에 프로젝트 리더 또는 팀 리더의 자질에 대한 질문이 들어왔습니다.

멘티는 자신이 곧 있으면 팀원을 가지게 되는데 정말 자신이 그만한 자질이 있는지, 자신이 팀원을 이끌 수 있는지 불안하다는 이야기였죠. 

제가 질문을 했습니다.

나 : "팀의 리더는 어떤 능력을 가지고 있어야 할까요?"

그가 대답했습니다.

멘티 : "팀원을 이끌어 팀원의 능력을 개발하고 이게 회사에 보탬이 되게 해야 하는 것 아닐까요?"

제가 다시 물었습니다.

나 : "그럼 그 얘기하는대로 하는게 뭐가 어렵죠?"

멘티 : "자신이 그들의 기대에 맞춰서 이끌어 줄 수 있을지 걱정이 되고, 나도 일이 많은데 팀원들을 전부 케어할 수 있을지 걱정입니다. 그리고 팀원이라고 들어왔는데 기대하지 않는 일을 하면서 효율이 나지 않을 수도 있을것 같구요"

아마 처음 리더를 맡은 많은 팀 리더들이 가지는 고민일 겁니다. 

회사는 직원이 될 사람과의 계약은 서로의 이득을 위해서 하는 것이라고 봅니다. 
계약서를 읽어 보면 거의 비슷하겠지만, 우리가 학생 때 배우는게 
회사는 이익 집단이고, 이익을 위해서 사람들과 계약을 하여 
개인들의 노력이 회사에 이익을 가져다 준다고 하지 않았을까요?

하지만 잘 생각해 보세요. 
회사는 이익을 위해서 사람과 계약을 해요. 
그 사람의 미래는 회사가 알 수 없죠. 
지금 그 사람을 돈을 주고 사는 것은 그 사람의 시간과 그 사람이 현재 가진 능력뿐이죠. 
이것을 가지고 회사는 재화를 창출해야 하는 것입니다 .

 그리고, 여기에는 어떠한 계약서에도 회사가 개인에게 비전을 주겠다 또는 주어야 한다는 조항은 없습니다. 
결국 회사는 개인을 발전 시킬 의무가 없고, 
그들이 스스로 발전하지 않으면 다음 해의 연봉 협상에서 연봉을 올릴만한 이유를 찾을 수 없습니다. 
그동안 만났던 사람들 중에서 회사가 자신에게 비전을 주지 않아 사표를 내는 사람을 종종 보았습니다.
 저는 바로 수리해주었지요. 
왜냐하면, 회사 비전 운운하는 것은 
스스로 발전하려고 하는 의지보다 자긴 가만 있을테니 회사가 알아서 날 발전 시켜줘봐 하는거랑 같거든요.
현재 회사와의 계약이 만족스럽다면 비전은 왜 필요한 거죠?

비전이 없으면 그 사람은 발전이 없다고 생각하고 있다면, 
다시 생각해 봐야 합니다. 

전 그동안 회사에 비전을 바라고 다닌 적이 없지만, 
회사 경험마다 저에게는 발전이었습니다. 
하지만, 모든 개인이 능력이 뛰어나지 않듯,
비전을 보여주면서 사람을 끌어가는 것도 회사가 가지는 부가가치 중의 하나라고 봐요. 
하지만 비전이란 것은 어디까지나 회사가 개인을 끌고 가기 위한 전략이지 
개인을 위한건 아닌 것 같아요. 

그럼 돌아가서, 팀의 리더는 여기서 회사가 주지 않는 비전 속에
 사람을 어떻게 관리하는게 중요할까요? 
이 경우 팀의 리더가 해야할일은 무엇일까요?

사람마다 이상적인 팀의 리더의 역할이 있다고 봅니다. 
하지만 제 경험상 팀의 리더가 하지 않으면 안되는 중요한 포인트가 있어요. 
하나는, 팀의 최적화이고 또 하나는 팀을 지키는 일입니다. 

리더는 자기의 업무를 40%, 팀 관리를 60% 정도의 비율로 할당하는게 좋습니다. 
그러면 업무 시간이 부족하다고 하잖아요? 아니면 팀원은 스피드가 안나니까 자기가 해야 한다고 생각하거나, 

이런 사람들은 리더가 되기는 아직 이른 사람들입니다. 
스스로의 업무를 밑으로 전달할 수 있는 능력을 가지기 전에 리더가 되면 
팀원은 놀고 혼자 바쁘다가 자폭하게 됩니다. 

또, 팀원이 스피드가 안난다고 자기가 하는 사람은 
팀원의 발전의 기회를 뺏는 사람이고, 
결국 시간이 지나도 자기 혼자 업무가 넘쳐서 야근하고 투덜거리기만 하게 되지요. 
팀이 발전하면 리더는 더욱 편해지고 효율적이 되므로 리더에게는 플러스가 되지요. 
하지만 팀원이 발전하드 안하든 회사는 상관이 없습니다. 
회사로선 주어진 업무를 제때 해결하지 못하면 부품을 바꾸는 수 밖에 없지요. 

회사가 리더에게 원하는 것은 리더가 얼마나 일을 많이 했느냐가 아니고, 
팀에게 떨어진 일을 얼마나 많이 완수했느냐 인것이죠. 
즉, 리더는 한게 0이라고 해도 팀이 예상 이상의 일을 해주었다면, 
리더가 잘한 것입니다.

비전을 주지 않는 회사에서 
리더가 해줄 수 있는 최대한의 배려는 
회사의 다양한 지원 시스템을 활용하여 
교육지원등의 신청을 도와주는 것은 해줘야 겠죠. 
하지만, 이것은 의무나 해야만 하는 것은 아닙니다. 단지 옵션이지요. 
회사의 복리후생 시스템을 팀원이 일일이 찾아서 사용하기엔 
그 내용을 찾고 자기 한테 맞는지 눈치도 봐야하고 여러모로 시간과 노력의 소모가 큽니다. 
이런것을 리더가 나서서 맞는 내용을 제안해주고 하면 
자기 돈이 아님에도 팀원들은 리더를 더 따르게 되는 것이지요. 
물론 이렇게 성장의 발판과 복리후생이 좋다는 느낌을 주게 되면, 
리더 뿐만 아니라 좋은 회사라는 이미지도 주게 되고, 
팀원의 발전에도 큰 도움이 됩니다. 
이런 부분을 팀원에게 있으니 알아서 하라고 하는게 좋지 않다고 봅니다. 

모든 팀원의 역량을 파악하는 것이 팀의 리더의 할일입니다. 
팀원의 역량 파악에는 개인적인 내용까지 포함됩니다. 
단지 그 사람에게 일을 줬을 때의 퍼포먼스 뿐만 아니라, 
자녀가 있는데 이혼을 하여 야간에는 일을 할 수 없다거나, 
아프신 홀어머니를 모시고 있어서 주말에는 시간을 낼 수 없다거나 
이런 모든 것들이 합쳐져서 팀원들의 역량이 됩니다.

이런 모든 것을 알기 위해서는 팀의 리더로서 군림해서는 알아낼 수 없습니다. 
개인적으로 술자리도 하면서 자신의 지위를 팀원레벨로 낮워야만 비로소 보이는 것이지요. 
그리고 그들의 속에 내가 들어왔을 때 무방비 속에서 보이는 여러가지 장단점이 
그들의 역량을 가늠하는 기준이 됩니다. 
술마시고 다음날엔 꼭 지각하는 사람이 있기도 하고, 
돈이 없어 야간에 아르바이트를 하는 사람도 있습니다. 
이들을 회사의 규율에 맞추어서 뭐라 하는 것이 아니라 
나는 우리 팀의 모든 업무을 리스팅 하고 우선순위를 정하고 
사람들에게 나누어 주고 속도에 맞추어 다시 돌려받기도 하고 
다른 사람에게도 할당하는 임기응변이 뛰어난 
마이크로 태스크 매니지먼트를 해야합니다. 

그러다가 보면 누군가는 일을 많이하고 누군가는 일을 적게 하는 경우가 생기겠죠. 
이는 나중에 인사고과에 반영하면 되지 
여기서 사람을 못하는 사람을 다그쳐서 상향 평준 하거나
못하는 사람에게 맞추는 하향 평준을 하면서 
스트레스를 줄 필요가 전혀 없습니다. 
이게 팀의 역량 파악 및 업무의 관리지요.

또 한가지 팀을 지키는 중요한 일이 있습니다. 
팀원은 일만 할 수 있도록 외부의 모든 스트레스를 차단해 주어야 합니다.
물이 떨어지면 팀원을 시키는 리더는 군림을 좋아하는 안좋은 예입니다. 
제 리더가 된 타이밍에 고객이 왔을때 음료를 준비하거나 
정수기의 물을 갈아주거나 주변을 정리하는 일은 
전부 제가 도맡아 했습니다. 
팀원들이 하겠다고 하면 그시간에 일을 하는게 날 도와주는거라고 합니다. 
이는 팀원이 더 많은 경험을 하게 되어 내가 더 편해질 수 있는 
일석이조가 됩니다. 

또, 팀을 관리하다보면 다른 부서에서 사람을 빌려달라고 하는 경우가 종종 있죠. 
그 때 리더가 중간에 끼지 않고 다이렉트로 담당자를 붙여버리는 경우가 있는데요.. 
타 부서와의 연계는 중요합니다. 
그런데 그 사람을 아주 빌려주고 손을 뗐다면 아주 안좋은 대응입니다.
이건 제가 얘기하는 팀의 최적화와 팀의 보호 두 가지를 하지 못한 대표적인 사례이지요. 

모든 타 부서의 일은 리더를 통해야만 하게 만듭니다. 
업무의 효율상 누구랑 직접 얘기하는게 좋다고 하더라도 
나를 반드시 거치게 하되, 정말 내가 팀원이 담당한 업무를 몰라서 팀원이 직접 만나야 한다면 
내가 조율을 해주고 내가 참석을 합니다. 
그리고 서로 자유롭게 의논하되, 결정만 내가 내립니다. 
스케쥴링하고 태스크관리를 담당자가 하게 되면 
대부분 타 부서에서 강압적으로 자기를 최우선시 하도록 요구하게 되고 
힘없는 담당자는 자기 일에 타 부서일까지 더 얹게 되서 야근을 하게 되고 
스트레스를 더 받게 되어 효율이 떨어지게 됩니다. 

팀원들을 야근하게 하는 것은 리더로서의 이 두 가지 자질에 결함이 있다는 얘기 입니다. 
자신이 편하려고 팀원에게 책임과 결정을 내리는 것은 결국 
책임자라는 리더의 업무를 망각한 것이지요. 
책임자는 자신이 보호하는 사람의 실수에 대해서 책임을 지는 역할이고, 
보호 받는 사람은 그 사람을 믿고 더 자신있게 일을 할 수 있는 환경이 되어야 합니다.

한국에서 누누히 당했는데요.. 
책임자는 책임을 지는 자리이지 
책임을 전가하는 사람이 책임자가 아닙니다. 

여기서 또 재밌는 이야기를 해드릴께요.. 

모 게임회사에서 해커가 너무 헤집고 다니고 있는데 
그 때 당시는 보안팀이 없었던 규모 였습니다. 

그런데 DB를 담당하는 저는 
매주 금요일 밤만 되면 해커가 판치면서 데이터를 꼬아놓으니까 
토요일에 불려가서 데이터 복구하고를 반복해서 토일을 몇 번이나 반납 하게 되었습니다.. 
그게 열받아서 트랩을 깔았지요.. 
그러니까 데이터가 조작된 A게임에 조작 쿼리를 날린 것이 G게임이었고, 
거기에 또 트랩을 두니까 M게임의 스샷 게시판의 이미지에 injection코드를 넣고 실행한 사실을 찾았습니다. 
그걸로 각각의 게임들의 침투 경로 차단 및 트랩을 강화해서 언제든 해커를 잡을 수 있게 해놨지요.. 

그걸로 그 동안의 경위를 정리해서 올렸습니다. 
누누히 얘기하지만 전 보안 담당이 아니었습니다. 

어느날 갑자기 이 부장이 저를 부르더니, 
제 보고로 회사가 뒤집어졌답니다. 
이렇게 해커가 헤집게 놔두고 다녔다구요.. 
그래서 피해핵을 계산해서 수천만엔 피해가 났다고 이걸 누군가 책임을 져야 한다고 합니다. 
거기서 제가 제일 잘 안다고 저를 지명했다고 하네요.. 
그래서 회사 창립 이래 첫 감봉 조치를 취한다고 합니다. 

음? 책임자는 책임을 전가하는게 책임자인가?
이게 IPO 하기 몇 개월 전이라 
제게 줄 주식 수도 결정 나 있던 때 였습니다.
그런데 제가 잘못하지 않은 데에 저 조치를 받을 수가 없었습니다. 
그래서 그날 사표를 던지고 나왔지요.. 

그 뒤에 제가 10년동안 제 밑을 자꾸 끌어 들였던 후배가 
제가 나오면서 그 자리를 물려 받았는데, 
제가 알고 있는 것은 거의 알려주었기 때문에 제 뒤를 그대로 받을 수 있었습니다.

나중에 IPO후에 후배가 고맙다고 밥을 사주면서 이야기 했는데.. 
수십억을 받았다고 하네요.. 
사람은.. 자존심으로 사는게 아닌거 같습니다. ㅠㅡㅠ
그 때 아무리 기분 나빠도 남았어야 했는데...

아뭏든!

리더는 멤버들의 업무를 직접 하지는 않더라도 
타 부서와 업무 대화가 될 정도의 지식은 가지고 있어야 한다고 봅니다. 
팀원의 일도 모르면서 데리고 있으면 팀원은 소외감에 빠지면서 컨트롤 불능이 될 수도 있습니다. 

이렇게 해서 인연이 된 팀 멤버들과 20년이 지나도 지금도 같이 술을 마시곤 합니다. 
회사와이 계약은 끝났지만, 
여전히 그 사람들을 다른 면에서도 지켜주는 존재가 되어 있는거 같아요.. 
물론 기분도 좋구요.. 

물론 이 대화가 정석도 아니고 많은 사람들이 시행착오를 거쳐 자신만의 리더쉽을 만들어가고 있을 것입니다.
하지만, 가장 중요한 것은 
내가 사람을 부리는 타이밍에 사람을 얼마나 효율적으로 부리고, 
그들을 도구로만 쓰지 않고, 
사람으로서 이해하느냐가 
회사가 해주지 못하는 부분을 내가 케어해 주면서 
그들와의 인연을 계속 이어갈 수 있고, 
이게 나중에 나의 재산이 되지 않을까 생각합니다.

회사의 입장에서의 리더의 자질 보다는 
팀원의 입장에서의 리더에 대한 이야기 였습니다.






giip :: Control all Robots and Devices! Free inter-RPA orchestration tool! https://giipasp.azurewebsites.net/

댓글

이 블로그의 인기 게시물

Alter table 에서 modify 와 change 의 차이 :: SQL Server

두 개의 차이를 모르는 경우가 많아서 정리합니다.  modify는 필드의 속성값을 바꿀때 사용하구요.. change는 필드명을 바꿀떄 사용합니다.  alter table tbbs modify bNote varchar(2000) NULL; alter table tbbs change bNoteOrg bNoteNew varchar(2000) NULL; change에는 원래 필드와 바꾸고 싶은 필드명을 넣어서 필드명을 바꾸는 것이죠~ 더 많은 SQL Server 팁을 보려면  https://github.com/LowyShin/KnowledgeBase/tree/master/wiki/SQL-Server giip :: Control all Robots and Devices! Free inter-RPA orchestration tool! https://giipasp.azurewebsites.net/

책에서는 안 알려주는 대규모 트래픽을 위한 설계

음성 버전 :  https://www.youtube.com/watch?v=ZZlW6diG_XM 대규모 트래픽을 커버하는 첫 페이지 만드는 법..  보통 DB를 연결할 때 대규모 설계는 어떻게 하시나요?  잘 만들었다는 전제 하에 동접 3000명 이하는  어떤 DBMS를 사용해도 문제 없이 돌아갑니다.  여기서 이미 터졌다면 이 콘텐츠를 보기 전에 DB의 기초부터 보셔야 합니다.  아.. 개발 코드가 터졌다구요? 그럼 개발자를 때리셔야지요..  만약 3000명을 넘겼다면? 이제 Write/Read를 분리해서  1 CRUD + n개의 READ Replica를 만들겠죠?  보통 Read Replica는 5개가 최대라고 보시면 됩니다.  누가 연구한 자료가 있었는데...  6번째 레플리카를 만든느 순간 마스터가 되는 서버의 효율 저하 때문에  5번째에서 6번쨰로 올릴때의 성능이 급격히 줄어든다는 연구 결과가 있습니다.  때문에 Azure에서도 replica설정할 때 5대까지 밖에 설정 못하게 되어 있지요.  유저의 행동 패턴에 따라 다르긴 하지만,  1 CRUD + 5 Read Replica의 경우 동접 15000명 정도는 커버 합니다.  즉, 동접 15000명 에서 다시 터져서 저를 부르는 경우가 많지요..  이 때부터는  회원 DB, 게시판DB, 서비스DB, 과금 DB 등등 으로 성격, 서로의 연관도에 따라 나누기 시작합니다.  물리적으로 DB가 나눠지면 Join을 못하거나 Linked Table또는 LinkDB등의 연결자를 이용해서 JOIN이 되기도 합니다.  그에 따라 성능 차이가 생기지만 가장 중요한 포인트는  서로 다른 물리적 테이블의 JOIN은 인덱스를 타지 않는다!  라는 것입니다. 즉, JOIN할 테이블들을 최소한으로 만든 뒤에 JOIN을 걸지 않으면 NoSQ...

BI의 궁극판! Apache Drill을 써보자!

사실 Apache Drill 은 BI(Business Intelligence)라고 부르는 것 보다는 단순 데이터 연결 엔진이다. https://drill.apache.org/ 하지만 내가 왜 극찬을 하느냐면.. DBA로서 항상 문제가 되어왔던게, 이기종 데이터의 변환이나 처리였다. 포맷을 맞추는데 엄청난 시간이 걸리고, 데이터 임포트 실패가 무수하게 나고.. 한 번 잘못 데이터를 추출하면 다시 조정, 변환, 추출하는데 시간이 많이 걸린다. 그런데! Apache Drill은 그냥 RDB를 CSV랑 연결해서 조인해서 통계를 낼 수 있다. 그것도 표준 SQL을 사용하여! 예를 들어, CSV의 세 번째 컬럼이 price 이고, 물건의 판매이력을 PG사에서 CSV로 출력 받았다. 우리 DB와의 검증을 위해서는 수동으로 Import를 한 뒤에 포맷이 안맞아 잘리는 데이터가 있다면 다시 맞춰주고, 재 임포트를 수십 번, 그리고 나서 겨우 들어간 데이터를 조인하여 빠진 데이터를 분간한다. 숫자가 적다면 개발자가 개발로 처리할 수도 있지만, 건수가 하루에 300만건 짜리라면.. 한 달 온 파일은 9천만 건이다. 프로그램으로 고작 처리하는 것이 초당 500건. 거의 20만초, 에러 없이 약 56시간.. 에러가 생기면 다시 56시간.. ㅠㅡㅠ 이런게 현실이기 때문에 쿼리 말고는 방법이 없다. apache drill 의 진면목을 보자! 이번에는 좀 범용 적인 MySQL DB와 붙여 보자. . 난 이번에는 Mac에서 작업을 했기 때문에 그냥 다운 받아서 풀었음.. https://drill.apache.org/download/ 여기서 자기 OS에 맞는 버전을 받아서 설치하시길.. 압축을 풀고 나면 MySQL 커넥터를 붙여야 한다. https://dev.mysql.com/downloads/connector/j/5.1.html 여기서 다운로드 이런 커넥터 들을 붙일 때마다 콘피그를 수정해 줘야 하지만, 몇 번만...