[책] 함께 자라기 - 애자일로 가는

June·2022년 1월 25일
0

책 요약 및 정리

목록 보기
6/6

자라기

당신은 몇 년 차?

경력은 기준치만 넘으면 중요하지 않다. 구조화된 인터뷰와 실제 작업을 해보도록하는 작업 샘플 테스트, 그리고 실제 업무를 주고 짧은 기간 동안 일을 해보게 하는 것 등을 권한다. 그리고 구인 과정에서 실제로 함께 일할 사람들이 인터뷰에 참여하도록 하는 것을 강력히 권한다.

잘 뽑는 것 이상으로 중요한 것
1만 시간의 법칙에서 1만 시간은 '자신의 기량을 향상시킬 목적으로 반복적으로 하는 수련'을 한 시간을 일컫는다. 업무를 하면서도 의도적으로 수련을 할 수 있는 방법이 있다.

애자일 철학을 이용하는 것이다. 피드백을 짧은 주기로 얻고, 실수를 교정할 기회가 있는 것 이 두 가지가 중요하다.

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

A 작업: 원래 그 조직이 하기로 되어 있는 일
B 작업: A 작업을 개선하는 것
C 작업: B 작업을 개선하는 것

C의 영향력이 가장 크다. 회고가 중요한 이유다.

  • 자신이 이미 갖고 있는 것들을 잘 활용하라.

    • 이미 갖고 있는 것들을 하이퍼링크로 서로 촘촘히 연결하라.
  • 자신을 개선하는 프로세스에 대해 생각해 보라.

    • 예를 들어 회고.
  • 피드백을 자주 받아라.

    • 일찍, 그리고 자주 실패하서 거기서 학습하라.
  • 자신의 능력을 높여주는 도구와 환경을 점진적으로 만들어라.

    • 완벽한 도구와 환경을 갖추는 데에 집착해서는 안 된다.

학습 프레임과 실행 프레임

실행 프레임에서는 '잘하기'에 집중한다. 학습 프레임에서는 '자라기'에 초점을 둔다. 물론 학습 프레임에서 훨씬 많이 학습한다.

달인이 되는 비결

동기가 부족하다
피드백을 제때 받지 못한다.

수십 년 동안 전문가가 안 되는 비결

타당성: 직관이 적용되는 영역에 어느정도 인과관계와 규칙성이 존재해야 한다. 예측가능성이라고 말할 수도 있다.

수십 년 동안 일을해도 타당성과 피드백이 부족한 환경에서 일하면 전문가가 되기 어렵다. 타당성을 높이려면 변수를 제한하고 실험을 하면서 규칙성과 인관관계를 찾으려는 노력을 하면 된다. 피드백을 높이려면 동료나 상사, 고객에게서, 혹은 내가 개발하는 프로그램에서 직접 피드백을 적극적으로 구하면 된다.

지루함을 느끼는 경우: a1 실력 낮추기
컴파일을 30초에 한번 하다가 5분에 한번 하는 등.

지루함을 느끼는 경우: a2 난이도 높이기
성능 개선하기, 작업 시간 단축하기, 리팩터링 하기, 자동화 테스트 달기 등

남들보다 일을 좀 더 효율적/효과적으로 하기 위해 내가 직접 만들어 쓰는 나만의 도구, 방법을 만들기.

불안함을 느끼는 경우: b2 실력 높이기
나보다 뛰어난 전문가의 도움 받기 (짝 프로그래밍, 괜찮은 튜토리얼 문서 읽고 따라하기)

불안함을 느끼는 경우: b1 난이도 낮추기
자신이 맡은 일의 가장 핵심 적인 결과물을 첫 번째로 삼기. 실제로 쉬운 것을 먼저하고 어려운 것을 하는 것이 학습 효과, 동기 가오하, 스트레스 감소, 자기 효능감 증가 등의 이유로 이득을 본다.

핵심은 지속적으로 자신의 감정 상태를 살펴서 지루한지 불안한지를 알아채는 것이다. 메타인지다.

프로그래밍 언어 배우기의 달인

튜토리얼을 읽을 때 뭘 만들지 생각하고 읽는다
튜토리얼을 읽다가 이 정도면 그 프로그램을 작성할 수 있겠다는 생각이 들면 그 자리에서 읽기를 멈추고 코딩을 시작한다. 프로그램을 완성하면 다시 돌아와서 읽는다.

공부할 때 표준 라이브러리 소스코드를 읽는다.

공부 중 다른 사람의 코드에 내가 필요한 기능을 추가한다

전문성을 효과적으로 뽑아내는 전문가가 되기
어떻게 잘하냐고 전문가에게 묻는 것은 별로 도움이 안된다. 구체적인 사건에 대한 질문을 하고 관찰한다.

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

실수를 예방하려고 하면 효과적인 학습 전이가 발생하지 않는다. 다만 실수 관리를 잘해야 한다.

뛰어난 선생에 대한 미신

교사의 지식은 크게 상관이 없다. 교사의 인지적 작업 분석 능력이 학업 성취도에 크게 영향을 미친다. 학생은 선생에게 자신의 인지적 과정을 알려주거나, 또는 그 인지적 과정 자체를 알려달라고 요청하는 것이 도움이 된다.

나홀로 전문가에 대한 미신

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

협력을 통한 추상화

다른 시각을 가진 두 사람이 협력을 하다보면 중간 매개로서 추상화를 하게된다. 이 추상화는 소프트웨어 공학에서 중요하다.

신뢰를 깎는 공유인가 신뢰를 쌓는 공유인가

신뢰를 쌓는데 널리 사용되는 한 방법은 투명성과 공유, 인터랙션이다. 자신이 한 작업물을 투명하게 서로 공유하고 그에 대해 피드백을 주고받으며 인터랙션을 하는 것이다.

실험에선 하나 공유보다는 복수 공유가 신뢰성 향상에 효과가 있었다.
즉 여러 개를 만들어놓고 서로 피드백을 주는 것이다.

애자일

애자일은 불확실성이 높은 일에 어떻게 해야하는지 고민한 결과물이다. 좀 더 짧은 주기로 더 일찍 피드백을 받고, 더 다양한 사람으로부터 피드백을 받는다. 애자일은 서로의 업무를 공유하고 상호 검토하는 협력을 통해 불행한 일을 '또는' 조건에서 '그리고' 조건으로 바꾼다.

애자일의 핵심 구동원리는 협력과 학습이다.

0개의 댓글