• Review
  • Book

함께 자라기 후기

2023년 03월 05일

오랜만에 연락이 닿게 된 군 복무 시절의 선임에게 책을 한 권 선물 받게 되었습니다. 책은 수없이 귀가 닳도록 들어왔던 함께 자라기라는 책이었고, 사내에도 비치되어 있던 책이었지만 이런저런 핑계로 읽지 않았던 책이었습니다. 사실 이전에도 이 책을 추천받았던 기억이 있는데 그때 이 책을 봤더라면 앞의 일 년이 조금 더 좋았을 수 있었을까 싶기도 합니다.

해당 서적은 크게 자라기와 함께, 애자일이라는 세 가지 단원으로 구성됩니다. 자라기에서는 소프트웨어 개발자로서 잘 성장하기 위한 가이드라인에 대한 내용을, 함께에서는 잘 협업하는 방식에 대한 내용을, 마지막으로 애자일에서는 애자일과 새로이 애자일을 도입하는 방법에 대해 설명하고 있습니다. 이번 후기 블로깅에서는 간단하게 인상적이었던 부분에 대해서만 설명할 예정이기에 다소 주관적인 내용만을 포함할 수 있습니다.

끊임없이 자라기

자라기 단원에서 성장하는데 제자리걸음인 이유에 관해 설명하는 부분이 있습니다. 그리고 여기서 미하이 칙센트미하이의 몰입이론 도식화에 대해 함께 설명하는 부분이 있습니다. 해당 이론에서는 자신이 하고 있는 일에 빠져든 심리 상태를 플로우라고 정의하고 있는데, 난이도와 실력의 상관관계로 구성된 그래프를 통해 플로우의 조건을 설명하고 있습니다.

몰입 이론의 플로우 3채널

요약하자면 위 3가지 영역 중, A(난이도가 높고 실력이 낮은)에서는 불안함이라는 감정을 느끼고 C(실력이 높고 난이도가 낮은)에서는 지루함을 느끼며, 실력과 난이도가 적절한 조합을 이루었을 때 비로소 플로우 상태에 돌입할 수 있다는 내용입니다. 해당 서적에서는 이러한 이론을 반영하여 성장하는 과정에서 생기는 비효율을 줄일 수 있는 방법을 설명하고 있습니다.

예를 들어, 내가 A 상태라면 실력에 비해 높은 난이도인 일을 하고 있기 때문에 나의 실력을 높이기 위한 방법(전문가의 도움을 받기 등)을 활용하거나 난이도를 낮추는 방법(작은 버전의 결과물을 만들기 등)을 적용하여 불안함이라는 감정을 지울 수 있을 것입니다. 반대로 B 상태라면 실력에 비해 낮은 난이도의 일을 하고 있기에 실력에 제한을 주는 방법(평소 사용하던 보조 도구를 제거하고 일하기 등)을 활용할 수 있고, 아니면 난이도를 높이는 방법(테스트 자동화를 추가하기 등)을 적용할 수도 있을 것입니다.

그리고 해당 서적에서는 자신의 실력이나 작업의 난이도는 계속 조금씩 요동치고 있다고 말하고 있습니다. 평소 학습을 하다 보면 왠지 모를 무력감에 학습에 진전이 없다고 느낄 때가 종종 있었던 것 같습니다. 그때마다 원인을 정확히 파악하려는 과정을 밟기 보다는 단순히 이를 슬럼프로 치부하며 해결을 오로지 휴식으로만 미뤘던 것 같습니다. 앞의 내용들은 그런 저에게 유연하게 대처하는 방법을 알려준 것 같아 이 부분을 가장 인상적인 부분으로 꼽았습니다. 여기서는 브루스 리의 사례를 예시로 들고 있는데, 브루스 리의 아내 린다 리의 인터뷰 내용이 인상적이었습니다.

(브루스 리가 도전자를 3분 만에 제압하고 난 뒤) ... 브루스는 무진장 화가 났어요. 3분이 되기 전에 그 사람을 쓰러뜨리지 못했다고요 ...

당시 수준급의 무술가라고 불렸던 브루스 리의 계속 성장하고자 하는 마음이 전해지는 것 같았습니다.

전문가에 대한 오해

또한 자라기 단원 말미에는 나홀로 전문가에 대한 미신이라는 내용을 담고 있습니다. 매스미디어나 SNS 등에서 우리는 프로그래밍 전문가에 대한 이미지를 고독한 전문가로 보여주고 있는 경우가 많고, 이는 드라마에서의 캐릭터를 만들거나 인터넷 밈에 활용되기도 합니다. 하지만, 막상 실무에 들어가면 협업을 중시하는 개발 문화에서 고독한 개발자는 전문가로 평가 받기 어려운 실상이죠.

