함께 자라기 - 애자일로 가는 길(김창준)

KakaoTalk_Photo_2021-12-15-14-11-14

  • 완독 : 2021.11월 ~ 2021.12월(한 달)
  • 함께 자라기 - 애자일로 가는길(김창준 님) 을 보고 정리한 글

    • 편하게 읽고 넘기고 싶었으나 너무나 좋은 내용들이 많아 중요한 부분들을 따로 정리한다.
  • 이전 회사에서는 도서지원 복지가 없었는데 신입인 주제에 한 달에 한권씩 해달라는 요구를 관철(?) 시켜 지원 받은 책(감사합니다). 회사의 도서지원으로 읽은 3번째 책이었다(유닉스의 탄생, 나는 주니어 개발자다)

    • 반납해야만 했었기에 깨끗하게 읽어야 했고 기술책처럼 두고 보면서 반복해서 읽는 책이 아닌 비교적 가볍게 볼 수 있을 듯한 책들을 주로 신청했었다.
    • 편하게 잘 읽고 있었는데 ‘개발바닥’이라는 유투브에서 김영한 님이 추천하셔서 갑자기 인기가 치솟아 못 살뻔 했었는데 다행이었다.
  • 현재 이직이 확정된 상태에서 마지막 말년 휴가를 보내며 이 책 반납 이틀 직전에 정리한다.

    • 의견을 뒷받침할 수 있는 회귀 분석 등 통계적인 수치들은 생략하였다.
    • 모든 내용을 다 정리하진 않았고 앞으로 성장에 대한 고민이 되거나 내가 시니어 또는 매니저가 되었을 때 나 스스로 돌아보기 위해서 기록한다.
  • 이 책에서는 함께자라기, 이 2가지가 애자일이라고 하는 일하는 방법의 핵심.

느낀 점

현재

  • 스스로 반성을 많이 했다. 앞으로 이래야겠다 ~ 라는 단순한 말에서 끝나는 것이 아니라, 아 내가 그렇게 했으면 안됐었구나.. 라는 자기반성도 하게 되었다.

미래

  • 나중에 내 주변의 팀원들과 일하게 될 경우와 훗날 내 밑에 후임분이 들어오게 되었을 때 내가 나도 모르게 실수나 섣부른 행동으로 팀워크를 그르치지 않아야 겠다고 결심.
  • 인간은 망각의 동물이니 종종 이 페이지를 찾아볼 것

(책 내용 정리)

1. 자라기

