함께 자라기 (애자일로 가는길)

저자 김창준, 출판 인사이트

by 루피


자라기


당신은 몇 년차?


경력, 그 견딜 수 없는 무거움

“강한 놈이 오래 가는 게 아니라, 오래 가는 놈이 강한 거더라” 장필호(이범수 분), 짝패 에서

경력 연차라는 것으로부터 이 사람이 초급인지 아닌지 정도의 정보만 기대할 수 있으며

초급이 아닌 사람들에 대해서는 경력 연차가 오히려 혼동을 불러일으키는 잘못된 정보로 작용할 수 있고

고로 경력 연차로 채용 여부나 임금 수준을 결정하는 것은 판단 편의적이고 관료주의적이며 결과적으로 조직에 손해를 줄 수 있는 방식


직원을 뽑을 때 무엇이 그 사람의 실력을 가장 잘 예측할까?

잘 뽑았다는 것의 기준은 이 사람들이 채용된 후에 실제 직무를 하면서 얼마나 생산적이고 성과를 잘 내는지입니다. 경력이 얼마되지 않았을 때 몇년 간은 연차의 상관성이 꽤 높은 편입니다.

하지만 연차가 조금이라도 높아지면 그 상관성은 곤두박질칩니다. 예를 들어 대학교를 갓 졸업한 사람과 2년 차 프로그래머 중에서 후자의 실력이 높을 확률이 크지만, 5년차와 10년차의 연차 차이는 실력을 판단하는데 있어 큰 의미는 없습니다. 경험이 많은 사람으로서의 전문가와 실력이 뛰어난 사람으로서의 전문가 중 우리가 관심을 갖는 쪽은 연차 높은 전문가가 아니라 탁월한 전문가이다.


전문가에 대한 새로운 정의, 최소한도의 경험치만 넘어가면 경력 연수와 실제 직무성과의 상관성이 생각보다 낮다는 것은 소프트웨어 개발뿐만 아니라 다른 여러 영역에서도 동일하게 밝혀졌다.


잘 뽑는 것 이상으로 중요한 것

보험 설계사가 업무 중에 자신의 능력을 향상시키기 위해 시간을 얼마나 쓰는가와 직무 성과를 비교한 연구에 따르면 시간의 양과 직무 성과 같에 통계적으로 유의미한 양의 성과성이 확인되었습니다.

즉 내가 요즘에 얼마나 공부하고 수련하느냐로 내 직무성과가 결정된다는 이야기가 됩니다.

애자일 프로젝트에서는 지금 내가 한 행동의 피드백을 10분 후, 한시간 후, 일주일 후 등 여러 주기를 통해 지속적으로 얻을 수 있습니다. 그리고 그 때 저지른 실수는 바로 다음 주기에서 교정할 수 있습니다.

피드백을 짧은 주기로 얻는 것, 그리고 실수를 교정할 기회가 있는 것은 중요합니다.

내가 잘했나 못 했나 알지 못하면 행동을 조정할 수 가 없죠. 그래서 학습에서는 피드백이 중요합니다. 그리고 피드백 주기가 길어지면 학습이 잘 안됩니다.


학습프레임과 실행프레임


실행 프레임은 사람들이 현재 주어진 과업이 뭔가 좋은 성과를 내는 걸로 생각하는 틀을 말합니다. 학습 프레임은 현재 주어진 과업이 내가 얼마나 배우느냐로 여기게 되는 틀을 말합니다.

업무 중에 실행 프레임으로만 세상을 보는 사람들은 아마 내가 인정을 받아 다음 단계로 올라가냐 아니냐에 관심이 많을 겁니다. 만약 다음 단계로 가지 못하고 떨어지면 자신이 속한 곳에서의 학습 기회를 보기보다 다른 경쟁체계와 다른 타이틀, 다른 자리에 관심을 둘 겁니다. 이런면 당연히 학습은 줄어들겟지요.


실행프레임은 여러분의 목표가 학습을 통한 성장이라면 불리한 선택입니다.

