관리자 = 리더, 관리자 /= 인생 멘토
몇 주 전, 친한 지인들과 오랜만에 술자리를 가졌었다. 그때 나는 언니라는 명목으로 평소 아끼던 동생에게 많은 잔소리를 했었다. 회사 생활에 대한, 또는 회사에서의 역할에 대한 또는 그 아이를 발전시킬 수 있는 조언이었다고 나는 생각하지만 결국 나의 노파심과 오지랖이 만들어낸 잔소리였다.
그날 그 자리에는 한 회사의 CTO 역할을 하고 있는 지인도 있었고, 이미 관리자인 지인도 있었고, 항상 본인이 관리자 꿈나무라고 말하는 지인도 있었다. 그날 여러 가지 이야기하고 들으면서, 그 시간들은 오히려 나에게 '그래서 과연 관리자란 어떤 역할을 해야 할까?' '관리자가 그 팀을, 팀원을 위해서 어디까지 해야 할까?'에 대해서 깊이 생각하는 계기가 되었다.
그때 나는 KSUG와 함께 한글화 프로젝트를 진행 중이었고 때마침 한분이 이와 관련된 글을 번역 중이셨다. 이 번역 과정을 통해서... 또 이 글을 번역하면서 원저작자가 어떤 부분을 강조하고 싶었는지에 대한 이야기를 들으면서 조금 더 구체적으로 생각해보게 되었다. 그 번역글은 http://jinson.tistory.com/285 여기에서 확인할 수 있다. 이 글이 내가 생각하는 것보다 많이 공유되고 회자되는 것을 보면서 많은 사람들이 '관리자의 역할'에 대해서 고민하고 있다는 사실을 알게 되었다.
특히 이 글에서 내게 가장 인상적인 부분은 "코더 vs 멘토" 부분이다.
당신이 직면하게 될 첫 번째 도전은 엔지니어로서 그리고 멘토로서의 갈등이다. 엔지니어로서는 팀이 직면한 모든 흥미로운 기술적 도전들을 해결하려 할 것이다. 반면, 멘토로서는 능력을 향상시키고 더 나은 개발자가 되고자 하는 팀원에게 (도움이 되는) 문제를 주고 싶어 할 것이다. 시니어 개발자가 부족하고 주니어 개발자가 많은 팀에서는 이 문제가 심각해질 수 있다. 그럴 경우, 엔지니어링 관리자는 자신의 역할에서 멘토십을 더욱 강조해야 한다.
당신의 팀을 성공적으로 만들어라
어떤 코딩보다도 팀과 팀원들이 우선이다. 당신이 코딩하는 데에 전념할 수 있는 필요조건은 팀이 성공했을 때이다. 관리자로서 당신은 제품을 만드는 것이 아니라, 제품을 만들 수 있는 팀을 꾸리는 것이다. 따라서 팀을 성공적으로 운영하는 것이 자신을 평가할 수 있는 주 목표 및 척도가 되어야 한다. 만약 당신이 행복한 엔지니어들로 구성된 성공적인 팀을 이끈다면 팀의 성공은 따라올 것이고, 팀원과 상사에게 성과를 설명하려는 일에 시간을 덜 보낼 수 있을 것이다. 의사 결정에 병목 현상이 없는 능력을 갖춘 실력있는 팀원들로 이루어진 자립심 있는 팀은 당신이 뭔가 다른 일을 할 수 있도록 해줄 것이다.
이건 비단 기술팀에게만 해당되는 이야기는 아닐 것이다. 관리자란 크게 생각하면 한 회사의 CEO일 수도 있고, 개발팀 전체를 관리하는 CTO일 수도 있고 혹은 그저 한 팀의 팀장일 수도 있다. 더 가깝게는 나의 사수를 관리자(이 경우는 중간 관리자가 맞겠다)라고 생각할 수도 있다. 관리자는 자신이 하고 싶은 일과 팀이나 팀원 중에서 어떤 것을 우선시해야 하는지 끊임없이 갈등하게 된다. 이 글에서도 말했듯이, 관리자라면 우선 자신의 팀을 성공시켜야 한다. 결국 팀이 성공하고 자립심이 생긴다면 내가 원하는 것을 할 수 있는 여유도 생길 수 있다. 그러나 그런 일들은 노력없이 그냥 이루어지지는 않는다.
관리자의 역할은 무엇일까? 관리자는 어디서부터 어디까지 관여를 해야 할까? 우아한 형제들의 공용 공간에는 "이끌든지, 따르든지, 비키든지"라는 말이 있다. 난 관리자란 '이끄는' 역할이라고 생각한다. 모든 일에는 이랬거나 저랬거나 이끄는 사람이 필요하다. 이끄는 사람이 있어야 따를 것이 아닌가. 원했던 원하지 않았던 그것이 관리자의 첫 번째 역할이다. 일을 될 수 있는 방향으로 이끄는 사람, 팀이 맡은 일을 성공으로 이끄는 사람. 혹은 새로운 프로젝트를 시작할 수 있도록 이끄는 사람. 지금 당장은 따르는 역할인 사람도 어떤 경우에는 이끄는 역할이 될 수 있고 그렇게 언젠가는 관리자가 될 것임을 잊지 말자.
관리자란... 결국 그 팀의, 그 조직의 리더인 것이다. 리더는 그냥 나보다 경력이 많고 나이가 많다고 해서 할 수 있는 것이 아니다. 그 일에 대해서 조금 더 깊이 있게 알고 조금 더 넓게 바라볼 수 있어야 한다. 또한 그 일을 성공으로 이끌기 위해서 팀원들에게 무엇이 필요한지도 알고 있어야 한다. 적어도 그 팀의 목표에 대해서는 누구보다 명확히 파악하고 있어야 하며 팀원들이 그곳을 향해 함께 나아갈 수 있도록 여러 가지 것들을 제시해주어야 한다. 모두 성인이고 내가 부모도 아닌데 내가 어디까지 알려주고 보살펴 줘야 하냐는 푸념(?)도 관리자로서의 역할을 한 후에 해야 하는 것이 아닐까?
관리자가 인생의 멘토가 될 필요는 없지만 적어도 일에 대한 멘토는 되어야 한다고 본다. 개발자라면 그 팀이 더 효율적이고 합리적인 기술을 쓸 수 있도록 가이드해주고, 편집자라면 조금 더 멋진 도서를 기획할 수 있도록 다양한 기회를 주고, 사장이라면 이익과 보람을 동시에 이룰 수 있는 비전을 제시해주고... 그리고 모두들 팀원들이 자신의 능력을 끌어낼 수 있도록 도움을 주어야 한다. 그렇기 때문에 관리자는 팀이 맡은 일에 대해서 조금 더 많이 알고 있어야 한다. 그리고 팀원 누구라도 자유롭게 의견을 낼 수 있도록 환경을 조성해 주어야 하고 또 다른 사람의 의견을 받아들일 수 있는 열린 귀와 마음을 가지고 있어야 한다.
또한 관리자는 조직과 팀의 가교 역할을 해주어야 한다. 회사의 비전과 목표를 공유할 수 있도록 전달해주고, 팀에서 하는 일이 회사에 미치는 영향에 대해 설득하고 또 팀원들의 불만이나 고통을 조직에 전달하고 합리적이고 효율적으로 조절될 수 있도록 노력해야 한다. 아울러 팀과 팀의 협업을 매끄럽게 이어주는 역할도 해야 한다. 그만큼의 책임이 따르는 역할이고, 관리자 한 사람이 팀에 미치는 영향과 팀원들에게 미치는 영향은 본인이 생각하는 것보다 클 수 있다. 이렇게까지 이야기하니 관리자에게만 너무 막중한 업무를 부과하는 느낌이다.
그렇다고 해서 관리자가 선생님도 아니고 신도 아니다. 관리자가 해야 하는 역할도 많은 데다가 하는 일에 비해 시간이 부족한 것은 누구에게나 마찬가지이다. 그렇기 때문에 팀원들 하나하나의 마음이나 생각까지 헤아리지 못할 수도 있다. 팀을 성공적으로 이끌기 위해서 관리자의 노력이 필요한 만큼 따라는 팀원들의 노력 또한 필요한 이유이다. '말하지 않아도 알아'주길 바라지 말라~ 팀 내에 불협화음이 발생하거나 불만이 생길 때, 관리자와 함께 이야기하고 함께 해결책을 찾으려 노력해야 한다. 조직의 결정이 이해되지 않을 때, 속으로 불만을 쌓아가지 말고 관리자를 통해 조금 더 이해할 수 있도록 노력해야 한다. 이것이 조직을 위해서도, 팀의 성공을 위해서도, 나 스스로의 발전을 위해서도 필요한 일들이다.
관리자고 사원이고 모두 사람이다. 모두 사람이 하는 일이다. 그렇기 때문에 실수를 통해서 배우고 모두 성장해 나간다. 그 점을 잊지 말자. 처음부터 잘하는 사람은 없다. 쓰다 보니 서로서로 이해해주고 배려해주자 따위로 훈훈하게 글이 마무리되려고 하는 것 같다. 그러나 솔직히 이야기하자면, 글을 쓰면 쓸수록 뭔지는 알겠는데 그냥 막연하게만 다가온다. 내가 지금 관리자임에도 불구하고 관리자로서 제대로 하고 있는지 확신이 점점 없어진다.
내가 오늘 하고 싶은 말은, 나 스스로에게 하고 싶은 말은... 이랬거나 저랬거나 내가 관리자가 된 이상 책임감을 가지고 내 역할에 충실해야 한다는 것이다. 관리자의 역할은 저마다 다르게 생각할 수도 있다. 적어도 자신이 정한 기준에는 합당한 관리자가 되도록 노력해야 한다는 것이다. 그럴 자신이 없다면... 솔직히 이야기하고 관리자의 자리를 내려놓는 것이 낫다. 그만큼 관리자의 자리는 어려운 것이다. 그러니 각오를 다지라! 내가 그냥 사원일 때 꿈꾸던 그런 관리자가 스스로 되도록 노력하라! 그리고 이왕 하는 것, 즐기라!