티스토리 뷰

에세이

Little Big Adventure

June 2018. 9. 7. 03:33

정말 가차 없는 상황이었어요. 새 프로젝트에 들어온 지 15일밖에 안 지났는데 다른 프로젝트를 시작해야 한다는 거에요. 너무 당황스러워서 되물었죠. '제가 여기 리더인데 나가라구요?' 그래도 상황이 급해서 바꿔야 한대요. '그러면 여기 후배들은 누가 챙겨줘서 프로젝트를 진행하죠?' 그건 천천히 생각해보겠대요. '어..근데 저 지금 이 프로젝트 회의 들어가야되는데 가지 말까요?' 근데 또 그건 일단 들어가라고 하더라구요.


황망하게 지하철을 타고 회의를 하러 갔어요. 프로젝트가 막 시작했던 시기였기 때문에 그 회의는 앞으로 프로젝트를 어떻게 잘 진행해볼까에 대한 회의였어요. 미래와 비전을 이야기하고 구체적인 계획을 짰어요. 그러니까 예비부부들이 하는 그런 거요. 그래서 전 그 자리에서 예정된 이별에 대해서 한마디도 하지 못하고 돌아올 수 밖에 없었어요. 뭔가 잘못한 것도 없는데 나쁜 사람이 된 것 같았어요.


돌아오니까 구체적인 이야기를 들어봐야겠다는 생각이 들었어요. 그래서 가서 따졌죠. '저는 무슨 프로젝트에 들어가야 하며, 왜 제가 왜 지금 왜 가야 하는 겁니까?' 그러자 저보고 안드로이드를 좀 해봤냐고 물어보더라구요. 물론 부서는 제가 뭘 할 줄 아는지를 대충은 알고 대충은 모르고 있었어요. 제가 7년 차 자바 프로그래머, 부서에서 가장 젊은 프로젝트 리더, 다수의 수상경력을 가진 우수한 멘토라는 사실을 알고 계셨고 21년 차 프로그래머, 6개월 전 사직서 제출 직전까지 갔다가 간신히 회복함, 갑작스러운 환경 변화에 예민하게 반응한다는 사실을 모르고 계셨죠. 마찬가지로 제 안드로이드 개발 실력에 대해서도 잘 모르고 계셨구요.


그래서 저는 제 실력을 알려드리기 위해 조심스럽게 주머니에서 제 엑스페리아Z를 꺼내서 보여드렸어요. 엑스페리아 Z는 안드로이드 스마트폰이었고, 한국에는 출시가 되지 않은 모델이었기 때문에 그것을 꺼내는 것만으로도 압도적인 안드로이드 전문가 분위기를 낼 수 있었어요. 그리고 더욱 조심스럽게 제가 '집에서' '개인적으로' '공부하면서' 만든 앱을 실행시켜서 보여드렸어요. 제가 만든 앱은 앱 드로워를 열어서 스무스하게 스크롤 한 뒤, 초록색 로봇 머리 모양의 아이콘을 터치하면 스냅드래곤 S4가 초당 수백만 번의 연산을 통해 화면에 액티비티(Activity)를 구동시켜줬어요. 그리고 초당 60회의 속도로 화면을 갱신해나가며 메모리에서 제가 엄청난 인고와 번뇌의 시간을 견디며 주의 깊게 작성한 메시지를 메모리 영역에서 불러온 뒤 구동된 액티비티의 상단에 출력해줬어요. 'Hello, World!' 라구요.


물론 Hello, World를 만들었다는 사실은 생각보다 많은 의미를 가지고 있어요. 개발자가 작성한 코드가 기계어로 번역되어 배포되기까지의 모든 과정이 준비되었고 실제로 진행되었음을 증명했다는 말이니까 그다음부터는 개발자의 역량에 따라 뭐라도 만들 수 있는 상태가 되었다는 말이 되죠. 그래서 보통 개발자들은 집에서 혼자 공부할 때 새로 공부하는 언어나 플랫폼에서 Hello, World를 찍으면 인간과 컴퓨터의 소통에 성공했다는 사실에 대단히 만족해하며 개발툴을 닫고 게임을 실행하죠. 그리고 다시는 그 개발툴을 실행하지 않고 방치하다가 다음 게임을 깔다가 용량이 부족해지면 지워버리곤 해요.


