새로운 방식에 적응하기

이미 오래 전에 새로운 시대가 왔지만 저만 아직 까지 오래된 방식으로 일하려고 했는지도 모르겠습니다.

새로운 방식에 적응하기

새로운 일자리를 얻고 나서 어느새 한 달이 지났습니다. 처음에는 서둘러 팀의 한 명 역할을 할 생각으로 열심히 따라잡기 위해 노력했습니다. 읽을 수 있는 모든 것을 읽으려고 노력했는데 결과는 썩 마음에 들지 않았습니다. 제가 제출한 제안은 기존에 정립되어 있던 몇몇 결정과 충돌하기도 하고 또 늘 하듯 테스트 레벨을 만들려 시도하다가 빌드를 망가뜨려 서로 다른 여러 부서 사람들이 제 자리로 몰려오도록 만들기도 했습니다. 오늘은 이번 주에 준비한 제안을 팀에 브리핑 했는데 썩 좋은 평가를 받지는 못했다고 생각합니다. 제안을 보강하기 위해 제가 앞서 읽다가 빠뜨린 문서들을 잔뜩 받아 읽다가 문득 “어씨 이러다가 수습 탈락하겠다”고 중얼거린 말이 옆 자리까지 들린 모양입니다. 하루 빨리 한 사람 역할을 해야 할텐데 아직은 그렇지 않은 것 같습니다.

한편 지난 한 달 사이에 한 흥미로운 경험에는 이전에도 큰 팀에 종종 있었지만 더 큰 팀으로 움직이기 위해 다들 어떤 고민을 하고 있는지 생각해볼 기회가 있었고 퀘스트 시스템에 대한 다른 접근을 경험하며 평소의 저라면 하지 않았을 설계가 실제로 퀘스트를 개발하는 스탭 사이에 어떻게 동작하는지 지켜볼 수 있는 계기도 있었습니다. 그런가 하면 부분과 전체를 통해 여느 커다란 팀에서 다들 비슷하게 겪는 상황을 똑같이 겪으며 개인적으로 그 동안 알게 된 그런 상황을 돌파하는 방법을 직접 보일 수 있었습니다. 프로젝트 규모가 작을 때는 모든 사람들이 작업 의도를 명확히 이해한 채 일할 수 있지만 조직이 아주 조금만 커져도 그러기는 쉽지 않습니다. 흔히 피자 한 판에 빗대곤 하는데 구성원이 피자 한 판을 나눠 먹을 수 없다면 이미 그 조직은 너무 커진 거라고 합니다. 그런데 세 자리 수 사람들이 한 프로젝트에 기여하는 상황에서 모든 사람들이 자신에게 할당된 업무의 의도를 이해하고 업무 결과가 기여한 전체 그림을 파악하기는 결코 쉽지 않습니다. 그런 상황에서 게임디자이너들은 자기들도 잘 모르는 전체 그림과 미래에 대한 계획을 질문 받곤 하고 이에 답하지 못할 때 그다지 좋지는 않은 평가를 받을 수 있는데 이럴 때 협업을 그럭저럭 진행 시키고 스스로도 큰 대미지를 입지 않을 방법들이 있고 저는 이를 설명할 수 있습니다.

