이 책은 나에게 큰 영향을 끼쳤다. 저자 김창준님의 블로그팟캐스트도 함께 봤다.

특히 팟캐스트는 밥 먹을 때나 이동시간 때 여러번 반복해서 들었다.

자라기

야생 학습은 무엇인가?

야생 학습은 학교 학습과 반대되는 개념이다. 현실의 학습은 대부분 학교 학습보다는 야생 학습에 더 가깝다. 야생 학습에는 상반되는 의견과 정보가 흔하고 그 과정, 방법, 목표, 평가, 자료 등이 불확실하고 계속 변할 수 있으며 협력적이고 비순차적이다. 이러한 상황에서 학교 학습에서 했던 방식을 그대로 적용하려고 하면 좋은 성과를 낼 수 없다.

특히 1. 숨겨진 곳에, 2. 도인이 존재하며, 3. 몇 년간 고립된 곳에서 별생각 없이 그가 시키는 대로 해야 하며, 4. 그것이 지금은 납득되지 않지만 결국에는 나에게 좋을 것이라는 무조건적인 믿음을 갖고 따르다 보면, 5. 종국에는 비급을 사사받고 득도해서, 6. 마지막에 하산한다. 라는 판타지는 하나 하나가 모두 잘못이다.

책 내용과는 큰 관련은 없지만 '잘못된 판타지'라는 부분에서 '혹독한 조언이 나를 살릴까'라는 글이 생각난다.

왜 관심을 가져야 하는가?

나는 피터 틸이 한 말 중에 시간이 흐른다고 미래가 되지는 않는다.라는 말을 좋아한다. 어떻게 배우고 성장할 것인지 진지하게 고민하지 않으면, 시간이 흐른다고 잘해지지는 않는다.

당신은 몇년 차?

소프트웨어 기술자의 수준을 판단할 때 주로 학력, 경력 연차 등으로 판단한다. 학력도 결국 학교에서의 시간을 경력으로 인정해주겠다는 것이다.

그러나

  1. 경력 연차로부터는 초급인지 아닌지 정도의 정보만 기대할 수 있다.
  2. 초급 외에는 경력 연차가 오히려 혼동을 불러일으킨다.
  3. 따라서 경력 연차로 채용 여부나 임금 수준을 결정하는 것은 판단 편의적이고 관료주의적이며 조직에 손해를 주는 방식이다.

채용 시 가장 효과적인 예측변수는?

상관성은 -1 ~ 1 사이의 값. 0에 가까우면 상관성이 없는 것이고 절댓값이 0.5 정도면 강한 효과, 0.2 이하는 약한 효과. 다음 연구 결과는 85년간의 심리학 연구를 합해 메타 분석을 한 결과이므로 개별 연구에 비해 강한 증거력이 있다.

  • 직무성과와 경력 연차의 상관성은 0.18
  • 연차가 얼마 되지 않았을 때는 0.18보다 훨씬 높은 상관성을 가지나 조금만 지나면 곤두박질 침.
  • 직무성과와 관심사의 상관성은 0.10
  • 직무성과와 작업 샘플 테스트의 상관성은 0.54
  • 직무성과와 지능 테스트의 상관성은 0.51
  • 직무성과와 구조화된 인터뷰의 상관성은 0.51
  • 직무성과와 성격 테스트의 상관성은 0.31 ~ 0.41
  • 직무성과와 래퍼런스 체크의 상관성은 0.26
  • 직무성과와 필체, 나이 등의 상관성은 0.01 ~ 0.02

특히 경력과 실력의 상관성이 낮은 것을 극적으로 보여주는 연구가 있음. 의사가 졸업 후 연차가 1년 늘어날 때마다 이 사람이 치료한 급성 심근 경색 환자의 중증도 보정 사망률이 0.5% 증가. 자세한 내용은 '경력이 많은 의사에게 갈까 적은 의사에게 갈까' 참고.