인터뷰에서 질문을 합니다. 업무적으로 꼭 해야하는 건 아니지만 당신이 도와주는 사람은 누구이고, 또 당신이 도움을 요청하는 사람은 누구입니까? 연구 결과에 의하면 업무성과가 뛰어난 사람은 답을 더 잘합니다.

답변 A : 아직 1년이 되지 않아서 책보고 코드보고 업무를 배워가는 중입니다. 또 아직 업무 파악이 안된지라 누굴 도와주거나 할 입장도 아닙니다.

답변 B : 아직 1년도 되지 않아서 많이 물어보며 배우고 있습니다. A선임, B책임… 그리고 제가 공부하고 싶은 내용을 주제로 팀 내 스터디를 운영하고 있습니다. 같이 공부해 가는거지요, 제가 출퇴근시간에 지하철에서 많이 봤던 내용과 관련된 문제로 다른 팀원이 어려워하는 걸 알게되어 도와드렸습니다.

두사람의 답은 모두 아직 입사한지 1년도 되지 않아서로 시작했지만 그뒤 ‘자신의 선택과 행동, 반응’은 180도 달랐습니다. 누구에게 더 높은 잠재성이 보이시나요?


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


전문성 형성에서 타당성과 피드백의 중요성

타당성 조건이 필요하다는 의미는 직관이 적용되는 영역에 어느 정도 인과관계와 규칙성이 존재해야 한다는 겁니다. 피드백 조건이 필요하다는 의미는 자신이 내린 직관적 판단에 대해 빨리 피드백을 받고 이를 통해 학습할 기회가 주어지는 환경이 갖춰져야 한다는 걸 말합니다.

타당성을 높이려면 변수를 제한하고 실험을 하면서 규칙성과 인과관계를 찾으려는 노력을 하면 됩니다. 피드백을 높이려면 동료나 상사, 고객에게서 혹은 내가 개발하는 프로그램에서 직접 피드백을 적극적으로 구하면 됩니다.




함께


신뢰를 쌓는 공유인가, 신뢰를 깍는 공유인가


신뢰자산이 높은 조직은 커뮤니케이션 효율이나 생산성이 높다는 연구 결과가 있습니다.

신뢰를 쌓는 데 널리 사용되는 한가지 방법은 투명성과 공유, 인터랙션 ⇒ 소통신뢰


디자이너들이 하나의 디자인을 만들고 하나를 공유, 여러개의 디자인을 만들고 그중 잘한 한개를 골라 공유했을 때 신뢰도 측정시 두 경우 모두 공유 후에 신뢰감을 더 떨어뜨렸습니다.

그렇지만 여러개의 디자인을 만들고 모두 공유한 경우 신뢰가 유의미하게 증가했습니다.


‘하나 공유(share one), ‘최고 공유(share best)’, ‘복수 공유(share multiple)’

하나 공유나 최고 공유의 경우 우리는 공유 자리에 기대감보다 불안감을 갖고 갈겁니다.

상대가 이걸 보고 ‘흉을 보면 어쩌지’ 그리고 그럴 경우 어떻게 방어적으로 대응해야 할지도 대략 생각해두겟죠. 또 상대의 시안을 보고 솔직한 의견을 내는 것도 꺼리게 될 겁니다.

‘내가 한 말을 듣고 나를 싫어하면 어쩌지’ 라는 생각에서요. 그러면 듣는 사람도 ‘ 저 사람 솔직하지 않은 같아’라고 느끼겟죠. 또 만에 하나 상대가 부정적으로 들릴만한 의견을 주면 그건 곧 나의 전문성에 대한 도전이 되는 겁니다. 나의 작품이 하나밖에 없으니 ‘작업물=나’가 되는 것이죠. 나름 방어를 해낸다고 해도 자기효능감이 떨어지기 쉽습니다.


복수공유의 장점

불안감이 상대적으로 덜합니다. 또 부정적 피드백을 수용하려는 마음도 더 많죠

여러 개를 준비했으니 그 중 하나를 두고 뭐라고 해도 나에 대한 공격은 아닌 겁니다.