당신은 몇 년 차?

  • 실력은 경력(년 차) 보다 폭넓은 경험에 비례한다.

    • 경력의 양적인 면이 아니라 질적인 면의 중요성을 발견한 것
    • 1만 시간의 법칙에서 1만 시간은 자신의 기량을 향상시킬 목적으로 반복적으로 하는 의도적 수련을 의미
  • 의도적 수련을 하는 2가지 방법

    1. 피드백을 짧은 주기로 하는 것
    2. 학습하고 있는 행동이 높은 효율로 이루어지는가를 계속 판단하는 진단
    3. 실수를 교정할 기회가 있는 것
    4. 1번 방법에서의 피드백을 받아 더 좋은 효율로 올리는 것

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

  • 지식이나 능력은 복리로 이자가 붙는다.

    • 통계상 하루 평균 1시간도 투자하지 않는 사람은 자기계발이란 면에서 직장인의 하위 1/3에 속하는 셈.
    • 이게 축적이 되면 엄청난 차이가 난다. 복리로 이자가 붙기 때문.
  • 복리의 비밀

    • 일반 조직이 일하는 곳에서 만약, 조직은 그대로이며 결과물을 주기적으로 찍어낸다면 결과물에는 큰 변화가 없다. 동일한 조직에서 동일하나 제품을 반복적으로 찍어내는 공장의 비유.
    • 하지만 복리 조직 에서는 첫 주기에 만들어낸 결과물을 계단 삼아서 다음 주기에는 조금 더 높은 위치에서 다음 결과물을 만들어 낸다. 내가 만든 결과물을 나의 일부로 만들어서 다음 단계에 보탬이 되도록 이용해먹는 것.
    • 이런 기술을 부트스트래핑(bootstrapping) 이라고 한다. 자기가 신은 신발에 달린 끈을 들어 올려 자신의 몸을 공중에 띄운다는 뜻에서 생긴 단어. 외력의 도움 없이 스스로 상황을 개선하는 것을 의미. 다른 단어로 지수적 증가
  • 성장에 가장 중요한 2가지 질문

    1. 어떻게 하면 더하기보다 곱하기를 할 수 있을 것인가
    2. 어떻게 해야 곱하는 비율(이자율)을 높일 수 있는가 혹은 이자 적용 주기를 짧게 할 것인가
  • 위 2가지 질문에 대한 도움되는 몇 가지 해답

    1. 자신이 이미 갖고 있는 것들을 잘 활용하라
    2. 갖고 있는 것을 잘 활용할 것
    3. 이미 갖고 있는 것들을 서로 촘촘히 연결. 서로 연결 지어서 시너지 효과를 나게 하고 서로 넘나들기 수월해지도록 만들기
    4. 새로운 것이 들어오면 이미 갖고 있는 것들과 충돌 시도
    5. 현재 내가 하는 일이 차후에 밑거림이 될 수 있도록
    6. 외부 물질을 체화
    7. 내부 순환만 하지 말고 주기적인 외부 자극 필요. 단 외부 자극이 있을 시 그걸 재빨리 자기화해야 한다.
    8. 외부 물질 유입 이후 생긴 내부의 갈등을 해결하려는 데에 노력을 기울어야 한다.
    9. 자신을 개선하는 프로세스에 대해 생각
    10. 나의 작업을 되돌아보는 회고/반성 활동을 주기적으로 하기
    11. 나를 개선하는 과정을 어떻게 하면 개선할 수 있을지 고민
    12. 피드백을 자주 받기
    13. 사이클 타임 줄이기. 새로운 정보 받았다면 최대한 빠른 시기 안에 작게라도 실험해 보려고 해보기
    14. 일찍, 그리고 자주 실패하기. 실패에서 학습하기
    15. 자신의 능력을 높여주는 도구와 환경을 점진적으로 만들기
    16. 도움되는 도구와 환경 만들기
    17. 하지만, 100% 갖춰질 때는 절대 없다. 일단 시작하면서 추가로 갖추기

학습 프레임과 실행 프레임

  • 현재의 상황을 긍정적으로 바라보기
  • 현재의 상황을 때문에보다는 덕분에라는 관점으로 바라보기
  • 동일한 자극/조건이 주어졌을 때 다른 사람보다 더 많은 학습과 성장의 기회를 찾고 오히려 그 조건을 자신에게 유리한 조건으로 생각하기

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

  • 학습하기 힘든 환경과 주제(소위 암묵지, 직관 같은 것들이 작동하는 회색 영역)

    1. 목표가 모호하고 주관적일 수 있으며 동적이다.
    2. 매 순간 선택할 수 있는 행동/선택의 종류가 불확실하다.
    3. 매 순간 내가 목표에 얼마나 근접했는지를 알기 어렵다(내가 한 선택의 피드백을 빨리 얻기 어렵다)
    4. 주로 열린 시스템(즉, 예상 못한 외부 요소가 갑자기 들어오는 경우가 흔한) 속에서 일한다.
    5. 과거의 선택과 결과에 대한 구조화된 기록이 별로 없다.
  • 암묵지, 직관의 영역에서 중요한 역량

    1. 독창성
    2. 주어진 주제나 상황에 대해 특이하거나 독창적인 생각을 해내기, 혹은 문제를 해결하는 창의적인 방법들을 만들어 내기
    3. 사회적 민감성
    4. 타인의 반응을 알아차리고 그 사람들이 왜 그렇게 반응하는지 이해하기
    5. 협상
    6. 사람들을 화해시키고 서로 간의 차이를 조정하려고 노력하기
    7. 설득
    8. 다른 사람들이 마음이나 행동을 바꾸게 설득하기
    9. 타인을 돕고 돌보기
    10. 개인적 도움, 치료, 감정적 지지, 혹은 동료, 고객, 환자 같은 타인들에 대한 기타의 개인적 도움을 제공하는 것