지난 한 달 사이에 겪은 흥미로운 경험의 클라이맥스는 이제 제가 고민할 차례입니다에 소개했습니다. 지난 원작이 있는 프로젝트에서는 프로젝트 시작 시점이 원작의 런칭 시점과 비슷해 표준 MMO 게임의 기반을 설계하고 구축하는 업무를 수행함과 동시에 원작을 파악하기 위해 정신 없이 원작을 플레이 해야 했습니다. 원작을 어느 정도 파악했다고 생각한 다음에도 계속해서 업데이트를 반복하고 또 고객들의 반응에 따라 큰 변화가 일어나 종종 우리가 따라 개발하던 시스템이 고객들로부터 좋지 않은 평가를 받아 삭제되는 사이에도 우리는 같은 기능을 개발하고 있을 때도 있었습니다. 원작은 계속해서 서비스 하고 있었기에 종종 우리가 해결해야 하는 문제를 원작 개발자들은 어떻게 접근했는지 알아보기 위해 항상 지금 이 순간에도 동작하는 서비스가 있어 마음이 든든했습니다. 하지만 이번 원작은 이미 서비스를 종료하고 시간이 흘러 과거에 그 게임을 플레이 했던 기억에 의존해야 합니다. 다행히 내부 문서에 원작을 플레이 할 수 있는 방법을 설명한 문서가 있었지만 현재 우리가 구축한 개발환경과 차이가 커 개인적으로 서버, 클라이언트 환경을 갖추고 혼자 플레이 하는데 시간을 쓸 지 잠깐 고민하다가 절실하게 필요하기 전까지는 시도하지 않기로 합니다. 하지만 이전 원작이 있던 프로젝트에 있을 때와 마찬가지로 원작을 개발하며 생산한 문서 전체에 접근할 수 있었습니다.

개발 문서들은 이 문서들을 근거로 개발된 빌드의 스냅샷을 온전히 반영하고 있지 않습니다. 만약 그런 문서를 원한다면 문서를 풀타임으로 관리하는 사람들이 필요할 겁니다. 하지만 거의 모든 개발팀은 그런 사람을 고용하지 않기 때문에 문서를 작성한 사람이 개발의 나머지 과정에 관여해야 하고 개발을 마친다 하더라도 이전에 생산할 문서를 유지보수할 시간을 확보할 수 없는 경우가 많습니다. 그래서 개발 도중 생산된 문서 대부분은 어느 시점의 스냅샷과도 일치하지 않기 쉽습니다. 하지만 이 문서들을 최대한 많이 읽고 각 문서의 작성 시점에 따른 스냅샷을 상상해 가다 보면 마치 저 자신이 그 개발팀과 함께 시간을 보낸 것처럼 과거의 시간 속에 무슨 일이 일어났으며 각각의 시점에 빌드가 대략 어떤 모습을 하고 있을지 상상해볼 수 있습니다. 원작을 한참 즐겁게 플레이 했지만 이상할 정도로 게임이 저 자신을 게임으로부터 쫓아내려고 한다는 느낌을 받았고 이 현상을 개인적으로 자기파괴적 밸런스라고 표현하곤 했는데 그 때는 도대체 그들이 왜 그런 의사결정을 했는지 이해하기 어려웠습니다. 또 여러 고객 중 한 사람으로써 저 같은 요구사항을 가진 고객의 존재를 개발팀이 전혀 모르는 건가 하는 생각을 하며 서운해 하기도 했습니다.

하지만 오래 전 원작 개발팀이 남긴 오랜 기간에 걸쳐 생산된 수많은 컨플루언스 문서 사이에서 허우적대다가 문득 어떤 문서를 발견했는데 그 문서에는 그들도 자신들의 문제, 또 저 같은 취향을 가진 고객의 요구사항을 잘 반영하지 못하는 상황 따위를 인지하고 있었음을 파악할 수 있는 문서를 읽게 됩니다. 그들은 기술적으로 큰 도전이었던 요소를 고객들이 딱히 대단하다고 인지하지 않으면서 이를 구축하는데 사용한 거대한 비용이 큰 효용을 발휘하지 못하게 되었고 이 도전에 의한 결과는 이후 지속적으로 게임 상에 갖가지 문제를 일으킵니다. 실제 세계에도 같은 문제가 일어나지만 실제 세계는 기본적으로 자의로 게임을 접을 수 없기 때문에 같은 문제가 있더라도 어쨌든 시스템이 동작하지만 가상 세계에서는 같은 문제를 겪는 고객들이 불만을 가지고 게임을 접을 수 있습니다. 이미 거대한 비용을 들여 구축한 결과에 기반해 게임을 지속적으로 유지하기 위해서 어쩔 수 없는 선택들을 해야 했고 그 결과 제가 자기파괴적이라고 느낀 경험이 일어날 수밖에 없지 않았나 싶습니다. 오래된 문서를 읽으며 그런 생각을 하다가 문득 이제 후속작을 개발하는 저 자신이 과거에 그들이 남긴 이 고민을 이어 받아 새로운 결과를 만들어 내는데 기여해야 한다는 사실을 문득 깨달았고 이거 호랑이 굴에 재 발로 걸어 들어왔다 싶은 생각이 들었지만 이미 늦었습니다.