해당 부분에선 인터랙션이 중요한 이유와 뛰어난 개발자에게 인터랙션 능력이 필요한 이유를 설명하고 있습니다. 이와 관련된 책의 일부를 발췌하여 몇 문장을 나열해보겠습니다.

신뢰가 깨어져 있는 상태에서는 어떤 행동을 해도 악의적으로 보인다.

뛰어는 연구자는 같은 부탁을 해도 훨씬 더 짧은 시간 안에 타인의 도움을 얻었습니다.

무언가를 동료들과 협의하여 반영하고자 할 때, 단순히 반영하고자 하는 대상에만 집중하여 객관적인 타당성만을 찾으려고 하진 않았나라는 생각을 하게 만든 대목들이었습니다. 반영하고자 하는 대상의 타당성을 떠나 인간 대 인간으로 협의하는 과정에서의 사회적 자본의 가치를 부정하고 있었던 것 같았다는 생각도 들었습니다.

이 부분 마지막에는 형상 관리 시스템을 깃으로 전환한 사례를 발표하는 상황에서의 예시를 추가적으로 설명하면서 마무리하는데, 이는 깃으로의 전환을 성공적으로 진행한 발표자의 발표 이후에 어떤 청중의 질문에 대한 내용이었습니다. 그 청중은 물음은 본인이 깃의 장점에 대한 충분한 설명과 교육을 진행했음에도 불구하고 깃을 적용하지 못했고, 사람들이 너무 수동적이고 보수적이라며 이해가 안된다는 내용이었습니다. 옆에서 지켜보던 해당 서적의 저자는 다음과 같은 질문을 두 사람(발표자와 질문자)에게 동일하게 했다고 합니다.

"그 조직원들이 선생님을 좋아하나요?"

이에 대한 대답이 상반되었을 것이라는 저자의 마무리 말로 함께 해당 부분이 마무리됩니다. 커뮤니케이션 능력의 중요성에 대해 많은 미사여구 없이 설명하는 예시였던 것 같습니다.

객관성, 다시 짚어보기

우리는 객관성에 대해 어떻게 생각하고 있을까요? 절대적인 기준이라고 생각할 수도 있고 무언가를 평가하는데 사용되는 지표로서도 생각할 수 있을 것 같습니다. 해당 서적에서 저자는 설득을 진행하며 사람들이 찾는 객관성에서 객관이라는 것의 개념 자체가 매우 주관적이라는 말을 하고 있습니다. 다시 말해, 결국 결정하는 것은 사람이며, 누구의 객관이냐가 중요한 내용이라는 것입니다.

우리는 같은 내용을 설득하더라도 사람에 따라 다른 장점을 강조하며 설명하는 것이 더 좋은 방법일 것입니다. 해당 서적에서도 MBTI 유형에 따라 애자일에 대해 어필하는 문장을 다르게 활용할 수 있다는 예시를 보여주고 있습니다.

예를 들어, NT(직관적 사고형) 유형의 경우엔 정교한 코드 설계와 지속이 가능하다는 장점에 대해 강조하며 설명하고 있지만, NF(직관적 감성형) 유형에게는 고객과의 우호적 관계의 유지 및 팀원과의 유대 증진을 장점으로 강조하며 설명합니다. 저는 이 부분이 사실 두 가지 전부 애자일을 적용했을 때 얻을 수 있는 이점들이지만 상대방이 중요하게 생각하는 가치를 잘 파악하고 이를 공략하는 것이 중요하다고 이해되었습니다. 만약 두 가지 제안을 반대로 제시했다면 어떻게 되었을까요. 설득의 결과를 떠나 공감을 불러일으켜 능동적인 이해를 유도하기는 어려울 것 같습니다.

마무리

앞에 설명한 내용 외에도 많은 좋은 내용들이 제 공감을 불러일으켰지만, 원문 그대로를 적는 것 외에는 제가 공감했던 부분들을 설명하기에 어려운 부분이 있는 것 같아 저는 원문을 그대로 읽어보시는 것을 추천드리고 싶습니다.

해당 서적은 추상적으로 느꼈던 문제들에 대해 구체화 해주고 나아가 문제를 해결하기 위한 방법을 예시를 통해 설명해준다고 생각합니다. 제가 이렇게 느낀 이유는 해당 서적이 소프트웨어 개발자를 중심으로 작성된 서적이라는 점과 조금의 실무 기간을 거친 뒤에 읽고 나서 더 큰 공감을 느꼈던 것 같기도 합니다. 개인적으로는 아래와 같은 상황에 놓인 분들에게 해당 서적을 추천드리고 싶습니다.

해당 서적을 읽은 것이 좋은 개발자가 되는 과정에 도움이 된다면 좋겠네요.