달인이 되는 비결

  1. 실력을 개선하려는 동기 필요
  2. 구체적인 피드백을 적절한 시기에 받아야 한다

당신이 제자리걸음인 이유

image

  • 작업 난이도와 실력이 조화로워야 한다.
  • 업무 시간 중에 불안함이나 지루함을 느끼는 때가 대부분이라면, 실력이 도무지 늘지 않는 환경에 있는 것이다.

    • 무서운 것은 이런 환경에 익숙해지고 행동이 습관화된다는 것
  • 지루함을 느끼는 경우 : a1 실력 낮추기
  • 즐겨 쓰던 보조 도구 쓰지 않기
  • 디버그를 잠깐 쓰지 말고 작업해보기
  • 마우스 쓰지 않고 키보드로만 해보기
  • 지루함을 느끼는 경우 : a2 난이도 높이기
  • 기한이 하루인데 한 시간만에 할 수 있는 방법 찾아보기
  • 100rps(Request per Second) 시스템을 10000rps 기준으로 만들기
  • 버그를 좀 더 많이 찾아보기(시간당)
  • 익숙한 작업을 새로운 언어로 진행해보기
  • 공식적으로는 안 해도 되는 업무를 자신의 의지로 추가하는 경우
  • 불안함을 느끼는 경우 : b2 실력 높이기
  • 장기적으로 실력을 높이는 방법은 많다

    • 책, 인터넷 강의 등
  • 당장 불안함을 느끼고 있다면? 3가지 접근

    1. 사회적 접근
    2. 나보다 뛰어난 전문가의 도움 얻기. ex) 페어 프로그래밍 요청
    3. 인터넷에서 전문가의 도움 받기
    4. 튜토리올 문서 따라하기
    5. 도구적 접근
    6. 괜찮은 디버거, IDE 사용
    7. 내관적 접근
    8. 비슷한 일을 했던 경험을 머릿속에서 되살려 보는 것.
    9. 이런 과정을 통해 자기효용감이 증대하면서 스스로 인식하는 자기 실력이 향상되기 쉽고, 결과적으로 몰입 영역으로 들어가기 좋다.
  • 불안함을 느끼는 경우 : b1 난이도 낮추기
  • 맡은 일의 가장 간단하면서도 핵심적인 결과물을 첫 번째 목표로 삼는 것.

    • 애자일의 WTSTTCPW(What’s The Simplest Thing That Could Possibly Work?)
  • 추가) 동적 평형
  • 위의 1~4번의 효과를 주면서 자신의 실력이나 작업의 난이도가 계속 조금씩 요동을 칠 수 있다. 그 과정에서 적절하게 난이도와 실력을 조정해 나가야 한다. 즉, 지속적으로 자신의 감정 상태를 살피면서 지금 지루한지 불안한지를 알아채고 만약 지루함이나 불안함을 느낀다면 앞의 네가지 전략을 적절히 잘 사용해야 한다는 것.
  • 이렇게 자기가 지금 어떤 상태인지 메타인지 전략이 필요하다.
  • 팀장이 되었을 경우에도 팀원들을 몰입 영역 내에 지속적으로 머물 수 있도록 잘 도와야 한다.

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

  1. 튜토리얼을 읽을 때 뭘 만들지 생각하고 읽는다. (적극적 읽기)
  2. 튜토리얼 읽다가 이 정도면 그 생각하고 있던 프로그램을 작성할 수 있겠다라는 생각이 들면 그 자리에서 읽기를 멈추고 코딩을 시작. 프로그램 완성하면 다시 돌아와서 그 다음 프로그램을 생각하면서 읽기
  3. 공부할 때 표준 라이브러리 소스코드를 읽는다.
  4. 표준 라이브러리는 보통 해당 언어 발명자가 직접 작성하거나 적어도 해당 언어의 스타일을 따르는 소수의 사람들이 작성. 가장 그 언어다운 코드들의 말뭉치이다.
  5. 공부 중 다른 사람의 코드에 내가 필요한 기능을 추가한다.
  6. 자신이 만들 수 있는 작고 간단한 추가 기능을 생각
  7. 유용하면서도 작고 간단한 것 생각해 내는 것은 앞서의 몰입을 위한 난이도 조절에 해당
  8. 전문성을 효과적으로 뽑아내는 전문가가 되기
  9. 뻔하게 열심히 했다 라는 말을 통해서는 별로 배울 것이 없다.
  10. 구체적인 사건에 대해 말하도록 유도하는 것. 뭔가 잘하고 싶다면 이미 잘하는 사람을 관찰하고 인터뷰하는 것부터 시작하는 것이 큰 도움이 된다.

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

  • 실수 예방, 실수 관리 총 2가지 중에서 실수 관리가 중요하다
  • 실수 예방은 실수를 계속 감추게 되어 성장이 더디다. 실수를 끊임없이 관리하는 차원에서 적극적인 시도, 성장들이 이루어진다.