이전 한 달 동안에는 기존 문서를 최대한 빨리 따라잡아 최소한 한 사람 역할을 하기 위해 시간을 늘려 일했습니다. 처음 새 조직에 들어가면 분명 한 사람이 들어왔지만 팀의 퍼포먼스는 그 사람이 들어오기 전보다 줄어드는데 새로 들어온 사람이 퍼포먼스를 갉아먹고 있기 때문입니다. 그렇게 약 -1명에서 시작해 0명이 되고 그 다음에야 비로소 +1명에 다다를 수 있습니다. 채용 과정에서 어쩌다 보니 여러 사람들의 도움을 받게 됐고 또 그 과정에서 팀에 기대를 받는 상태가 되는 바람에 그 기대를 만족 시키려면 최대한 빨리 0명 역할을 탈출해야 한다고 생각했고 그러려면 최대한 프로젝트의 과거와 현재를 파악해야 했는데 그러기 위해서는 물리적인 시간이 필요하다고 생각했습니다. 그런데 회사는 이전에 다른 회사에서 주 52시간 상한제를 실행하기 위한 시스템이 월 단위로 시간을 제한하고 상한을 넘기려는 순간 노무 수령 거부 상태가 되어 일할 수 없도록 했던 것에 비해 이번에는 여전히 시간을 월 단위로 제한하지만 하루 단위로도 최대 시간을 관리하며 일정 시간을 초과하면 노무 수령 거부 상태가 되어 당황스러웠습니다. 가령 이전에는 한달을 4주로 보고 한 주에 최대 52시간까지 일할 수 있었다면 주 40시간, 여기에 최대 12시간까지 초과근무 할 수 있는데 이를 4주 동안 하면 월 최대 208시간 일할 수 있습니다. 그래서 월 208시간에 도달하면 노무 수령 거부 상태가 되어 집에 가야 했습니다.

이전에 이 시스템을 운용하던 회사는 원래 야근이 많기로 유명했는데 포괄임금제를 폐지하면서 비용이 극적으로 증가할테니 기존과 같은 강한 야근을 통한 운영은 힘들지 않겠느냐는 예상이 있었지만 이는 여지 없이 빗나갑니다. 회사는 포괄임금제를 폐지하면서도 여전히 초과근무를 권장했고 직접 이렇게 표현한 적은 전혀 없지만 ‘일해. 돈 줄께’ 같은 느낌으로 행동하는 것처럼 느껴졌습니다. 그래서 포괄임금제가 폐지된 다음에도 야근은 똑같이 계속됐고 월말이 가까워지면 4주 기준 월 208시간을 돌파한 사람들이 하나 둘 씩 사라져 좀 느슨하게 일해 회사에서 말일을 맞이하면 여러 자리가 비어 있는 모습을 볼 수 있었습니다. 월 최대 시간을 돌파해 노무 수령 거부 상태가 되면 컴퓨터를 사용할 수 없게 되며 ‘수고하셨습니다’라는 메시지가 나타났는데 우리들은 종종 “주 52시간으로 한 달을 꽉 채워 일하지 않으면 수고하지 않았다는 거야?”라고 말하곤 했고 그 화면이 뜨면 일부러 모니터를 끄지 않고 퇴근해 주변을 둘러보면 수고한 사람들의 모니터가 곳곳에 켜져 있었습니다. 그래서 주 52시간 상한제를 통해 급여는 늘어났지만 사실상 이전에 일하던 것과 별로 달라지지는 않았습니다. 급여가 늘어났다 해도 그 돈을 쓸 수가 없어 전혀 즐겁지 않고 또 몸과 마음 양쪽 모두 망가져 가는 것은 이전과 별로 달라지지 않았습니다.