또 여러 개이니 상대적으로 이야기를 할 수 있어 말하는 사람도 편하고 듣는 사람도 좋다는 이야기랑 안좋다는 이야기를 같이 들으니 마음이 좀 더 편안합니다.

실제로 복수공유의 경우 대화 시간 중 분당 약 12회 말을 주고 받는 반면, 하나 공유나 최선 공유는 약 9회 주고받았습니다. 복수 공유의 경우 같은 시간 말을 해도 대화가 좀 더 상호적이었던 것이죠

또한 복수 공유를 한 그룹이 자신의 디자인을 공유 후에 개선한 정도가 더 컷다는 점입니다. (공유 후 최종 버전 디자인)


가장 놀라운 부분은 복수 공유를 통해 나온 디자인이 전문가 평가나 노출당 클릭률이 더 높았습니다. 다시 말하자면 복수 공유는 (같은 시간을 투자했을 때) 신뢰도가 높아지고 성과도 더 좋았다는 말입니다.

이렇게 복수 개 아이디어를 프로토타이핑하고 공유했을 경우 팀의 결속이 강화되고 오너쉽을 느낀다는 연구는 이 외에도 있었습니다. 경영자나 관리자들은 그냥 공유만 하게 한다고 신뢰가 저절로 쌓이는 게 아니라는 것을 이해하고 또 그렇다면 어떻게 공유할 것인가 하는 고민을 해 볼 수 있겠죠


객관성의 주관성


애자일 같은 개념을 주변에 설득하기 위해 주로 상사나 동료를 대상으로 하지만 부하직원도 설득이 필요합니다. 팀장 자리에 있으면 새로운 아이디어 전파가 쉬울거라고 생각하는 것은 환상입니다.


의사결정을 하는 과정에 감정적이고 직관적인 부분이 큰 역할을 하고 있으며, 그런 감정적 부분이 배제된다면 의사결정을 제대로 할 수 없다는 것을 알 수 있습니다.

남을 설득하려면 논리성과 객관성에 대한 환상을 버려야 합니다. 그래야 현실적으로 설득이 가능합니다. 내가 설득하고 싶은 상대를 자주 만나서 신뢰를 쌓고, 그 사람이 무엇을 중요하게 여기는지, 어떤 설명방식을 선호하는지 이해해야 합니다. 출발은 결국 내가 설득하려는 사람에게서 하는 것입니다. 자료에서 출발하는 것이 아닙니다.


“상대방에 대해 얼마나 이해를 하고 계신가요? 얼마나 대화를 해보셧나요?


성향과 기질에 따른 애자일 설명법


KAI(Kirton Adaption Innovation)라고 하는 사람의 인지 성향에 대한 이론의 틀을 빌어 애자일을 상대에 맞게 어떻게 설명할지 살펴보도록 합시다. KAI에서는 사람의 인지 성향을 적응형과 혁신형이라는 극단 사이의 스펙트럼 위에 있는 것으로 봅니다.

적응형은 잘하는 것이 중요하고 혁신형은 다르게 하는 것이 중요한 사람들이라고 생각하면 됩니다.


그래서 KAI 성향에 맞게 애자일을 소개한다면

I(Innovation)에 가까운 사람에게는 : “애자일 이거 정말 새로운 겁니다. 이걸하면 당신에게 새로운 경험을 할 기회가 생깁니다. 모조리 싹 바뀔겁니다”


A(Adaption)에 가까운 사람에게는 : “애자일은 새로운 것이 아닙니다. 기존의 방법들을 더 낫게 개선합니다. 지금 하고 있는 업무방식을 조금 더 효율적으로 개선하는 겁니다. 많이 바꿀 필요가 없습니다’


애자일을 MBTI 이 4가지 기질에게 설명할 때 어떻게 접근하면 좋을지 예를 들어 드리죠