제가 만든 Hello, World 앱은 다른 앱들과 다르게 화면의 가로 모드와 세로 모드를 모두 지원해서 UX 측면에서 우수함을 말씀드리기도 전에 부서에서는 제가 안드로이드 개발 능력이 없다는 거로 결론을 내렸어요. 아 그러면 저는 이 프로젝트와 함께 갈 수 없는거군요. 좋은 경험이었습니다. 라며 돌아서려고 했는데 부서에서는 저를 포기하지 않았어요. 그러면 안드로이드를 '가르쳐서' 프로젝트를 진행하라고 하더라구요. '배워서'를 잘못 말씀하신 거 아닌가요? 어, 저는 안드로이드를 할 줄 모르는데요. 사실 아까 Hello, World 앱은 아무것도 아니었습니다. 그건 사장님도 책보고 5분이면 - 물론 담당자들이 개발환경을 다 세팅해주고 리허설도 한 3번쯤 해야겠지만 - 만드실 겁니다. 사실 저는 여태 아이폰만 써봤는데요. 아, 이 폰이요? 이건 그냥 지난 달에 예뻐서 충동구매 한 겁니다. 두 달쯤 있으면 다시 아이폰으로 바꿀 거예요. 예, 맞아요. 한 달에 30만원씩 내고 쓰는 셈이죠. 저도 제가 제 정신이 아닌 것 같아요. 그런데 지금 그게 문제가 아니라 저보고 안드로이드를 가르쳐가며 진행하라니, 그러면 저는 누가 가르쳐주죠?


물론 마지막 질문에 답을 듣지는 못했어요. 저는 부서의 첫 번째 안드로이드 개발자가 될 예정이었거든요. 그러니까 닐 암스트롱 같은 사람이요. 다른 점이 있다면 저에게는 휴스턴이 없었다는 것이지요. 물론 곤경에 빠진 개발자를 위해 회사 내의 모든 안드로이드 개발자들이 도움을 주는 그런 아름다운 일도 없었어요. 저희는 다른 부서에 도움을 주는 것도, 도움을 청하는 것도 그리 익숙하지는 않았거든요. 그래서 저는 그냥 당면한 상황과 해결해야 할 문제를 단순화시켰어요. '어떻게 하면 헬로 월드급 안드로이드 개발자가 강사급 안드로이드 개발자로 바뀔 수 있을지 알아내자' 물론 저는 제 안드로이드 기술력이 헬로 월드 수준 밖에 안 된다는 사실도 겸허히 받아들일 수 있었고, 수준급의 안드로이드 개발자가 되는 미래도 꿈 꿨던 적이 있었지만 그 간격이 5일 밖에 안 된다는 사실은 조금 몽환적으로 느껴졌어요.


제가 새 프로젝트에서 느꼈던 막막함과 상관없이, 일정은 착착 진행되었어요. 먼저 기존에 투입되었던 프로젝트의 리더 자리를 다른 동기에게 넘겨줬어요. 뭔가 빠바밤 하고 꽃가루가 펑 터지고 짧은 시간 같이 프로젝트를 진행했던 동료들에게 석별의 정을 고하는 그런 계승식이 있었던 것은 아니고, 내 문서 폴더에서 프로젝트 관련 문서들을 쭉 긁어서 메일로 던져놓고 기존 프로젝트는 잊어버렸죠. 그건 잘 진행될 거라고 믿었어요. 원래 내 일이 아니면 다들 잘 살고 잘 지내는 것처럼 보이잖아요.


그리고 새 프로젝트의 고객들과 치열한 미팅을 반복했어요. 새 프로젝트의 고객들은 조금 무서운 사람들이었고, 그 고객의 고객들은 아주 무서운 사람들이었는데 그래서 저희는 회의를 할 때마다 위축될 수밖에 없었어요. 그분들이 원하는 것을 만들어줄 수는 있겠다는 미약하고 근거 없는 자신감은 아직 사라지지 않았는데, 실수하면 큰일 나겠다는 불안감이 점점 커지더라고요. 다들 아시는 것처럼 자신감은 넘치지 않을 정도로 찰랑거리면 괜찮고 불안감은 바닥에 찰박거릴 정도면 적당한 법인데, 그때는 두 개의 수위가 바뀐 상태였어요. 그래서 자신감의 수위를 높이기 위해서 열심히 안드로이드를 공부하고, 불안감을 배수시키기 위해서 더 열심히 안드로이드를 공부했어요.


그리고 5일 뒤, 프로젝트에 개발자들이 속속 합류하기 시작했어요. 이 업계의 매우 전통적인 개발자 선발 방식, 그러니까 '지금 일 없는 사람'을 뽑는 방식에 의하여 개발자 4명이 충원되었고 저는 5일 선배의 자격으로 '제가 안드로이드를 해보니까 말이죠'로 시작하는 다양한 무용담을 펼칠 수 있었어요. 그리고 다시 5일이 지나자 저희는 그럭저럭 안드로이드 개발팀의 형태를 갖출 수 있게 되었어요. 다들 버튼을 누르면 이름을 물어보고, 이름을 입력하면 헬로 {누구}님! 이라고 말해주는 정도의 복잡한 앱을 만들 수 있게 되었죠.