그런 환경에서 나름 오래 일한 덕분에 잃은 것도 있지만 다른 한편으로는 그런 환경에서 인간성을 잃지 않고 함께하는 사람들과 나쁘지 않은 성과를 계속해서 내며 그리 망가지지 않은 사람처럼 행동할 수 있는 방법을 배웠습니다. 그런데 그렇게 살다 보니 이번에 겪게 된 하루 단위로 노무 수령 거부 상태가 되는 환경을 겪으며 “이래도 되는 건가?” 하는 불안한 기분이 됩니다. 처음에는 출근 시각으로부터 사전에 초과 신청 없이 일정 시간이 경과하면 하루 단위 노무 수령 거부 상태가 됐는데 이 상태를 계산해보니 매일 노무 수령 거부 상태를 겪는다 하더라도 4주 기준 208시간을 초과할 수가 없었습니다. 그래서 매일 컴퓨터가 잠기는 그 순간까지 일하기를 반복한다 하더라도 이전에 경험한 거의 매달 최대 시간을 돌파하는 환경에서 일하던 사람 입장에서 이거 너무 널럴하게 일하는 것이 아닌가 싶은 생각이 들었습니다. 하지만 사람들은 이런 환경에 익숙한 듯 기준 시간만큼 일한 다음 퇴근했고 출근 시간이 제각각이기 때문에 일찍 출근한 분들은 좀 더 일찍 자유롭게 퇴근했습니다. 그래서 저는 다른 분들보다 조금 일찍 와서 일을 시작하고 조금 늦게 퇴근하곤 해서 밤 늦게 까지 일하지 않아도 월말에 꽤 큰 초과근무가 발생할 거라는 경고 메일을 받았고 이 메일에 대해 보스로부터 주의를 받았는데 경고 메일이 오게 만든 그 꽤 큰 초과근무 역시 이전 경험에 비하면 거의 절반에 불과한 시간이었습니다.

flowchart TD 출근[출근한다] 업무[일한다] 8시간{8시간\n일했는가?} 잠김{컴퓨터가\n잠겼는가?} 퇴근[퇴근한다] 출근 --> 업무 업무 --> 8시간 8시간 -- 예 --> 잠김 8시간 -- 아니오 --> 업무 잠김 -- 젠장 --> 퇴근 잠김 -- 아니오 --> 업무

‘야근 하면 안되는 건가?’ 하는 생각에서 시작해 이내 ‘이러다가 나 수습탈락 하는 거 아님?’ 같은 생각으로 발전하며 불안감을 가지는데 얼마 걸리지 않았습니다. 그 주의를 받고 나서도 이전 경험에 비해 훨씬 널럴하게, 하지만 함께 일하는 다른 분들에 비해서는 훨씬 긴 시간 동안 일했고 결국 월말에 컴퓨터가 잠기지는 않았지만 컴퓨터가 잠기는 데까지 그리 긴 시간이 남지 않은 상태로 한 달을 마무리 하게 됩니다. 첫 달을 그렇게 보낸 저는 여러 번의 경고 메일을 받고 메일은 처음에는 제 보스에게만 참조되었지만 그 다음에는 보스의 보스, 보스의 보스의 보스에게까지 참조되어 참조 라인을 보기만 해도 이미 누가 툭 치면 ‘죄송합니다'라고 말할 것 같은 상태가 되고 맙니다. 그렇게 일했지만 한 달 사이에 -1명에서 시작해 +1명에 도달했는가 하면 그렇지도 못했고 한동안 백수 생활을 하다가 갑작스레 시작한 야근은 한동안 야근으로부터 조금 멀어진 몸과 마음을 꽤 피곤하게 만들었습니다. 결국 목표를 달성하지도 못하고 피곤하기만 한 상황을 만든 겁니다. 그러는 사이에 저를 둘러싼 동료들은 회사에서 가이드 하는 대로 정말 최소한의 초과근무를 하면서도 여전히 한 사람 이상의 몫을 훌륭하게 해 냈습니다. 고도성장기 시각으로 저는 열심히 일하지만 성과가 부족한 사람이라면 동료들은 현대 기준으로 필요한 만큼만 일하면서도 충분한 성과를 내는 분들이었습니다.

