구글 엔지니어는 이렇게 일한다
라는 책에서 필요한 부분을 읽고 기록해두는 포스트다. 많은 부분이 생략되어 있다.
혼자 일하지 말라
초기 설계에는 근본적인 실수가 있을 수 있다. 바퀴를 재발명하려는 실수를 범할 수 있다. 우리가 올바른 일을 하고 있는지, 제대로 하고 있는지, 그리고 다른 누군가가 이미 해놓은 일을 아닌지를 확인해봐야 한다.
가능한 일찍 피드백받고, 가능한 일찍 테스트하자.
코드 뿐만 아니라 계획이나 설계 변경이 필요한 시점을 즉시 알려줄 피드백 루프를 팀 플레이를 통해 달성할 수 있다.
모든 건 팀에 달렸다.
중요한 소프트 스킬 세가지
- 겸손 : 모든 것을 알고있다고 생각하지말고 배움에 열려있어야 한다.
- 존중 : 함께 일하는 동료를 진심으로 생각한다.
- 신뢰 : 동료들이 유능하고 올바른 일을 하리라 믿는다.
이 세가지를 바탕으로 사회적 관계에 힘을 써라.
자존심 버리기
자신이 팀에서 제일 중요한 사람을 드러내지 말라. 모든 걸 다 아는 듯 행동하지 말라. 집단적 자존심을 찾아라. 팀의 성취와 단체의 자부심을 높이려 노력하라.
비평하고 비평받는 법 배우기
상대방을 존중하고 건설적이고 공손하게 비평해라. 우리의 자존감을 우리가 작성한 코드와 동일시 해서 비평을 거부하지 말라.
빠르게 실패하고 반복하기
실패하지 않는다면 충분히 혁신적이지 않거나 위험을 충분히 감수하지 않은 것이다.
실패를 배우고 다음 단계로 넘어갈 수 있는 절호의 기회
라고 생각하자.
비난 없는 포스트모템 문화
실패의 원인을 분석해 문서로 남기는 것이 중요하다. 이를 포스트모템이라고 한다.
포스트모템은 쓸모 없는 사죄, 변명, 지적으로 채워지지 않고 무엇을 배웠는지 앞으로 어떻게 바꿀지가 담겨야 한다.
훌륭한 포스트모템
- 사건의 개요
- 사건을 인지하고 이를 해결하기 까지 타임라인
- 사건 근본 원인 파악
- 영향과 피해 평가
- 문제를 즉시 해결하기 위한 조치 항목(소유자 명시)
- 재발 방지를 위한 조치 항목
- 해당 경험에서 얻은 교훈
지식 공유
심리적 안전
자신이 이해하지 못한 게 있음을 인정해야 무언가를 배울 수 있다. 모르는 것을 인정하는 사람을 질책하지 말고 반겨야 한다. 배움에는 시도해서 실패해도 안전하다는 인식이 중요하다. 질문을 던지고, 틀리고, 새로운 지식을 얻는 걸 편안하게 생각해야 한다.
질문하기
항상 배우고 항상 질문하기를 잊지마라. 잘 모르겠으면 주위 동료들에게 질문하는게 내가 성장하는게 도움이 된다. 아무리 잘하는 사람이라도 모르는 분야가 반드시 있다. 이를 두려워 말고 도움을 청해본다.
특히 상급자라고 모든 것을 안다는 인식이 생겨나지 않도록 하라. 사소한 질문이더라도 친절하게 답변해주자. 적절한 도움은 개인과 팀 생산력에 큰 도움이 된다.
특히 일대일로 무언가를 배울 때는 기록해두는 습관을 가지자.
좋은 리더가 되기 위해서
섬기는 리더십
내가 누군가를 관리하는 것이 아닌 팀을 떠받드는 것이 중요하다. 겸손, 존중, 신뢰의 분위기를 조성하는 데 힘써야 한다. 혼자서 제거하기 힘든 관료적 장애물을 치워주고, 합의에 이르도록 이끄는 등 팀이 앞으로 나아가는데 필요한 기술적, 사회적 건강 관리를 한다.
오늘날의 엔지니어링 관리자
전통적인 관리자는 일을 어떻게 처리해야지를 고민하는 반면 훌륭한 관리자는 무슨 일을 처리할지를 고민한다.
관리자는 팀원을 아이처럼 대하지 말고 직원들을 신뢰하자. 직원들은 그 신뢰에 부응해야한다는 긍정적인 압박을 느낀다.
자존심 버리기
겸손과 자신감 결여는 구분하자. 자만하지 않아도 자신감과 의견을 가질 수 있다. 팀을 하나로 모으고 방향을 정하게 도와주는게 리더의 역할이다. 구체적인 방법은 실무자들에게 맡기는 게 그들의 주인의식과 책임감 향상에 더 도움이 된다.
리더가 모든 걸 알아야 된다는 강박에서 벗어나자. 완벽한 듯 행동하면 오히려 팀원들의 존경을 빠르게 잃어가고 자리 지키기에만 급급할 것이다.
팀의 최종 목표를 명심하고 피드백을 수용하고 비판에 마음을 열자.
실수했다면 인정하고 사과하자. 리더가 실수했다는 사실을 언젠간 팀원들이 반드시 알게 된다. 이를 사과할 줄 아는 리더를 팀원들은 존경한다.
마음 다스리기
리더는 항상 무대 위에 있다고 생각하는 방법이 좋다. 리더는 주변 사람들이 리더의 일거수일투족을 항시 두 눈 똑바로 뜨고 쳐다보고 있다는 뜻이다. 리더의 몸짓, 사소한 이야기에 돌아오는 반응, 점심식사를 하며 보내는 미묘한 신호들로부터 단서들을 얻어간다. 아무리 사소한 것이라도 리더가 내비치는 거의 모든 것이 무의식적으로 알려지고 팀에 전염된다.
촉매자 되기
리더는 합의를 이끌어 낼 줄 알아야 한다. 시작부터 끝까지 과정을 주도할 수 있고 올바른 방향으로 가속이 붙도록 조금만 관여할 수도 있다. 팀이 가야할 방향에 대한 합의를 이끌어내야 하는게 리더의 역할이고 이 과정에서 팀원들이 모두 합의할 수 있도록 촉매자가 되보자.
장애물 치우기
리더는 해야할 일에 대한 합의를 이끌어냈지만, 장애물 때문에 진행이 안될 수 있다. 이런 장애물을 해결하는 것도 리더의 역할이다. 이때 리더가 모든 장애물을 직접 해결해야 한다는 의미는 아니다. 다만 해당 장애물을 해결할 줄 아는 사람을 알고 있는 게 바람직하다.
선생이자 멘토 되기
내가 하면 더 빨리 될 일이더라도 팀원의 성장을 위해 그 일을 팀원에게 맡기는 일을 감수할 수 있어야 한다. 멘토는 팀의 프로세스와 체계에 대한 경험, 설명하는 능력, 멘티에게 도움이 얼마나 필요한지를 측정하는 능력이 필요하다.
명확한 목표 세우기
목표를 명확히 세우고 팀이 제품을 한 방향으로 끌게 해야 한다. 가장 쉬운 방법은 팀이 이루어야 할 임무를 구체적인 문장으로 적어놓는 것이다. 목표를 정하고 나면 팀원들이 각자 책임을 가지고 리더는 잘 가고 있는지 주기적으로 확인하자.
정직하기
리던느 팀원에게 모든 것을 알려줄 수 없는 상황에 있는 상황인 경우가 많다. 만약 그런 부분을 묻는다면 차마 말해줄 수 없다 라고 솔직하게 말하자. 그리고 모르는 사실은 모른다고 사실대로 말하자.
팀원에게 곤란한 피드백을 줘야 하는 경우는 존중을 담아서 솔직하게 전달하자. 칭찬으로 피드백을 둘러 쌓아서 하지 않도록 하자.
행복한지 확인하기
팀원들의 행복을 위해서 일대일 면담을 하거나 다음 업무를 수행하는 데 어려운 점은 없는 지 확인하는 방식을 선택할 수 있다. “더 필요한 것은 없나?”라고 물어보자.
파도를 일으켜야 할 타이밍을 알자
문제가 생긴 상황을 지켜보기만 하지 말자. 너무 방치하지 않고 적절한 조치를 찾아 실행시켜라.
혼란으로부터 팀을 보호하자
혼란과 불확실성으로 가득 찬 상황을 팀원들이 영향 받지 않도록 보호해야 한다. 다만 회사 위쪽에서 어떤 일이 일어나는 지 공유해주는 것도 중요하다. 다만 팀에 영양가가 없는 조직 차원의 광기로 팀 업무가 방해받지 않도록 하자.
내적 동기 일으키기
금전적 보상과 같은 외적 동기와 안에서부터 샘솟는 내적 동기가 있다. 사람들을 행복하게 하는 것은 내적 동기이다. 내적 동기는 자율성, 숙련, 목적이 키워준다.
- 자율성 : 스스로 행동할 수 있는 것. 제품과의 관계가 더 끈끈해진다. 제품에 대한 주인 의식이 커진다.
- 숙련 : 기술 수준을 높이고 새로운 것을 배울 기회를 제공하는 것.
- 목적 : 팀원들의 노력에서 의미를 찾고 그 의미를 분명하게 인식시켜주는 형태로 동기를 부여하자.
성장하는 조직 이끌기
하나의 팀이 아닌 여러 팀을 이끌기 위한 행동 지침을 알아보자.
늘 결정하라
리더는 팀이 매주 무엇을 해야 하는지 결정해야 한다. 트레이드오프가 명확할 때가 있지만 때로는 시간이 한참 지나야 피해를 주는 예상치 못한 결과를 가져다오기도 한다.
리더는 어렵고 명확한 해법이 보이지 않는 문제를 풀게 사람들을 이끄는 것이다. 어느 경우든 문제를 탐구하고 훑어보고 뜯어보면서 통제할 수 있는 상태로 만들어야 한다.
이 과정은 세 단계로 나뉜다.
- 눈가리개를 찾아내고
- 트레이드오프를 파악한다
- 해법을 결정하고 반복해야 한다.
눈가리개 찾기
항상 그래왔다는 문제에 대해 질문을 던지고, 현재 방식에 대해 문제가 있을 수 있는지 확인해본다.
핵심 트레이드오프 파악하기
모든 트레이드오프를 테이블 위에 올려놓고 모두에게 설명한 다음 어떻게 균형을 맞출지를 결정하도록 도와야 한다.
결정하고 반복하기
트레이드오프를 파악하고 특정 방법을 결정할 수 있다. 그러나 이 방법에 계속 유지하지 말고 상황이 변하면 트레이드오프를 다시 평가하고 새로운 방법을 결정하도록 하자. 이게 늘 결정한다라는 말의 의미이다.
트레이드오프의 지속적인 재조정을 프로세스에 녹여야 한다. 지금 선택한 방법이 계속 유지되지 않을 수 있음을 공유하자.
늘 떠나라
리더는 모호한 문제를 풀어줄 뿐만 아니라 맡은 조직이 리더 없이도 스스로 문제를 풀 수 있게 유도해야 한다. 리더가 SPOF가 되면 안된다.