소프트웨어 개발에서 경력과 실력

과거의 연구에서 전문가 == 경력 많은 사람 으로 설정하고 연구를 진행하는 경우가 많았으나, 이는 부적절함. 소프트웨어 설계와 프로그래밍에 대한 전문성 연구에서 경험이 많은 사람을 전문가로 본 연구에서는 그들이 문제를 이해하는 데 더 많은 시간과 노력을 기울이는 것으로 나타났다. 하지만 실력이 더 뛰어난 사람은 문제를 이해하는 데 시간을 적게 쓰는 것으로(통계적으로 유의미할 정도는 아니었으나) 나왔다.

톰 드마르코티모시 리스터가 1984년부터 1986년까지 수행한 연구에 따르면 회사에서 일하는 개발자들의 업무 능력이 최고가 최악의 약 10배, 중간이 그 이하의 2배 뛰어남을 발견했으나 이러한 결과와 경력은 아무런 관계가 없었음.

가장 학습하기 힘든 직업이 살아남는다.

인공지능이 학습하기 쉬운 조건은 인간이 학습하기 쉬운 조건과 같다. 따라서 학습하기 힘든 환경에서 학습하기 힘든 주제들을 골라 힘들게 학습해야 경쟁력이 있는 세상이다. 학습하기 어려운 조건은 다음과 같다.

  1. 목표가 모호하고 주관적일 수 있으며 동적이다.
  2. 매 순간 선택할 수 있는 행동/선택의 종류가 불확실하다.
  3. 매 순간 내가 목표에 얼마나 근접했는지를 알기 어렵다. (피드백을 받기 어렵다.)
  4. 주로 열린 시스템(불확실성이 높음) 속에서 일한다.
  5. 과거의 선택과 결과에 대한 구조화된 기록이 없다.

김창준님 팟캐스트애자일 자격증에서 비슷한 언급이 있는데, 33분 40초쯤부터 들어보면 실제 애자일을 잘하는지를 어떻게 알 수 있냐? 라는 질문에 김창준님이 어떤 종류의 전문성, 직업에 대해 자격증을 만들기 쉬울까? 라고 역질문을 하신다. 이러한 질문에 대답하려고 하면, 앞서 언급한 5가지를 전부 뒤집으면 자격증을 만들기 쉬운 조건이 되고, 그것은 공부하기 쉬운 환경에 대한 조건이 되고, 다시 말해 살아남기 어려운 직업의 조건이 된다.

옥스퍼드 대학교에서 발표한 고용의 미래라는 논문에 따르면, 해당 직업에서 독창성, 사회적 민감성, 협상, 설득, 타인을 돕고 돌보기 같은 것이 요구되는 수준이 높을수록 그 직업은 컴퓨터화하기 힘들다.

자기계발은 복리로 돌아온다.

자기계발은 복리로 돌아온다. 이에 대해서는 나도 을 쓴 적이 있다. (현재 블로그를 옮긴지가 얼마되지 않아 kaTex가 깨지는 것을 아직 고치지 못했다.)

따라서 더 빨리 자라고 싶다면

  1. 어떻게 이율을 높일 것인가?
  2. 지속적으로 현명한 투자를 하려면 어떻게 할 것인가? 를 고민해야한다.

어떻게 자라야 하는가?

배워도 별로 효과를 보지 못하는 경우

'아마 효과가 있겠지.' '안하는 것보다는 낫겠지.'

-> 과연 그럴까?

뛰어난 선생에 대한 미신

기업에서 강사를 뽑을 때 얼마나 많아 아냐를 주로 고려하는데 메타분석들에 따르면 교사의 주제에 대한 전문지식이 학생 학업성취도에 미치는 영향은 발달효과보다도 낮다.

음의 생산성이라는 글을 함께 보면 좋다.

의료계의 연구를 보면, 전문가가 특정 수술법을 가르칠 때, 자신이 해당 과제를 수행할 때 사용하는 지식 중 70%는 가르치지 않는다는 분석이 거듭해서 나왔다.

