다른 책을 확보하러 회사에 출근했는데 팀장님이 후루룩 읽을 수 있는 책이라며 쥐어주셔서 아무 생각 없이 들고온 책.
애자일 방법론과 사용할 수 있는 도구에 대해 소개하는 책일거라 생각했기 때문에 특별한 내용을 기대하진 않았지만.. 애자일 애자일 단어만 많이 들어보고 무엇을 위한 방법론인지, 어떤 것인지 잘 몰랐기 때문에 읽어보면 좋을 것 같아 주말 저녁 가벼운 마음으로 펼쳐봤다.
의외였던 점은, 애자일에 대한 정의나 목적부터 시작하지 않고 '매일매일 함께 자라기' 중 내 최대 관심사인 '자라기'부터 시작했다는 점이다. 그것도 책의 가장 많은 부분을 할애했다. 덕분에 소프트웨어 개발 방법론에 대한 책이라는 것은 잠깐 잊고 흥미를 가질 수 있었다.
난 리딩하는 입장이 아니고, 일개 팀원이라서 개발 방법론은 나와 상관없다고 생각했기 때문에 겨우 유발한 흥미가 '애자일' 장을 읽으며 없어질 뻔 했지만, 팀장뿐만 아니라 팀원 또한 애자일 코치가 될 수 있다는 설명을 보고 다시 흥미가 살아나 와닿았던 몇 가지 주제를 정리해두려 한다.
자기계발이 중요한 이유는 현재 나에게 무엇을 투자했느냐가 1년, 혹은 2년 후의 나를 결정한다고 느끼기 때문이다. 예를 들어 올해 업무도 잘한 것 같고 사람들에게 인정을 받은 것 같다면 1~2년 전에 열심히 자기투자를 했을 것이다.
어떻게 자기계발에 복리를 붙일 것인가? 어떻게 하고 있는 일을 개선하고, 개선하는 일을 개선할까?
실행 프레임과 학습 프레임
자라는 데에는 동기와 피드백뿐만 아니라 적절한 난이도 또한 중요하다. 자신이 주어진 작업에 대해 몰입이 아닌 불안함이나 지루함을 느낀다면 난이도를 조절해야 한다.
새로운 언어를 효과적으로 배우는 팁
TDD 교육을 받은 후 적용하려는 개발자의 예시가 와닿았다. 아무리 좋은 기술이나 문화가 있어도 팀 구성원의 지지가 없다면 팀에 가져올 수 없다. 뛰어난 프로그래머일수록 커뮤니케이션, 협력 능력이 뛰어나다.
협력이 중요한 이유는 추상화에 있다. 다른 시각을 가진 두 사람이 협력하기 위해서는 그 두 사람을 이어줄 추상화가 필요하다. 그 과정에서 a-ha moment가 발생하게 된다.
남을 설득하려면 논리성과 객관성에 대한 환상을 버려야 한다. 논리성과 객관성은 사실 주관적인 기준이다. 내가 설득하고 싶은 상대를 자주 만나 신뢰를 쌓고, 그 사람이 무엇을 중요하게 여기는지, 어떤 설명 방식을 선호하는지 파악하는 것부터 시작해야 한다.
설득뿐만 아니라 함께 자라는 데에서도 상대방의 멘탈 모델을 파악하는 것은 중요하다. 상대방의 사고 과정을 파악해야 더 효과적인 제안을 할 수 있고, 상대에게 필요한 암묵지를 전달할 수도 있다. 코칭/멘토링 능력이 없는 팀장일수록 비난만 한다.
전문가가 꼭 탑다운 방식으로 문제해결을 하는 것은 아니다. 문제와 해결방법이 확실할때에는 탑다운 방식으로 문제를 해결하지만, 불확실성이 높을 때에는 탑다운과 바텀업을 섞어 사용한다.
현실적으로 무엇을 할 수 있을까? 일단은 자신의 학습 환경을 만드는데에서 시작할 수 있다. 학습과 일을 동체로 만들고, 새로운 일의 방식을 실험해보자. 그리고 학습 환경을 만들 수 있는 동지를 찾아보자.