종종 들려오는 보도에 따르면 구로에 야근으로 유명한 한 회사를 언급하며 포괄임금제 폐지로 인한 비용 상승과 노동시간 단축으로 인한 신작 부재 등의 이유로 매출이 급감하고 신작이 출시되지 않는다고 말하곤 했습니다. 물론 노동자 관점에서 그런 기사를 쓰는 사람들은 누구에게 돈 얼마를 받으며 일하는지 궁금하기도 했지만 다른 한편으로는 그 곳이 구로의 등대로 불릴 때와 달리 확실히 이전만큼 공격적으로 개발할 수 없기 때문에 그 영향이 아예 없을 수는 없다고 생각하기도 했습니다. 그런데 여기 와서 보니 이미 이들은 과거와 달리 노동시간을 철저하게 통제하면서도 개발을 나름 순조롭게 계속하고 있을 뿐 아니라 이렇게 환경이 변한 다음에도 신작을 출시하고 서비스를 이어 나가고 있었습니다. 몇 년 전 회사 밖에서 본 이들의 신작은 이미 월 단위로 노동시간을 통제하고 또 일 단위로 노동시간을 통제하며 사람들이 그 체계에 익숙해져 노동시간을 적절한 수준으로 유지하는 가운데 달성한 결과입니다. 제가 빨리 팀을 따라잡아야 한다고 생각해 한 달 내내 여러 번 경고 메일을 받도록 야근했으면서도 결국 마음에 드는 성과를 달성하지도 못하고 또 출근 한 지 아직 한 달 밖에 안 됐으면서도 피곤한 사람이 된 것에 비해 함께 일하는 분들은 적당한 노동 시간을 유지하고 성과를 내며 회사 밖에서 여러 활동을 하고 낮 시간에 잡담으로 그런 여러 경험을 이야기하고 있었습니다.

수습으로 두 번째 달을 맞으며 저 자신이 현대에 더 이상 유효하지 않은 비효율적인 노동 방식이 몸에 베어 있을 가능성이 높다는 생각을 하기 시작합니다. 처음 주 52시간 상한제가 도입될 때 당시 회사에는 노동시간을 측정할 시스템이 없어 각자가 공유된 엑셀 파일에 출근 시각을 기입하고 또 퇴근할 때 퇴근 시각을 기입하며 노동시간을 통제하기 시작했는데 당연히 사람이 직접 하는 기입은 종종 부정확했고 또 누락됐습니다. 통제가 시작되었음에도 여전히 이전과 똑같은 방식으로 일했고 여러 사람의 월 단위 노동시간은 순식간에 부족해졌습니다. 그 상황에서 서비스는 해야 했기에 최대 시간을 돌파할 것으로 예상되는 사람들을 라이브 전날까지 출근 시키지 않거나 개인적으로는 의도적으로 출근시간을 더 늦게 기입한 다음 업데이트를 준비하고 실행하며 대응하는 등 책임감에 기초한 자발적인 불법 행위를 저지르기도 했습니다. 그 때는 그렇게라도 서비스를 유지하지 않으면 당장에 방법이 없다고 생각했고 또 어느 정도 그 생각이 틀리지 않았습니다. 하지만 이제는 더 이상 그렇지 않은 것 같습니다.