그렇게 때문에 자신이 가르치는 선생 입장이라면

  1. 내가 이 문제를 해결할 때 어떤 과정을 거치는가를 생각하며 스스로를 관찰해야한다. 그러면서 자신도 많이 배운다.
  2. 1과 같은 선생의 메타인지 능력이 학생의 학업성취도에 미치는 영향의 효과 크기는 자크마치 1.29이다.
  3. 학생들이 이걸 배우면서 어떤 생각을 하는가를 관찰하고 질문하고 분석해야한다.

자신이 배우는 학생 입장이라면

  1. 선생이 얼마나 아는지보다는 얼마나 자신과 학생에 대한 분석을 잘하는지를 기준으로 선생을 골라야한다.
  2. 선생의 메타인지를 돕기 위해 자기가 어떻게 생각했는지 그 인지적 과정을 알려줘야한다.
  3. 선생이 전문성은 가지고 있지만 가르치는 능력이 부족하다면, 그 선생의 실제 경험을 묻거나 문제를 해결하는 인지적 과정을 보여달라고 요구해야한다.

나홀로 전문가에 대한 미신

전문가 = 고독한 천재. 전문지식은 뛰어나지만 사회성은 부족함

이런 이미지는 틀렸다. 전문성이 높은 사람일수록 사회적 자본과 기술이 뛰어나다.

  1. 벨 연구소의 '뛰어난 연구자'의 특성에 대한 연구에 따르면, 뛰어난 연구자는 같은 부탁을 해도 훨씬 더 짧은 시간 안에 타인의 도움을 얻었다. You and Your Research가 생각난다. 저는 아주 좋은 행정 서비스를 받았습니다로 검색하면 관련 문단을 볼 수 있다.
  2. 최근 소프트웨어공학에서 이루어진 연구에 따르면 뛰어난 개발자일수록 타인과 인터랙션에 더 많은 시간을 쓴다.
  3. 한 연구에 따르면, 초보 개발자들을 위한 조언에서 뛰어난 개발자들의 약 70%가 동료와의 협력을 언급하는 반면, 그저 그런 개발자들은 20%도 언되는 사람들만이 동료와의 협력을 언급했다.

무엇을 하던지 나 혼자가 아니라 항상 누군가가 등장하고, 일의 성패에 다른 사람이 관련되어 있기 때문.

  1. 아무리 기술적인 실천법이라고 해도
  2. 그 기술은 사회적 맥락 속에서 실천되어야 하며,
  3. 그 기술의 성공을 위해서는 사회적 자본과 사회적 기술이 함께 필요하다.

잘못된 전문가 모델, 도인 메타포, 천재에 대한 환상 때문에 사회적 자본과 기술의 중요성에 대한 인식이 아직 부족하다. 사회적 자본과 기술없이 도메인 지식만 있으면 잘하기 어렵고, 해당 지식의 확산과 성공에 장애가 되기도 한다. 관련해서는 개인이 조직을 바꾸는 법을 참고하면 좋다.

사회적 기술에는 다음과 같은 것들이 있다.

  • 도움받기
  • 피드백 주고받기
  • 영향력 미치기
  • 가르치고 배우기
  • 위임하기

사회적 기술은 훈련으로 개선될 수 있으며, 일상에서의 마이크로 인터렉션에서 부터 그것을 기록하고, 복기하고, 다르게 했으면 어땠을까 생각하는 것만으로도 도움이 된다.

조직 차원의 전문성 관리

전문성은 진지하게 관리되어야하며, 이를 개인에게만 맡긴 후 회사는 손을 떼고 일 년에 한 번씩 하위 10%를 해고하는 것은 사회에나 회사에게나 개인에게나 모두 손해다. 성장할 수 있게 도와주는 조직 체계가 중요하다.

개인 차원의 전문성 관리