뛰어난 선생에 대한 미신

  • 교육은 투입으로 성과를 보통 측정하는데 잘못된 방식. 대부분의 훈련은 6개월 정도만 지나도 효과가 거의 사라짐
  • 전문가가 가르쳐주는 것은 전부가 아니다. 무의식적인 좋은 습관들은 본인들이 인지를 못하고 있기 때문
  • 인지적 작업 분석으로 극복하면 된다.

나홀로 전문가에 대한 미신

  • 아무리 기술적인 실천법이라고 해도(ex. TDD) 그 기술은 사회적 맥락 속에서 실천되어야 하며 그 기술의 성공을 위해서는 사회적 자본과 사회적 기술이 함께 필요하다
  • 하지만 안타깝게도 현실에서는 팀원들이 맘에 안 들고, 그들도 나를 맘에 들어 하지 않는 상호아, 즉 사회적 맥락이 나쁜 상황에서 타개책으로 TDD의 기술적 측명네만 매몰되는 경우가 있다. 사실 그런 상황에서는 무엇을 골라도 실패가 보장.
  • 즉, 어떤 기술적 실천법이라도 그걸 현실에서 적용하기 위해서는 사회적 자본과 기술이 필요
  • 사회적 자본과 기술

    • 신뢰가 가장 중요
  • 뛰어난 개발자일수록 동료와의 협업을 중요시. 즉 고독한 천재는 별로.
  • 어떤 기술적 지식을 전달한다고 해도 그것을 사회적 맥락 속에서 가르치고 경험하게 하려고 해야 한다.
  • 어떠한 좋은 기술(ex. TDD도입, SVN->Git 변화) 을 팀에게 적용하려고 했으나 사람들이 수동적이고 보수적이다라고 느껴졌을 때는 자문해야 한다.

    • 그 조직이 나를 좋아하는가?

2. 함께

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

  • 신뢰 자산이 높은 조직은 커뮤니케이션 효율이나 생산성이 높다.

    • 복수 공유는 신뢰도 높아지고 성과도 좋다. 여러가지를 공유하자.
    • 단일 공유는 신뢰, 성과가 떨어질 가능성이 있다. 단일한 것 자체가 스스로를 대변한다고 생각해서 피드백에 민감해지고 부담이 증대

객관성의 주관성

  • 품질은 상대적이다

    • 품질이란 누군가에게 가치가 되는 것.
    • 인간에 대한 이해가 필수
    • 결국 결정하는 것은 사람이이다
  • 감정을 배제할 수 없다

    • 의사 결정을 하는 과정에 감정적이고 직관적인 부분이 큰 역할을 하고 있으며, 그런 감정적 부분이 배제된다면 의사결정을 제대로 할 수 없다.
    • 감정과 이성을 깨끗하게 분리할 수 없다. 좌뇌(수학)와 우뇌(예술)의 구분은 과학적 근거가 없다. 대부분의 고차원적 뇌활동은 좌우뇌 구분 없이 전역적으로 벌어진다.
  • 객관성이라고 하는 것은 상대적이며, 내가 생각하는 객관이 상대의 객관이 아닐 수 있고, 그러므로 설득에 성고하려면 우선 그 사람을 이해하는 것에서 출발해야 한다. 그런 이유로 설득을 하기 위해 ‘객관적’ 자료를 모으는 부분이상으로 상대를 이해하는 데 많은 시간을 투자해야 한다.