하지만 저희 프로젝트의 요구사항은 훨씬 더 복잡했어요. 필기, 타이핑, 사진 촬영, 첨부, 크기 조정, 회전, 저장, 관리, 동기화 등의 모든 요소가 포함된 안드로이드 애플리케이션, 서버 애플리케이션, 웹 애플리케이션이 요구사항에 들어있었죠. 그리고 그 모든 것을 4개월 이내에 만들어야 했어요. 그게 가능하냐고 물어보고 싶었는데, 안드로이드를 잘 몰라서 물어보지 못했어요. 아마 높은 분들이 가능하다고 판단했으니까 그런 일정이 잡혔겠죠. 저보다 연봉을 두 배 이상 받으시는 분들이 결정한 내용이니까 분명 충분한 고려와 배려와 심려가 포함되어 결정된 일정이라고 생각했어요.


그래서 회의 때 물어봤어요. 이걸 4개월 이내에 만들 수 있는 비책을 알려주십시오. 그러니까 제조사에서 배포한 SDK를 쓰면 된다고 하더라구요. 역시나 막 정한 일정은 아니었구나! 라고 감탄하면서 SDK를 보니까 생각보다 많은 기능이 제공되고 있었어요. 와, 이거 써서 만들면 4개월이 아니라 2개월에도 완성할 수 있을 것 같습니다! 라고 이야기하고 두근거리는 마음으로 자리에 가서 SDK를 다운로드 받으려고 했는데 저를 분잡고는 '다만 이거랑 이거는 기능을 좀 바꿔야 할 것 같다'고 하더라구요. 가만히 보니까 SDK에서 지원도 안 할뿐더러 기능을 바꿀 수도 없었어요. 그래서'그러면 제조사 SDK를 못 쓰는데요?' 라고 말씀드리자 기능을 빼지는 못하니 SDK를 안 쓰고 직접 SDK를 만드는 방향으로 가자는 거예요. '그러면 4개월 이내에 만들 수가 없는데요?' 그러자 이걸 4개월 이내에 만들지 못하면 고객의 고객들이 매우 슬퍼할 거다 라고 이야기 해주더라구요. 아니 그러면 추가 기능 포기하고 SDK에서 되는 것만 가지고 만들까요? 그러자 추가 기능들이 제외되면 고객의 고객들이 매우 화를 낼거다 라고 이야기 해주더라구요. 대충 감이 왔어요. 이 프로젝트도 다른 여느 프로젝트와 다를 것 없이 일정은 작고 원하는 것은 큰 그런 프로젝트구나. 우리는 이제 또 몇 달간 치열한 모험의 세계에서 살겠구나.


적당히 체념하고는 알겠으니까 개발 장비나 달라고 했는데 2개 밖에 못 받아왔어요. 그나마도 해상도와 화면 비율이 맞지 않는 장비들이었어요. 개발자가 5명인데 어째서 장비가 2대죠? 라고 물어보니까 그게 비싼 장비라고 하더라구요. 어려운 일정과 목표를 주고서 장비도 제대로 챙겨주지 않는 사람들이 너무 야속해서 저는 안타까운 마음으로 아마존에 접속해서 최신 장비를 주문했어요. 그리고 다음 회의 때 그 장비를 들고 무심한 척 아무것도 아닌 척 자랑하지 않는 척 시연을 했죠. 이게 너희 장비보다 2배는 더 비싼 장비다 이것들아 라는 심정으로요. 물론 고객들이 깊이 반성하고 새로운 장비를 지급해주는 일은 없었어요.


결국 저희는 3대의 장비를 가지고 개발을 진행했어요. 5명의 개발자가 3대의 장비를 가지고도 부족함 없이 개발할 수 있도록 일감을 분배하고 스케줄을 정하는 것은 굉장히 어려운 일이었죠. 각 개발자 개인의 성향, 실력, 잘하는 일과 못 하는 일, 좋아하는 일과 싫어하는 일, 신체와 마음의 건강상태, 최근에 여자친구와 헤어졌는지 여부, 그랬을 때 이 친구가 좌절하고 아무것도 못 하는 타입인지 불타오르며 업무에 매진하는 타입인지 여부 등을 모두 고려하면서 일감을 분배해줘야 했거든요. 많은 프로젝트에서 해왔던 일이지만, 일정이 빡빡해지고 개발 난이도가 높아질 수록 이 분배가 정말 어려운 일이 된다는 것을 새삼 느꼈어요.