물론 이 내용들도 조직 차원의 전문성 관리에 사용될 수 있다.

의도적 수련

1만 시간의 법칙은 자신의 기량을 향상시킬 목적으로 반복적으로 하는 의도적 수련을 1만 시간 한다는 의미이다. 1만 시간을 만든 안데쉬 에릭손은 다음과 같이 딱 잘라 말한다. 55년 동안 걸었다고 걷는 게 점점 나아지고 있는 건 아닙니다. (중략) 자신이 즐기는 걸 한다고 해서 더 뛰어나게 될 것이라고 믿는 것은 미신이다.

더 잘하고자 하는 동기

예를 들어 양치질에서 최고 수준을 달성하려는 목표가 없으면 매일 3번씩 수십년을 해도 별 변화는 없을 것이다.

타당성

규칙성, 예측가능성이 없거나 작은 분야에서는 전문가가 되기 어렵다. 예를 들어 역사나 정치학의 전문가와 일반인이 장기적 정치 판도를 예측했는데, 결과에는 별 차이가 없었고, 개별 주식에 대한 주가 변화를 예측한 실험에도 펀드 매니저나 원숭이나 다를 것이 없었으며 심지어는 가끔 원숭이가 더 정확했다.

관련해서는 필립 테틀록Expert Political JudgementSuperforecasting: The Art of Science of Prediction을 참고하면 좋다.

자신이 하는 일이 타당성이 낮은 일이라 할지라도 변수를 제한하고 실험을 하면서 규칙성과 인과관계를 찾으려는 노력을 하면 이를 어느정도 극복할 수 있다.

짧은 피드백 주기와 실수를 교정할 기회

의도적 수련을 위해서는 피드백을 짧은 주기로 얻고, 실수를 교정할 기회가 존재하는 것이 정말 중요하다.

  1. 골프 연습을 하는데, 공이 어디로 가는지 모르고 치면 연습이 될까? 피드백도 없고 행동을 교정할 기회도 없다.
  2. 골프 연습을 하는데, 지금 친 공이 어디로 갔는지 1년 뒤에 알려주면 연습이 될까? 피드백을 짧은 주기로 받을수록 학습이 잘된다.

외과 수술의 경우 자신의 실수를 비교적 빠른 시간 내에 알게 되지만 내과 의사 같은 경우는 자신의 실수를 굉장히 나중에 알게 되거나 평생 모를수도 있다. 그래서 외과 수술의는 비교적 경험에 따라 전문성 누적이 된다는 보고가 있다.

다음은 에릭손의 진단전문의의 의도적 수련에 대한 이야기이다. 진단전문의는 환자를 한두번 본 다음, 평가를 내리고, 그 환자를 거의 다시 보지 못한다. 그런데 최고 수준의 진단전문의 하나를 인터뷰 해보니, 그는 상당한 시간을 자기 환자를 확인하는 데에 보내면서, 진단 시에 자신이 무얼 생각하는지 기록하고, 자신이 얼마나 정확했는지 확인했다.

다음은 에릭손의 말을 인용한 것이다. 특정 영역에서 개인이 성취할 수 있는 최고 수준의 퍼포먼스는 경험을 오래한다고 해서 자동으로 얻을 수 있는 것은 아닙니다.

적절한 난이도

동기, 타당성, 피드백 등 외에 의도적 수련의 필수요수가 하나 더 있다. 그것은 적절한 난이도이다. 적절하다는 것은 작업의 난이도와 실력이 비슷해야한다는 것이다. 이것과 일치하는 이론으로 칙센트미하이의 몰입 이론, 언어학자 크라센의 입력 가설, 교육학에서의 인지 부하 이론 등이 있다. 불안함이나 지루함을 느끼고 있다면, 실력이 늘지 않는다. 물론 행복감이나 자기효능김도 낮을 것이다.