이것도 모르세요?

  • 대화법이 매우 중요.
  • 공감하고 이해하려는 대화가 필요
  • 행동을 유도하는 대화가 필요

하향식 접근의 함정

  • 전문가는 언제나 탑다운 으로 깔끔하게 해결할 것이라는 것은 잘못된 것. 단일 방향으로 끝임.
  • 프로그램을 이해할 때 상호 참조 전략이 필요하다.

    • 프로그램을 연구하면서 이해한 것을 도메인 어휘로 번역하고 도메인 어휘를 다시 프로그램상의 어휘로 바꿔서 검증.
    • 즉 추상과 구상의 차원을 자주 오가는 것
    • 두 세계를 빈번히 연결하려는 노력이 필요.
  • 빠르고 빈번한 바통 터치가 가능한 전문가 조직

    • 잦은 바통 터치는 오버헤드 발생 가능성. 오버헤드 낮추려면 협력 모델이 바통 터치 모형에 기반하지 않고 삼투압 모형에 기반.
    • 삼투압적 의사소통. 즉, 배어드는 소통방식. 은연중에 정보가 스며드는 것. 그럴려면 사람들이 물리적으로 가까운 거리에 있어야 한다.
    • 한번에 처리되는 일의 양을 줄여야 하고 지속적 흐름을 만들어야 한다.

전문가팀이 실패하는 이유

  1. 전문가들 모아서 팀 만든다고 잘하는 것 아님
  2. 오히려 성과가 떨어질 수 있음
  3. 정보 공유하고 협력을 잘하기 위한 명시적 도움 필요
  4. 소셜 스킬 등 뛰어난 제너럴리스트가 있으면 도움 된다.

구글이 밝힌 탁월한 팀의 비밀

  1. 팀에 누가 있는지(전문가, 내향/외향, 지능 등) 보다 팀원들이 서로 어떻게 상호작용하고 자신의 일을 어떻게 바라보는지가 훨씬 중요
  2. 성공하는 팀의 압도적 공통점은 심리적 안전감이었다.

    • 심리적 안전감이란 내 생각이나 의견, 질문, 걱정, 혹은 실수가 드러났을 때 처벌받거나 놀림받지 않을 거라는 믿음
  3. 팀 토론 등 특별히 고안된 활동을 통해 심리적 안전강믈 개선할 수 있었다.
  4. 위의 1~3 단계 이전에 우선적으로 중요한 것

    • 어떤 새로운 프로그램을 도입하기 전에 리더와 관리자가 매일매일 팀원들과 갖는 마이크로 인터렉션에서 다른 행동 양태를 보여줘야 한다. 일상적으로 벌어지는 인터랙션에는 변화가 없으면서 무슨 토론회 같은 것만 챙기면 오히려 신뢰가 깎임. 하지만 일상에서의 변화가 생기고 이런 것으로 신뢰가 조금씩 쌓이기 시작한다면 팀 토론 등 특별히 고안된 활동을 시도할 수 있다.

쾌속 학습팀

  • 리더가 팀 학습 속도에 미치는 영향

    • 독재자가 아니라 파트너가 될 수 있는 능력이 핵심.
  • 학습 환경의 차이

    1. 팀원 채용시 협동적으로 이루어짐. ex) 디자이너를 뽑는데 개발자가 관여. 단순 업무 수행뿐 아니라 협력, 도전적 등
    2. 새로운 기술 도입을 기술적 도전이라기보다 조직적 도전으로 받아들임. 개개인이 새로운 기술을 획득해야 한다고 보지 않고, 함께 일하는 새로운 방법을 만들어야 함.
    3. 팀원들이 심리적으로 보호가 되어 있음. 실수에 민감하지 않고 서로 다 열려있음.
  • 현실에서 실천하기

    • 당장 학습 환경 만들기.
    • 학습과 일을 분리하지 말기
    • 당장 시작하기
    • 작지만 유용한 프로그램들을 매일 작성하기. 반대로 크고 쓸모없는 설계를 가끔 생각만 한다면? 끔찍
    • 학습 공동체 만들기. 동지 찾기