저는 회사에 고용되어 일하며 제 노동력을 제공하고 그 댓가로 돈을 받아 생계를 유지합니다. 회사에서 저에게 적잖은 돈을 지불하는 이유는 제 경험에 의한 행동을 구입했기 때문이고 제가 기존 인원에 한 사람이 더해지는 방식으로 동작하기보다 한 사람이 곱해지는 방식으로 동작하기를 원한다는 사실을 잘 이해하고 있습니다. 그러려면 최대한 빨리 기존에 팀이 이룩한 성과와 그 역사를 따라잡아야 하지만 동시에 회사가 노동시간을 강하게 통제하는 만큼 저 자신을 더 건강하고 멀쩡한 상태로 만들어야 합니다. 이전에는 노동시간 자체에 집중했기 때문에 이로 인해 사람이 좀 덜 멀쩡하거나 종종 멀쩡하지 않은 상태로 회사에 나타나더라도 딱히 신경 쓰지 않았습니다. 회의 때 피곤에 쩐 상대가 명백히 이상한 말을 뱉은 다음 이내 이를 눈치채고 말을 거둬들이는 모습을 보면서도 으레 피곤하니 어쩔 수 없다고 생각했습니다. 회사는 이런 상태의 사람들에게 평소보다 훨씬 큰 돈을 지출하고 있으며 이 상태를 부추기고 있었지만 이에 비해 생산성은 그리 높지 않았던 것이 확실합니다. 그런데 제 스스로도 그런 문화에 젖어 있지 않았나 하는 반성을 해 봅니다.

여전히 팀을 따라잡으려면 시간이 더 걸릴 테고 또 한 사람 역할을 하는데도 시간이 걸리며 회사가 저를 고용한 목적일 제 경험에 의해 한 사람이 곱해지는 상태에 도달하는기까지도 역시 시간이 더 필요하겠지만 그 시간이 이전 시대의 습관처럼 큰 초과근무를 통해 달성할 수 있는 것이 아니라는 사실을 다시 한 번 떠올립니다. 그런 의미에서 오늘은 평소에 하루 단위로 컴퓨터가 잠기는 시간에 도달하기까지 시간을 남긴 채 좀 더 일찍 퇴근했고 앞으로는 계속해서 그렇게 일하며 생산성을 올리는데 집중해 볼 작정입니다. 팀을 따라잡아야 하지만 동시에 새로운 일하는 방식에도 적응해야 합니다. 그래서 기존 업무 방식을 다음과 같이 변경했습니다.

flowchart TD 출근[출근한다] 업무[일한다] 8시간{8시간\n일했는가?} 피곤{피곤한가?} 잠김{컴퓨터가\n잠겼는가?} 퇴근[퇴근한다] 출근 --> 업무 업무 --> 8시간 8시간 -- 예 --> 피곤 8시간 -- 아니오 --> 업무 피곤 -- 예 --> 퇴근 피곤 -- 아니오 --> 잠김 잠김 -- 젠장 --> 퇴근 잠김 -- 아니오 --> 업무

이번 50호에도 다섯 가지 다른 이야기를 준비했습니다.


기분 좋은 지원
누군가를 지원하는 일이 굉장히 기분 좋은 일이라는 사실을 최근에서야 깨달았습니다.
함께 연주하는 오케스트라가 자아를 가질 때
먼 옛날 밴드와 오케스트라가 협연하는 유행을 시작한 공연은 현대에 그리 만족스럽지 않았습니다. 제 나름의 이유를 생각해봅니다.
직접 만들어야 할까?
언제까지 실무와 연결된 끈을 붙잡아야 할까요. 아니면 끈을 붙잡는 행동이 올바를까요?
어떻게 이렇게 빨리 만들었나요?
어떤 프로젝트는 오랜 기간에 걸쳐 개발했음에도 그저 그런 결과를 내놓기도 합니다. 하지만 반대의 경우도 있습니다. 어떻게 한 걸까요?
내 차는 원래 소리가 큰데 어쩌라고
물론 누구나 자신이 원하는 서비스를 선택하고 사용할 자유가 있습니다. 물론 그 자유에 따르는 책임이 있다는 사실을 인식해야 합니다.

지난 뉴스레터 시즌 2 계획 안내에 말씀 드린 대로 이번 50호 까지 한 주에 한 번 보내 드리고 51호부터는 2주에 한 번 보내 드리도록 일정을 조정하려고 합니다. 이전보다 조금 천천히 두 주에 한 번 찾아 뵐 시즌 2는 한 주 쉰 다음 주에 시작합니다. 다음 다음 금요일에 뵙겠습니다. :)