/home/caml-shaving
함께 자라기
2025-02-06
새해를 맞이하여 김창준님의 저서 “함께 자라기”를 다시 읽어보았다. 이 책은 소프트웨어 엔지니어 뿐만 아니라 직업인으로서 우리가 가져야 할 삶의 지혜를 담고 있는 책이라고 생각해서 매년 한번은 되새김질하며 읽어보려고 하는 좋은 책이다. 이 나이에 영국에 와서 읽으면서 특히 와닿았던 부분을 정리해보았다.
자라기
책의 구성은 제목을 쪼개어 크게 “함께”와 “자라기” 파트로 나뉘어져 있는데, 특이하게도 “자라기”가 먼저 나온다. “애자일” 파트도 있긴 한데, 이건 아직 잘 와닿진 않았다.
경력
- 경력(구체적으로는 연차)는 성과와 많은 상관성을 가지고 있지 않다. 나도 그렇게 생각한다.
- 직무 성과와 상관 관계가 높은 것 중에는 의외로 아이큐 테스트(0.51)가 있었는데, 문득 옛날에 구글 입사 시험이라고 떠돌던 브레인 티저 형식의 문제가 꽤 의미 있는 것이라는 생각이 들었다.
- 작업 샘플 테스트 (실제로 채용 후에 해야하는 업무의 일부를 해보는 것) 와 구조화된 인터뷰 (직무 분석을 토대로 하는 인터뷰) 가 상관성이 높은 것은 의외가 아니었다. 특히 구조화된 인터뷰에서 중요한 질문이 많았는데, 예를 들어 “개발자로서 협력에 대한 철학이 무엇인가요?” 라던지 “지난 프로젝트에서 동료가 어려움을 겪을 때 어떤 행동을 했는지 구체적인 예를 들어주세요” 같은 질문은 많은 생각을 하게 해줬다.
의도적 수련
옛날 김창준님 블로그와 페이스북에서 자주 보던 단어가 바로 이 의도적 수련이다. 이와 관련해서는 많은 연구가 있지만 이걸 이분만큼 잘 소화해서 공유해주는 스피커는 적어도 내 네트워크 안에는 없었기 때문에 귀중한 정보였다.
- 1만 시간의 법칙은, 예를 들어 55년 동안 그냥 걸었다고 걷기의 달인이 될 수 있다는 것을 말하지 않는다. 자신이 즐기는 걸 그냥 계속 한다고 해서 더 뛰어나게 될 것이라고 믿는 것은 미신이다. 여기서 말하는 1만 시간은 “자신의 기량을 향상시킬 목적으로 반복적으로 하는” 의도적 수련(Deliberate Practice)를 뜻한다. 예를 들어, 바이올리니스트에게 공연 시간은 의도적 수련이 아니고, 체스 선수에게 대회 시간도 의도적 수련이 아니다. 이 뜻을 알고 나서 다시 보니 1만 시간이 정말 많은 시간인 걸 깨닫게 되었다.
- 중요한 것은 피드백을 짧은 주기로 얻고, 실수를 교정할 기회가 있어야 한다.
- 작업을 세 분류로 나눌 수 있다.
- A 작업. 원래 그 조직이 하기로 되어 있는 일. 겉으로 가장 잘 드러나는 수준이고 대부분의 자원이 이 수준에 초점이 맞춰져 있다.
- B 작업. A 작업을 개선하는 일. 제품과 서비스를 개발, 생산, 판매하는 것을 가능하게 해주는 시스템과 프로세스 자체를 설계하는 일이다. B 작업이 없으면 효과적인 A 작업이 불가능하다.
- C 작업. B 작업을 개선하는 일. 개선 사이클 자체의 시간, 품질을 개선하거나 개선하는 능력을 개선하는 것이다. 가장 미묘하고도 또 잠재적인 영향력이 가장 크다. 우리의 사고방식과 상호작용 방색을 개선한다. 궁극적으로는 C 작업의 품질이 우리가 설계하는 시스템과 프로세스의 품질을 결정짓고, 나아가 회사가 제공하는 제품과 서비스의 품질을 결정짓는다.
- 어떻게 할 것인지가 평생의 화두이다.
- 내가 갖고 있는 것들을 잘 활용해야 한다. 인풋에만 집중하다 보면 이미 있는 것들을 덮어버릴지도 모른다. 책 몇 권 읽은게 중요한게 아니라, 읽은 책의 지식을 어떻게 얼마나 활용하고 있는지를 살펴봐야 한다.
- 이미 갖고 있는 것들을 촘촘히 연결한다. 제텔카스텐이나 org-roam이랑 같은 결의 얘기인듯.
- 적절한 난이도가 필수 조건이다. 나의 실력과 작업의 난이도가 비슷해야 의미있는 수련을 할 수 있다. 이게 안맞으면 지루함이나 불안함, 두려움을 느낀다. 난이도를 적절히 조절하자.
- 실험에서 쉬운 작업을 먼저하고 어려운 작업을 하면, 그 반대 순서로 작업하는 것에 비해서 수행 시간에는 유의미한 차이가 없지만 정확도가 높아진다. 난이도를 낮춰서 학습 효과, 동기 부여, 스트레스 감소, 자기 효능감 증가 등의 긍정적인 효과를 보았기 때문이라고 해석했다.
사회적 자본
아마도 이 책이 다른 (특히 엔지니어링 리더십 관련) 책들과 다른 점이 바로 이 점이 아닐까 한다. 근데 이 파트는 ‘자라기’가 아니라 ‘함께’가 더 어울리는 것 같기도.
- 아무리 기술적인 실천법이라고 해도 그 기술은 사회적 맥락 속에서 실천되어야 하며, 따라서 그 기술이 성공하려면 사회적인 자본과 사회적 기술이 함께 필요하다.
- 신뢰가 깨져 있는 상태에서는 어떤 행동을 해도 악의적으로 보인다. 고독한 전문가는 미신이다. 전문가는 사회적 자본과 사회적 기술 또한 뛰어나다.
- 기술적 요소보다 사회적 요소가 병목이 될 확률이 높다.
- “그 조직에 속한 사람들이 선생님을 좋아하나요?”
- 중요한 사회적인 기술이라는 게 생각보다 거창한 것이 아니다. 도움 요청하기, 피드백 주고받기, 영향력 미치기, 가르치고 배우기, 위임하기 등.
함께
소프트웨어 개발을 잘 관리하기 위한 세 가지 근본적인 능력
- 복잡한 상황을 이해하는 능력. 프로젝트를 계획한 다음, 관찰하고 행동하여 계획에 맞게 프로젝트가 진행되게 하거나 계획을 바꿀 수 있어야 한다.
- 관찰하는 능력. 뭔 일이 벌어지고 있는지 관찰하고, 효과적인 적응 행동을 하기 위해서 내가 관찰한 것이 어떤 의미인지를 이해할 수 있어야 한다.
- 행동하는 능력. 어려운 대인 상황 속에서도, 혼란스럽거나 화가 나거나 아니면 무서워서 도망쳐 숨어버리고 싶은 순간에도, 적절하게 행동할 수 있어야 한다.
탁월한 팀의 비밀
- 팀에 누가 있는지가 중요한게 아니라, 팀원들이 서로 어떻게 상호작용하고 자신의 일을 어떻게 바라보는지가 훨씬 중요하다. 그런 의미에서, 리더는 이 두 가지가 잘 피어날 수 있도록 팀의 문화를 조성해야 한다고 생각한다.
- 팀의 심리적인 안정감이 굉장한 예측력을 보인다. “심리적 안정감”이란, 내 생각이나 의견, 질문, 걱정, 혹은 실수가 드러났을 때 처벌받거나 놀림받지 않을 것이라는 믿음을 뜻한다.
- 다음과 같은 질문으로 예측이 가능하다: 내가 이 일에서 실수하면 그걸로 비난 받는 경우가 많은지? 이 조직에선 남들에게 도움을 구하기가 어려운지? 관리자가 새로운 방법을 배우거나 새로운 일을 맡도록 격려하는지? 이직할 생각이 있다면 관리자에게 이야기를 할 수 있는지? (이건 한국에선 좀 다를지도 모르겠다), 관리자에게 문제를 제기하면 도와주는데 관심을 갖는지?
- 관련하여 아주 흥미로운 사례가 있었는데, 실수율이 낮은 병원이 좋은 병원이 아닐 수 있다는 것이었다. 실수율은 조직의 보고 문화와 관련이 깊었는데, 실수율이 낮은 조직은 실수를 적게 하는 게 아니라 실수를 공개하는 것이 공격받을 수 있어서 실수를 감추는 조직이었다는 것이다.
- 리더가 팀의 학습 속도에 큰 영향을 미친다.
- 새로운 기술 도입은 기술적 도전이 아니라 조직적 도전이다. 개개인이 새로운 기술을 획득하는 것이 아니라, 함께 일하는 새로운 방법을 만든다고 생각해야 한다.
- 냉소주의는 전염성이 강하다.
어쩌면 당연한 말을 적어둔 것일지도 모르겠다. 사실 이런 류의 내용이 다 비슷한게, 글로 적거나 말로 읊으면 당연하고 지루하지만 막상 이걸 진짜로 실천하는 사람은 정말 극소수이다. 특히나 최근에 여러가지를 겪으면서… 이 중 몇 개는 절실하게 깨달았다. 얼마나 실천할 수 있을진 모르겠지만, 자주 찾아보면서 다시금 새길 수 있으면 좋겠다.