개발자의 가치
난 축구 보는 것을 좋아한다. 멋진 축구 플레이를 보는 것도 즐겁지만, 축구 선수들이 이적 시장을 통해 더 나은 팀으로 발전해 가는 모습을 보는 것 또한 매우 흥미로운 일이다. 축구 선수들의 가치는 여느 스포츠와 비슷하게 스탯으로 결정된다. 이전 시즌의 스탯에 더해 잠재 능력까지 동시에 평가를 받는다. 스카우터들은 더 좋은 인력을 조금이라도 빨리 자신의 팀으로 데려오기 위해 치열하게 잠재성을 평가한다. 나중에 그 재능을 꽃 피우게 되면 수 십 수 백배의 돈이 더 필요하기 때문이다. 물론 그 잠재성의 평가는 스탯으로 부터 시작한다.
개발자의 가치는 어떻게 평가해야 할까. 개발자가 만약 축구 선수처럼 평가 받을 수 있다면 좋지 않을까? 게임 개발은 스포츠 팀과 같이 팀워크와 방향성, 전략, 끈기, 완성도, 실력으로 게임의 성패가 나뉜다. 게임 프로젝트의 개발 시작부터 완료까지 축구의 한 시즌과 비슷하기도 하다. 축구 팀의 성공, 즉 우승은 많은 상금과 부를 가져오고, 게임의 성공도 그에 못지 않은 부를 가져다 준다. 하지만 게임 개발자들은 스탯으로 평가 받지 않는다. 현 시대에는 스탯으로 평가할 수 있는 항목 자체가 존재하지 않는다. 그나마 존재하는 것은 회사 내에서 상급자에 의해 주관적으로 평가된 A, B, C, D만 있을 뿐이다. 이것은 객관적인 평가도 아니고, 회사 외부에서는 고려도 거의 되지 않는다. 이렇게 되면 새로운 팀에서 새 시즌, 즉 새 프로젝트가 시작하면 객관적인 스탯이 없는 구성원들이 모일 경우 각자의 장단점이 불균형적으로 혼재되어 프로젝트의 반 이상이 좌초하고 없어진다.
그렇게 수치화 시키는 것이 좀 비인간적이고, 물질적이라고 비난하는 이도 있을 것이다. 하지만 객관적인 데이터는 말 잘 듣는 사람이 좋은 평가를 받는 불합리를 제거할 수 있으며, 평가의 공정함과 투명함을 가져올 수 있다. 누구도 메시가 돈 많이 버는 것을 불합리하다고 얘기하지 않으며, 손흥민이 몇 억원의 주급을 받는 것이 불공평하다고 생각하지 않는다. 그것은 그 사람의 능력이 객관적으로 증명되어 있기 때문이다.
그럼 개발자의 능력은 어떻게 객관화 할 수 있을까. 사실 나도 명확한 답은 없다. 어렴풋이 그려보는 것은 프로그래머라면, 난이도 있는 이슈가 있을 때, 그 이슈를 상/중/하로 나누고, 각각의 해결 건수를 카운트한다던지, 모듈화된 코드를 작성했다면 마치 논문의 인용 회수로 논문의 가치를 메기는 것 처럼 얼마나 많이 다른 프로그래머 혹은 다른 모듈에서 레퍼런스로 삼았는지 같이 수치화 시킬 수 있는 항목들은 분명 존재할 것이다. 그런 스탯들이 쌓여 한 개인을 스탯으로만 보고도 평가할 수 있다면, 한 팀을 구성하는 데에 각 개인의 장단점이 적절히 조화를 이룬 좋은 팀을 만드는 것도 어려운 일은 아닐 것이다.
좀 억지스러운 얘기일 수 있다. 그래도 한번쯤 생각해 볼 문제이기도 하다. 축구 선수가 부족한 스탯을 보완하기 위해 피나는 훈련을 하듯 우리도 부족한 부분을 알아야 하고, 발전 시킬 수 있어야 한다. 그리고 그 만큼의 평가를 받아야 한다.