프로젝트 확률론(또는, 그리고 확률론)

  • 한 명의 관리자와 7명의 개발자. 프로젝트를 7등분해서 개발자들에게 나눠줌. 데드라인까지 수행할 수 있는지 물어봄. 7명이 각기 90% 확률의 확신을 갖고 있음.
  • 그런데 실제로는 90% 가 아니라 0.9를 일곱 번 곱해야 한다. 그러면 0.48이 나옴. 각각은 90%확률을 갖고 있지만 실제로는 50%도 안됨. 사람들은 실제로 낙관적으로 추정하므로 실은 더 심하다
  • 애자일 확률론

    • 고전적 방법과 다른 달리 일을 공유함. 각자 일을 얼마나 진행했는지 매일 공유할 뿐 아니라 내 일, 네 일의 구분선이 뚜렷하지 않다. 되도록 사람들이 섞이게 만든다.
    • 역시 7명이 있고 모두 90% 확률로 확신을 한다고 하자. 90% 확률이라면 개중에 일찍 끝내는 사람도 있고 못하는 사람들도 있을 것. 고전적 방법에서는 내가 일을 빨리 끝내는 것이 이 프로젝트에 큰 도움이 되지 않다. 내 일은 내 일이고 다른 사람 일은 다른 사람 일이기 때문. 그래서 마감 시간에 맞춰 끝나도록 일부러 일을 늘리는 경향도 있다(파킨슨 법칙).
    • 그런데 애자일에서는?
    • 내가 일이 빨리 끝나면 다른 사람의 일을 도와준다. 전체 확률이 0.9^7 보다 높다. 한 명이 먼저 자기 일을 끝낸다면 나머지 사람을 돕기 때문에 0.9^7보다 확률이 높아짐.
    • 좋은 정보는 각자의 일에 모두 도움이 된다. 서로 공유함.
    • 이런 새로운 지식, 깨달음은 프로젝트 속도를 높이는 데에 큰 도움이 되는데 애자일에서는 이 확률은 또는 확률에 해당.
    • 7명 중 한명이라도 중요한 발견을 하면 나머지 모든 사람이 그걸 공유해 함께 이득.
    • 이와 반대로 고전적 방법에서는 이런 좋은 일이 생길 확률이 그리고 확률에 해당한다. 모든 사람이 제각기 깨달음을 얻어야만 전체 프로젝트의 체감 성공률이 높아진다.
    • 그리고 확률에서는 확률끼리 계속 곱해나가기 때문에 팀 레벨에서 통찰을 통해 개선이 일어남(전체 확률은 기하급수적으로 떨어짐). 또는 확률에서는 그 일이 안 일어날 확률을 모두 곱해서 그 값을 1에서 빼면 된다.
    • 개발자가 7명일 때, 한 개발자가 자신이 맡은 코드 영역에서 특정 버그를 찾아낼 확률이 0.3이라고 치면 모든 개발자가 자기 영역에서 해당 버글르 찾아서 전체프로젝트에서 그 버그가 사라질 확률은 0.3^7 = 0.00002 이다. 하지만 단 한 사람이라도 그 버그를 찾아내어 다른 개발자에게 알려줘서 다 같이 해결할 확률은 1-(0.7^7) = 0.9176입니다. 5000배에 가까운 차이. 두 확률 간의 차이는 사람 숫자가 많을수록 기하급수적으로 늘어난다.
  • 애자일에서는 일 진행에 단계(분석, 설계, 구현, 테스트 전개 같은) 를 두지 않으려고 한다. 단계가 있으면 시기에 따라 하는 일에 큰 차이가 생김. 애자일은 마치 프랙탈 구조처럼 부분 속에 전체가 들어가게 한다. 그렇게 하면 과거에서 미래를 점쳐 보기가 훨씬 쉽다.
  • 애자일에서는 좋은 일에 대해서는 그리고 확률을 또는 확률로 바꾸고, 나쁜 일에 대해서는 또는 확률을 그리고 확률로 바꾸는 경향이 있다.

