함께 일하는 사람에게 '당신의 방식은 별로에요'라고 말하는 것은 어렵다.
같은 팀에서 일하는 사람들에게도 쉽지 않지만, 다른 팀에서 일하는 사람들에게 말하는 것은 몇 배로 더 힘들다. 풀어야 할 문제만 놓고 생각해 보면 누가 어떤 일을 해야 할지 명확하게 구분할 수 있다. 그러나 팀이라는 울타리가 세워지면 문제 중심적인 사고를 쉽게 잃어버릴 수 있다. 작은 단위의 조직은 작은 단위의 문제를 집중력 있게 효율적으로 해결할 수 있다는 장점이 있다. 안타깝게도 세상에 존재하는 문제들은 대부분 규모가 있는 것들이다. 여러 조직들은 그 큰 문제를 풀기 위해 각자 작은 문제들을 풀어내야 한다. 때로는 팀에 씌워진 울타리가 원래 풀어야 할 큰 문제를 가리기도 한다. 큰 문제가 눈에 보이지 않으니 자꾸만 작은 문제를 최적화하는데만 신경 쓰게 되는 것이다. 보통의 작은 문제들은 개발팀 내부에만 한정적으로 영향을 미치는 작은 이득과 손실에 대한 것인 경우가 많다. 국지적인 최적화는 결코 전체의 최적화가 될 수 없는 법이다. 전체를 최적화하기 위해서는 원래 해결하고자 했던 큰 문제에 집중해야 한다. 조직 중심적인 사고보다는 문제 중심적인 사고를 해야 한다. 문제를 중심으로 생각하는 기본적인 원칙을 지키지 못하면 문제 해결과는 점점 더 거리가 멀어지게 되는 것은 당연한 결과이다.
여러 조직이 함께 일하는 경우에 어떻게 해야 기본적인 원칙을 지킬 수 있을까? 답은 의외로 간단하다. 문제 중심의 사고를 잃어버린 사람에게 '문제 중심으로 생각하라'라고 말을 해주면 된다. 논리적인 근거와 함께 문제 중심으로 일하자고 제안한다면 대부분의 엔지니어들은 잘 받아들일 것이다. 하지만, 애석하게도 많은 엔지니어들은 이 말을 잘하지 못한다.
아래와 같은 이유가 있다.
좋게 좋게 형 - ‘괜히 나만 나쁜 사람 되면 뭐하나? 그냥 좋게 좋게 하자’
특공대형 - ‘다른 팀에서 협조를 안 해준다면, 우리가 할 수 있는 것만 해버리지 뭐’
상부상조형 - ‘이 사람이 원하는 대로 하나 해주면 다음에는 나도 도와주겠지’
침묵형 - ‘...’
가장 대표적인 사례인 ‘좋게 좋게 형’에 대해 이야기해보자. 대부분의 사람들은 능력 있는 사람이 되고 싶어 한다. 아마도 착한 사람이 되는 것 자체가 목표인 사람은 거의 없을 것이다. 그런데도 우리는 능력 있는 사람이 되는 것보다 착한 사람이 되는 선택을 더 많이 한다. 그 이유는 매 선택의 순간마다 착한 사람이 되는 선택이 더 쉽고, 선택 직후에 즉각적으로 상대방으로부터 '좋은 반응'을 얻을 수 있기 때문일 것이다. '즉각적인 좋은 반응'은 문제를 잘 풀고 있다고 착각하게 만든다. 이것은 마치 탐욕 알고리즘(Greedy algorithm)과 같아서 매 선택의 순간마다 바로 다음의 결과만을 최적화하는 것만 고려해서 판단한다면 결국 전체로 봤을 때 최선의 결과를 얻기는 힘들게 된다.
다른 팀에서 협조를 안 해주는 것이 못마땅하거나 설득하기 귀찮아서 우리 조직에서 할 수 있는 만큼만 하고자 하는 '특공대형'인 경우도 있다. 애초에 한 팀에서 할 수 있는 일이면 여러 팀이 협업해야 할 만한 사이즈가 아닌 것이다. 한 팀에서 그 일을 훌륭히 완수해 낸다면 문제의 사이즈를 처음부터 잘못 예측한 것이다. 예측을 제대로 했다는 가정 하에 여러 팀이 해야 할 일을 한 팀에서 아무리 붙잡고 달려들어봤자 결과는 불을 보듯 뻔한 것이다. 대부분의 작업은 단위 성능으로만 봤을 때는 혼자 하는 것이 가장 성능이 좋다. 하지만 일정 수준의 규모가 넘어가면 단위 성능도 중요하지만 전체 성능이 더 중요해지는 지점에 도달하게 된다. 낮은 전체 성능으로는 문제를 잘 풀기 어려운 것은 당연한 일이다. 특공대형인 사람들은 실제로 실력이 좋은 개발자일 가능성이 높다. 자신이 혼자 하는 것이 더 빠르고 잘했던 경험에만 의존한다면 큰 성과를 달성하기는 힘들 것이다.
빚지게 한 다음 언제가 돌려받기 위해서 '상부상조형'으로 일하는 사람도 있다. 다음에 다른 팀과 원만한 협의를 하는 것만을 고려해서 서로의 사정 봐주기를 허용한다면 문제를 푸는 것과는 거리가 점점 멀어지게 될 것이다. 이 유형은 '좋게 좋게 형'의 조직화된 버전이라고 볼 수 있겠다. 주로 엔지니어링 실력보다는 외교력으로 승부를 보는 리더들이 많이 택하는 전략으로 보인다. 아직까진 좋은 결과를 내는 것은 못 봤지만 좀 더 장기적인 관점에서 보면 과학 승리는 못할지라도 외교 승리는 할 수 있을지도 모르겠다. 대게 본인들은 잘 모르지만 동료들은 이런 식으로 일하는 사람들을 '개발은 안 하고 정치만 한다'라고 표현한다. 개발자들은 외교관이나 정치가가 아니고 엔지니어들임을 잊지 말자.
그나마 위의 유형들은 운이 좋으면 결과를 낼 수도 있고, 적어도 협업하는 사람들과 친해질 수 있다. 근데 마지막 유형인 '침묵형'은 나로서는 도무지 이해할 수 없었다. '이것은 모두 같이 잘못되기를 바라는 일종의 자폭 인가?' 하는 생각이 들 정도로 결과도 못 내면서 사람들이랑도 적이 되는 하책(下策) 중의 하책(下策)을 택하는 경우도 더러 있었다. 보통 묵비권이 잘못을 저지른 사람들이 행사하는 권리라고 가정해 본다면 이러한 유형의 사람들은 동료들이 잘 모르는 잘못을 저질렀던 건가 싶기도 하다. 남을 힐난하기 전에는 침묵을 고려하는 것이 현명한 선택이지만 문제를 풀 때는 최선을 다해 입을 열어야 한다.
함께 일하는 유관 부서와 동료들에게 '지금 당신의 방식보다 더 좋은 방식이 있다'라고 말할 수 있다면, 문제로 부터 잠시 멀어져 있는 동료들에게 '문제 중심으로 생각하자'라고 말할 수 있다면 자꾸만 산으로 떠나려고 하는 배가 목적지로 순항하도록 만들 수 있을 것이다.