특히 지루함을 느끼는 상태에 익숙해져 도전하려 하지 않는 상태를 Comfort Zone에 머무른다고 표현하는데, 이는 절대 성장할 수 없는 태도이다.

따라서 지속적으로 자신의 상태를 관찰하고, 지루하다면 난이도를 높이거나 실력을 낮추고, 불안하다면 난이도를 낮추거나 실력을 높이도록 조정해야한다. 실력을 낮춘다는 것이 잘 와닿지 않을 수 있는데 디버거를 사용하지 않고 머리로 디버깅을 하는 것이 그 한 예가 될 수 있다. 또 실력을 높인다는 것은 장기적으로는 스터디 참가, 단기적으로는 전문가에게 짝 프로그래밍을 요청하거나 좋은 개발 도구를 사용하는 것 등으로 달성할 수 있다.

이런 것이 가능하려면 자신이 지금 어떤 상태인지 살피는 능력(메타인지)이 필요하다. 메타인지는 교육학과 심리학 연구에서 공부를 잘하는 사람들의 중요한 특징 중 하나로 꼽힌다. 공부를 넘어서 모든 분야의 전문성, 구체적으로는 테스트 주도 개발 등에도 학심적인 능력이다.

A, B, C 작업

더글라스 엥겔바트는 작업을 A, B, C 작업으로 구분한다. A 작업 : 원래 하기로 되어 있는 일. B 작업: A작업을 개선하는 일. C 작업: B작업을 개선하는 일. The better we get at getting better, the better and faster we'll get better.

내가 만든 결과물을 나의 일부로 만들어서 다음 단계에 보탬이 되도록 이용해먹어야 한다. 즉 결과물이 다음 단계의 도구가 된다. 단순히 작업 시간을 늘리는 것은 더하기적 사고이다. 곱하기적 사고를 해야 지수적으로 성장할 수 있다.

뭔가를 뒤로 남겨두고 앞으로 나아간다는 뜻의 진보라는 치명적 메타포는 성장이라는 진짜 아이디어를 완전히 가려버렸는데, 성장은 우리 안에 뭔가를 남겨두고 커진다는 뜻이다.

즉 A 작업을 개선하려면 1. 어떻게 하면 더하기보다 곱하기를 할 수 있을지 고민하고, 2. 어떻게 해야 곱하는 비율을 높일 수 있는지 고민해야한다. 이를 위해서는 다음과 같은 것들을 고려해야한다.

  1. 자신이 이미 갖고 있는 것들을 잘 활용하라.
    • 새로운 것을 유입시키는 데에만 집중하다 보면 새로 들어온 것들이 이미 있는 것들을 덮어버릴 수 있다.
    • 자신이 올해 몇 권을 읽었다고 자랑하지 말고 내가 그 지식을 얼마나 어떻게 활용하는지 반성하라.
    • 이미 가지고 있는 것들을 서로 촘촘히 연결하라.
    • 새로운 것이 들어오면 이미 갖고 있는 것들과 충돌을 시도하라.
    • 현재 내가 하는 일이 차후에 밑거름이 될 수 있도록 하라.
  2. 외부 물질을 체화하라.
    • 주기적인 외부 자극을 받고, 그것을 빨리 자기화하라.
    • 외부 물질 유입 후 생긴 내부의 갈등을 덮어두지 말고 적극적으로 해결하라.
  3. 자신을 개선하는 프로세스에 대해 생각해 보라.
    • 예컨데 나의 A 작업을 되돌아보는 회고/반성 활동을 주기적으로 하는 프로세스를 만들어라.(C 작업)
    • 나를 개선하는 과정(B 작업)을 어떻게 하면 개선할 수 있을지 고민하라.
  4. 피드백을 자주 받아라.
    • 사이클 타임을 줄여라. 새로운 정보를 얻었다면 1년 후에 크고 완벽한 실험을 하려고 준비하기보다는 1달, 혹은 1주 후에 작게라도 실험해 보는 것이 좋다. 순환율을 높여라.
    • 일찍, 그리고 자주 실패하라. 실패에서 학습하라.
  5. 자신의 능력을 높여주는 도구와 환경을 점진적으로 만들어라.
    • 하지만 완벽한 도구와 환경에 집착해서는 안된다.
    • 실제로 관리, 시스템, 사람, 도구 순으로 개선 했을 때 소프트웨어 개발 비용이 줄어드는데, 관리자들은 자신으로부터 가장 먼 도구부터 개선하려하고 정작 자기 자신은 잘 변하려고 하지 않는 경향을 보인다.