3. 애자일

  • 애자일은 서로의 업무를 공유하고 상호 검토하는 협력을 통해 불행한 일을 또는 조건에서 그리고 조건으로 바꾸게 한다. 모든 변수에 문제가 생겨야 전체에 문제가 되는 상황.
  • 좋은 일에 대해서는 그리고 조건을 또는 조건으로 바꾸게 한다. 한 사람이라도 통찰을 얻으면 그걸 공유해서 전체가 개선.
  • 학습과 협력은 불확실성이 큰 상황에서 좋은 대응전략ㄷ이 된다.

애자일의 씨앗

- 고객에게
    - 우리의 진짜 고객은 누구인가?
- 매일
    - 어떻게 점진적으로 가치를 전할 것인가?
    - 어떻게 보다 일찍, 그리고 보다 자주 가치를 전할 것인가?
- 가치를
    - 무엇이 가치인가?
    - 지금 우리가 하고 있는 일이 정말 가치를 만드는 일인가?
    - 지금 가장 높은 가치는 무엇인가?
    - 비슷한 수준의 가치를 더 값싸게 전달하는 방법은?
- 전하라
    - 가치를 우리가 갖고 있지 않고 고객에게 정말 전달하고 있는가?
    - 고객이 정말 가치를 얻고 있는가?
  • 위의 질문들이 학습, 협력과 어떻게 연결되는가
  • 학습

    • 매일 하는 것은 학습의 빈도를 말한다. 불확실성이 높을수록 빈도가 자주 있어야 한다.
    • 좋은 학습은 질 높은 피드백에서 온다.
    • 매일 에는 빈도와 동시에 이른 시점부터 시작한다는 의미가 있다.
  • 협력

    • 고객에게 라는 부분이 그 중요성을 말하고 있다.
    • 고객은 넓은 의미로 이해관계자(프로젝트의 결과에 영향을 주거나 받는 사람)
    • 협력을 할 때 가치를 전하면 협력이 쉽다. 신뢰가 쌓이기 때문. 또한 가치를 전달하게 되면 의사소통이 명확하고 구체적이게 된다.

애자일 도입 성공 요인 분석

  1. 애자일을 도입해서 성공하는 조직들이 국내에 있다.
  2. 애자일 실천법을 잘 실행하면 성공률도 높아질 수 있다.(애자일을 한 지 얼마 되지 않더라도)
  3. 실천법 중에서 비교적 성공과 직결되는 것들이 존재한다. 그것은 고객 참여, 리팩터링, 코딩 후 자동화 단위 테스트 붙이기, 코드 공유 등이다.
  4. 애자일 성숙도가 낮은 조직일수록 고객 참여를 하지 않으면 프로젝트 성공이 어렵다.
  5. 무섭고 두렵지만 중요한 일이라면 계속 미루지 말라.
  6. 뛰어난 애자일 코치가 있는 것이 애자일 도입 성공에 핵심적이다
  7. 뛰어난 애자일 코치는 함께 자란다.

    • 뛰어난 애자일 코치의 특징
    • 의사소통 스타일(팀원, 상사, 팀장과)
    • EQ 및 스트레스하에서의 행동
    • 리더쉽 및 코칭 스타일(동기부여 등)
    • 회고를 통한 개인적 학습 능력
    • 개인적 성장 의지, 성장 사고관, 자기효능감
    • 관찰 및 상황 파악 능력
    • 일치적 행동(믿는 것을 행동에 옮기는 능력)
    • 기술적 능력


Written by@[June]
Backend Developer