NT(직관적 사고형) : 애자일을 하면 낮은 의존성과 높은 응집성의 이상적이고 우아한 설계를 실제로 실현하고, 또 지속적으로 유지할 수 있습니다. 이제 스파게티 코드는 안녕입니다.


NF (직관적 감성형) : 고객과 우호적 관계를 이어갈 수 있습니다. 팀원들 모두가 신뢰하고 협력하면서 즐겁게 일할 수 있습니다. 누군가를 비난하거나 하는 일이 없을 겁니다. 개인적인 성장도 가능합니다.


SJ(감각적 판단형) : 효율적입니다. 낭비되는 작업을 하지 않습니다. 불필요한 문서나 회의안합니다. 현 프로젝트 상황이 한눈에 들어오고 지금 당장 뭘해야할지 명확하게 보이게 됩니다. 더 안전합니다. 데드라인에 와서 죄송합니다 라고 말하는 상황 절대 나오지 않고 정확한 예측이 점점 가능해집니다.


SP(감각적 지각형) : 설계한다고 몇달씩 시간 끌지 않습니다. 당장 개발로 들어갈 수 잇습니다. 순식간에 원하는 대로 코드를 바꾸고 테스트를 통과하고 하는 짜릿짜릿한 경험을 할 수 있습니다. 테스트가 실패하면 그 원인이 되는 버그를 찾아서 고치는 것이 마치 게임 같습니다. 재미있는 툴들을 많이 접할 수 있습니다.


결론은 객관성이라고 하는 것은 상대적이며, 내가 생각하는 객관이 상대의 객관이 아닐 수 있고, 그렇기 때문에 설득에 성공하려면 우선 그 사람을 이해하는 것에서 출발해야 한다는 말입니다. 그런 이유로 설득을 하기 위해 ‘객관적’ 자료를 모으는 부분 이상으로 상대를 이해하는데 많은 시간을 투자해야 합니다.


공감하고 이해하려는 대화


어떤 식으로 이해하고 있는지, 모르는 문제를 만났을 때 어떻게 해결하려고 시도하는지, 자신의 답이 맞는지를 어떻게 확인하는지 등을 알 수 있습니다. 그 사람이 이 상황에서 왜 이런 접근을 할 수 밖에 없었는지 알기때문에 좀더 정확하고 효과적인 제안을 해줄 수 있습니다. 다 설명해줄 필요도 없고, 핵심적인 부분만 짚어주면 됩니다. 이 방법은 누가 물어볼때만 아니라 누가 실수나 잘못을 햇을때에도 매우 효과적으로 도움을 줄 수 있습니다. (코칭/멘토링) 능력이 없는 팀장일수록 ‘비난’만 합니다.


훌륭한 팀장이라면 먼저 그 사람의 사고과정과 전략을 이해하려고 합니다. 실제 전문성연구에서도 전문가는 상황 파악을 먼저 하지만 초보자는 뭘 할지부터 정하려고 한다는 차이를 발견했습니다.


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


팀에 누가 있는지 (전문가, 내향/외향, 지능 등) 보다 팀원들이 서로 어떻게 상호작용하고 자신의 일을 어떻게 바라보는지가 훨씬 중요했다.

5가지 성공적 팀의 특징을 찾았는데 그중 압도적으로 높은 예측력을 보인 변수는 팀의 심리적 안전감이었다.

팀 토론 등 특별히 고안된 활동 등을 통해 심리적 안전감을 개선할 수 있었다.


여기에서 말하는 심리적 안전감이란, 내 생각이나 의견 질문, 걱정, 혹은 실수가 드러났을때 처벌받거나 놀림받지 않을거라는 믿음을 말합니다.





애자일


당시 주도적인 소프트웨어 개발방식은 계획주도의 방식이었습니다. 계획주도 방식에서는 초반에 계획을 정교하고 꼼꼼하게 만들려고 엄청나게 노력을 합니다. 그러면 실행단계에서는 간단해지고 예측 가능해진다고 생각하기 때문입니다. 애자일은 불확실성이 높은 일에 대해서는 애초에 이것이 불가능하다고 봅니다. 불확실성이 크기 때문에 미리 분석하고 설계하는데 한계가 있다는 것이지요.