구체적인 개발 진행 과정은 많은 분에게 PTSD를 유발하거나 혐오감을 줄 수 있을 것 같아서 생략할게요. 어쨌든 저희는 신체적, 정신적 사망자 없이 프로젝트를 끝낼 수 있었어요. 아, 정확히 말하면 완전히 끝내지는 못했어요. 정해진 4개월 중 2개월이 지났을 때, 고객들이 갑자기 프로젝트를 리셋해버렸고 저희는 거의 모든 것을 처음부터 다시 만들어야 했어요. 그리고 3개월이 지났을 때 저희 부서가 초기화 되어 사라져 버렸거든요. 그래서 4개월이 되기 2주일 전에 저희는 딱 2주분 만큼 미완성된 애플리케이션들을 고객들에게 넘겨줄 수밖에 없었어요. 그리고 저희는 다들 보트피플이 되어 각자 새로운 부서로 향했죠. 정말 법인이라는 존재는 자연인들에게 너무 무심하구나, 원가나 매출이나 효율도 중요하지만, 그보다 먼저 사람 한 명 한 명을 조금만 더 소중하게 생각해줄 수는 없는 것일까, 그런 생각이 들었어요.


그로부터 3년 뒤, 저는 진급자 교육을 받으러 연수원에 들어가게 되었어요. 그리고 연수원에서 태블릿을 지급받았어요. 그런데 그 태블릿에 굉장히 익숙한 앱이 깔려있더라구요. 조심스럽게 실행해보니 저희가 3년 전에 만들었던 그 앱이 그대로 실행되었어요. 마치 3년의 시간이 그대로 멈춰있었던 것 처럼 똑같은 모습으로요.


옛날 추억에 잠겨서 앱을 이리저리 써보고 있는데, 진행자가 안내를 해주더라구요. 로그인은 이렇게 하시면 됩니다. 셀카 찍어서 프로필 설정 하시구요. 강의 노트는 여기서 확인하시면 됩니다. 아, 거기 필기앱이 있는데 그건 쓰지 마세요. 저장이 안 되거든요. 갑자기 피식하는 웃음이 나왔어요. 저희가 개발 일정의 마지막 2주에 잡아놨던 기능이 저장기능 이었거든요. 결국 이건 아무도 완성을 못 시켰구나. 그런데 계약에는 있었으니 여기 깔리기는 깔렸구나. 그런데 솔직히 3년이면 저장 기능 정도는 만들 수 있지 않았을까. 어려운 것도 아니고 그냥 파일 읽기 쓰기가 전부인데. 3년이 지나도록 완성되지 않은 앱을 보고 있으려니 속상한 기분이 들었어요.


그사이에 강의가 시작되었어요. 그만 놀고 강의 노트를 펼치기 위해 필기 앱의 메뉴를 열었어요. 그리고 종료버튼을 누르려다 문득 떠오르는 게 있어서 제목 변경 메뉴를 선택하고, 새로운 제목을 입력하라는 팝업에 사라진 저희 부서명을 넣어봤어요. 그러자 앱은 정확히 제가 넣어두었던 이스터 에그 메시지를 화면에 뿌려줬고, 이어서 숨겨진 기능들을 활성화 해줬어요. 그제야 뭔가 만족스러운 기분이 들어서 앱을 닫고 강의에 집중했어요. 아마 사람이 제일 중요하니까 인재를 소중히 여기는 가치관이 어쩌고저쩌고 했던 그런 강의였던 것 같아요.

'에세이' 카테고리의 다른 글

Artificial Insomnia  (0) 2018.09.24
Semi-Automatic  (0) 2018.09.10
Little Big Adventure  (2) 2018.09.07
From Papercut to Sharp Edges  (0) 2018.08.26
2012  (0) 2018.08.12
Build, Pray, Run  (0) 2018.08.06
댓글
  • 프로필사진 비밀댓글입니다 2018.11.18 01:44
  • 프로필사진 June 새 노트 생성 - 메뉴 버튼 클릭 - 노트 이름 변경 메뉴 선택 - 새로운 이름에 gdcs 입력 - 확인 버튼 클릭 입니다 펜으로 필기를 조금 한 다음에 활성화 시켜야 뭔가 보여요! 대단한건 아니구요. 2018.11.18 06:51 신고
댓글쓰기 폼