학습 프레임과 실행 프레임

실행 프레임 : '잘하기'에 초점을 맞춤. 현재 주어진 과업이 뭔가 좋은 성과를 내는 걸로 생각하는 틀.

학습 프레임 : '자라기'에 초점을 맞품. 현재 주어진 과업에서 내가 얼마나 배우느냐로 생각하는 틀.

실행 프레임은 학습을 통한 성장에 불리한 선택이다. 아직 대학생이라서 그건 못할 것 같아요. 가 아니라, 아직 대학생이니까 이런 것도 시도해보려고요. 과 같이 사고해야함.

전문성 뽑아내기

인간 역앤지니어링(reverse engineering) 또는 인지적 작업 분석으로 불린다. 전문가에게 "~를 어떻게 잘하나요?"라고 묻기보다는 구체적인 사건에 대해 말하게 유도해야한다. 왜냐하면 "~를 어떻게 잘하나요?"같은 질문에 전문가들은 자신이 실제 하는 것과는 다른 이론적인 답변을 하는 경우가 많고, 자신도 잘 모르는 암묵적인 의사결정과 판단이 많기 때문이다.

예시)

Go언어를 어떻게 빨리 배우나요? (X)

Go언어를 최근에 배우셨던데 어떻게 배우셨는지 그 과정을 똑같이 보여주실 수 있나요? (O)

김창준님의 "인터뷰에서 진실을 들으려면"글을 참고하는 것도 도움이 된다.

실수는 예방하는 것이 아니라 관리하는 것이다.

미국 산림청의 산불 정책은 더 이상 산불 예방을 강조하지 않는다. 불을 인위적으로 억제하면 오히려 그 지역에 가연성 물질이 과도하게 축적되어 엄청난 규모의 불이 날 수 있다. 실제로 자연 상태에서는 적절한 시기에 작은 불이 나서 큰 규모의 불이 잘 나지 않는다.

김창준님이 팟캐스트에서 우리는 흔히 무슨 일이 터지만 '처음부터 제대로 했어야 한다.'라고 반응하는데, 이는 잘못된 것이라고 이야기한 것이 떠오른다. '처음부터 제대로 했어야 한다.'는 대표적인 실수 예방적 사고이다.

실수 예방 문화 : 실수를 한 사람을 비난하고, 처벌하고, 따라서 실수를 감추고 그에 대해 논의하기 꺼리며 문제가 생겼을 때 협력도 덜하게 된다. 실수에서 배우지 못한다.

실수 관리 문화 : 실수가 나쁜 결과를 내기 전에 빨리 회복하도록 돕고, 실수를 공개하고, 실수에 대해 서로 이야기하고 거기에서 배우는 분위기가 형성된다.

회사 문화가 실수 예방보다 관리에 가까울수록 그 기업의 혁신 정도, 수익성이 더 높다. 실수가 없으면 학습하지 못하기 때문이다. 불확실한 상황에서는 실수를 피할 수는 없고, 오히려 학습을 잘 하려면 실수를 해야한다. 조직에서도 이런 문화가 형성되어야겠지만 개인 차원에서 자신이 실수를 어떻게 보는지도 잘 돌아봐야한다.

함께

함께 한다는 것은 무엇인가?

왜 함께 해야하는가?

어떻게 함께 해야하는가?

애자일