협소한 의미의 애자일


따라서 애자일은 불확실성이 높은 프로젝트에 더 적합합니다. 애자일이 불확실성을 다루는 방식은 좀 더 짧은 주기로 더 일찍부터 피드백을 받고, 더 다양한 사람으로부터 더 자주 그리고 더 일찍 피드백을 받고 더 다양한 사람으로부터 더 자주 그리고 더 일찍 핃으백을 받는 것을 정리할 수 있습니다. 이런 특징을 가진 애자일 방법론은 마침 시대가 바뀌면서 불확실성이 낮은 프로젝트는 비즈니스적 가치가 없어지고 불확실성이 높은 프로젝트를 하는 것이 일반적이 됨에 따라 빠른 속도로 인기를 얻게 되었습니다.


광의의 애자일


학습과 협력이 애자일이 불확실성을 다루는 핵심적인 구동원리입니다. 다시 말해 학습과 협력을 증진해서 우리 삶에 애자일을 적용하고 또 이를 통해 불확실성과 친구가 될수 있습니다.


그럼 학습과 협력이 어떻게 불확실성에 대한 대응전략이 될수 있을까요?

우리의 삶도 불확실하기 때문에 학습과 협력은 현명한 전략이 될 것이고요, 그런데 마침 애자일의 핵심 구동원리가 학습과 협력 즉, 합께(협력) 자라기(학습)입니다. 그래서 불확실한 삶을 살아나갈 때 애자일적 태도가 도움이 될 것이라고 생각합니다.


애자일의 씨앗

" 고객에게 매일 가치를 전하라 "

고객에게 : 우리의 진짜 고객은 누구인가?

매일 : 어떻게 점진적으로 가치를 전할 것인가?
: 어떻게 보다 일찍, 그리고 보다 자주 가치를 전할 것인가?

가치를 : 무엇이 가치인가?
: 지금 우리가 하고 있는 일이 정말 가치를 만드는 일인가?
: 지금 가장 높은 가치는 무엇인가?
: 비슷한 수준의 가치를 더 값싸게 전달하는 방법은?

전하라 : 가치를 우리가 갖고 있지 않고 고객에게 정말 전달하고 잇는가?
: 고객이 정말 가치를 얻고 잇는가?


협력을 할 때 ‘가치를 전하면’ 협력이 쉽습니다. 왜 그럴까요?

우선 신뢰가 쌓이게 됩니다. 신뢰 자산이라는 말이 있을 만큼 협력의 비용이 낮아지고 원활해진다는 연구가 많습니다. 그리고 이는 학습과도 연결되는데 가치를 전달하게 되면 의사소통이 명확하고 구체적이 됩니다.


애자일 도입 성공요인 분석


애자일에 대한 어느정도 이해는 하고 실험도 좀 해봤다 싶은 조직에서 성공 기여도를 높이려면 짧은 반복 개발 주기, 고객 참여, 코드 공유에 관심을 기울여야 합니다.

고객참여란 고객 혹은 고객을 대표하는 삶의 참여입니다. 진정 중요한 것은 프로젝트의 성패를 좌우하는 사람과 최대한 가까운 사람을 참여시키고 우리가 게속 노력하는 것입니다.

성공하는 조직들에는 항상 뛰어난 애자일 코치가 있었습니다. 그 점이 애자일 도입을 성공하는데 핵심이었습니다.


뛰어난 애자일 코치의 특징은 다음과 같습니다.

의사소통 스타일(팀원, 상사, 팀장과)

EQ 및 스트레스하에서의 행동

리더십 및 코칭 스타일 (동기부여 등)

회고를 통한 개인적 합습능력

개인적 성장 의지, 성장 사고판, 자기 효능감

관찰 및 상황 파악 능력

일치적 행동 (믿는 것을 행동에 옮기는 능력)

기술적 능력?


결과적으로 보면 뛰어난 애자일 코치는 함께 자라기를 하는 사람입니다.