첫날이다, 신참.
선임개발자 갤리의 안내로 자리에 앉은 토마스는 긴장한 기색이 역력했습니다. 파티션으로 둘러싸인 사무공간이 마치 큰 벽이 에워싼 것처럼 느껴졌습니다. "개발팀에 온 걸 환영한다"며 동료들이 건네는 말도 토마스의 귀엔 들리지 않았습니다.
제.. 제 이름은.. 그래 토마스, 토마스입니다.
토마스는 떠듬거리는 목소리로 자신을 소개했습니다. 사람들이 박수를 쳐주었습니다. 둥글게 모인 동료들 얼굴을 살펴보았습니다. 개발팀엔 전부 남자들밖에 없었습니다. 그래도 인상은 다들 좋아 보였습니다. 토마스는 조금 안심이 되었습니다.
하지만 오후가 되자 근심이 깊어졌습니다. 긴장해서 그런 걸까요. 선임들이 짠 코드를 열어봤는데 아무것도 이해를 못 하겠는 겁니다. 도무지 개발지식들이 기억나질 않는 것 같았습니다. 분명 예전에 봤던 코드 같은데, 어디서 배운 것 같은데 아무 기억도 나지 않았습니다. 토마스는 불안했습니다. 이대론 안 되겠다 싶어 고민 끝에 이 사실을 털어놓았습니다.
저.. 저 모르겠어요.
아무것도 기억이 안 나요.
토마스의 말을 들은 개발팀장 알비는 코웃음을 쳤습니다. 그럴 줄 알았다는 듯 어깨를 으쓱 오르내렸습니다. 이봐 신참, 진정해. 우리도 다 그랬어. 며칠 야근하면 기억나기 시작할 거야. 아니래도 걱정할 필요는 없어. 구글신께서 알려준다고.
그렇게 토마스는 첫날부터 야근을 하게 되었습니다. 그런데 분위기가 이상했습니다. 야근하는 사람은 토마스뿐만이 아니었습니다. 개발팀은 아무도 집에 갈 생각을 하지 않았습니다. 밤이 되자 하나둘 삼선슬리퍼에 추리닝과 늘어진 회색 반팔티로 갈아입고 양치질을 하러 갔습니다. 손에 든 세면 팩엔 클렌징폼부터 샴푸까지 모든 게 들어있었습니다. 어깨에 걸친 수건엔 숙박업소 이름이 새겨져 있었습니다. 토마스는 화장실 가는 척 따라 나와 양치질을 하는 알비에게 조용히 물었습니다.
저.. 퇴근 안 하세요?
우리? 우린 여기서 먹고 자고 해.
매달 한 번씩 월급박스가 올라오지.
날이 밝았습니다. 토마스는 밤사이 웹스톰과 소스트리 등을 설치하고서 선임들의 코드를 모두 열어봤지만, 여전히 알 듯 모를 듯 이해가 되지 않았습니다. 토마스는 혼란스러웠습니다. 잠을 못 자서 더 그런 것 같았습니다. 안 되겠다 싶어 잠시 머리 좀 시키려고 휴게실을 찾았습니다. 그곳 벽면엔 '우리 회사 좋은 회사(W.C.K.D is good)'라는 문구가 쓰여있었습니다. 머리가 아파졌습니다. 담배 피우고 싶다, 토마스는 갑자기 그런 생각이 들었습니다. 금연 4년 차 토마스는 담배 생각이 절실했습니다.
회사 뒤 공터는 담배 한 대 피우기에 딱이었습니다. 불을 붙이고 연기를 빨자 콜록콜록 기침이 나왔습니다. 그간 담배 피우는 법을 잊어버린 토마스의 몸은 기도로 보내야 할 연기를 식도로 내려보냈습니다. 한 대 생각이 그렇게 절실했는데, 딱 한 모금 피우고 나니까 꺼버리고 싶었습니다. 현기증이 핑 돌았습니다. 벽에 꽁초를 비벼끄려는데 벽에 웬 이름이 쓰여있었습니다. 고개를 들어 올려다보니 저 위에서부터 수많은 사람들의 이름이 벽에 새겨져 있었습니다. 그때 뉴트가 말보로 라이트를 물고 다가왔습니다. 그가 벽에 새겨진 이름의 의미를 말해주었습니다. 아 이거? 이건 퇴사자 명단이야. 휴.. 힘든 시기였지.
자리에 돌아와 앉자마자 토마스는 오기가 올랐습니다. 아까 그 퇴사자 명단 때문이었을까요. 문득 나약한 자기 모습이 한심해 보였습니다. 그래, 내가 어떻게 취직을 했는데. 그 깜깜한 취준생 시절도 버텼는데 겨우 이걸로 쫄지 말고 다시 차근차근히 해보자. 토마스는 그런 생각을 하며 선임들 코드를 열었습니다. 지난밤과는 달리 시간을 들여 코드 하나하나를 찬찬히 뜯어보았습니다. 그런데 뭔가 이상했습니다. 자세히 보니 코드들이 엉망이었던 겁니다. 이 코드가 정말 작동이 될까 싶은 생각마저 들었습니다. 간밤에 선임들 코드가 이해되지 않았던 건 토마스가 긴장을 해서도, 개발지식이 기억나지 않아서도 아니었습니다. 그냥 코드 자체가 엉망이었던 것입니다.
공터에서 예의 말보로 라이트를 피우며, 뉴트는 충격적인 사실을 말해주었습니다.
사실 이건 미로야.
우리가 짠 코드는 거의 미로 수준이라고.
뉴트는 절대 저 미로 속에 들어가지 말라고, 절대로 '커밋'하지 말라고 말했습니다. '커밋'하는 순간 책임을 져야 한다고 했습니다. (편집자주 - '커밋[commit]'은 기존 코드를 변경한다는 의미의 개발 용어) 또 그 미로 같은 코드 속엔 그들이 한 번도 잡지 못한 버그가 있다고 했습니다. 개발자들은 이 버그를 '그리버'라 불렀습니다. '슬퍼하는 사람, 비탄에 잠긴 사람'이라는 뜻이었습니다. 수많은 개발자들을 비탄에 잠기게 만든 버그였습니다.
그러나 토마스는 신입사원이었고, 그는 용감했습니다. 그때부터 필사적으로 버그를 고쳤습니다. 모두의 만류에도 혈혈단신 미로 속으로 뛰어들었습니다. 어떤 코드의 주석엔 "이렇게 하면 오류 나니까 이렇게는 쓰지 말라"고 적혀있었습니다. 아니 이딴 주석을 달 시간에 고쳤어야지! 토마스는 어이가 없었습니다. 개발자들은 서로 일한 티를 내기 위해 최대한 많은 주석을 달았고, 뭔가를 한번 올리면 절대 삭제하지 않았습니다. 힘겨운 싸움이었습니다. 토마스를 도와준 사람은 유일한 사람은 선임개발자 민호뿐이었습니다. 둘은 미로 속에서 그리버와 치열하게 싸웠고, 결국 극적으로 그리버를 물리칩니다. 회사에선 난리가 났습니다.
시.. 신참이 그리버를 잡았어!
팀원들은 토마스를 달리 보기 시작했습니다. 그를 보며 "우리도 할 수 있다." "어쩌면 이제 퇴근할 수 있을지도 모른다"며 희망에 차올랐습니다. 이들은 토마스에게 선임개발자 역할을 맡기자고 입을 모아 말합니다(이 회사에서는 일 처리가 빠르다는 이유로 선임개발자를 '러너'라고 부릅니다). 갤리는 그게 아니꼬왔습니다. 아니 이제 갓 들어온 저 뉴비를 자신과 동등한 위치에 서게 하겠다니, 그에겐 어이가 없는 일이었습니다. 갤리는 정치를 시작합니다. 말도 안 되는 이유로 토마스를 헐뜯고 파를 모으기 시작합니다.
바로 그때였습니다. 누군가 개발팀에 신입사원이 왔다고 말했습니다. 그런데 여자라는 겁니다. 여직원이 왔다는 얘기를 들은 개발팀원은 미친 듯이 달려가 확인합니다. 정말이었습니다. 이번 신입은 여직원이었습니다.
여.. 여자잖아?
우리 팀에 여직원이 왔어!
거기다 예뻐!
여직원은 자신을 둥글게 에워싸고 있는 개발자들을 훑어봅니다. 그리곤 그중의 한 사람을 보더니 갑자기 이름을 부릅니다.
토마스 오빠!
여직원은 어떻게 토마스를 알고 있는 걸까요? 이 여직원의 정체는 뭘까요? 운영진은 왜 이 여직원을 개발팀에 보낸 걸까요? 이들의 운명은.. 앞으로 어떻게 될까요? 아니 그보다, 대체 PM은 어디 간 걸까요?
누군가의 실화를 바탕으로 재구성해 더 충격적인 본격 개발재난 블록버스터. 《메이즈 러너》였습니다.
영화 이미지 ⓒ 20th century fox