[기고칼럼] 게임 서버 엔진 사업을 하면서 경험하고 느낀 점

칼럼 | 윤홍만 기자 | 댓글: 6개 |



[▲ 문대경 아이펀팩토리 대표]
인벤에서는 게임업계 1.5세대 인물로 안정적인 게임서버엔진인 아이펀 엔진을 개발한 아이펀팩토리의 문대경 대표님을 모시고 서버 관련 컬럼을 기고 받고 있습니다.

문대경 대표는 서울대 컴퓨터 공학과를 졸업하고 미국 UC Berkeley 에서 컴퓨터 공학 박사 학위를 수여하였고, 1999년 넥슨 입사 후 2005년까지 넥슨에서 출시되는 다수의 게임 개발 프로젝트에서 서버 프로그램을 책임졌습니다.

아이펀팩토리가 개발한 '아이펀 엔진'은 네트워크 처리, DB처리, 분산 처리 등 게임 서버 구현에 필요한 필수 기능을 제공하여 효율적인 게임 개발이 가능하게 하는 게임 서버엔진입니다.

오늘은 기고 칼럼 마지막 시간으로 게임 서버 엔진 사업을 하면서 지금까지 경험하고 느꼈던 점들에 대해서 간단하게 공유하는 시간이 됐으면 합니다.


* 본 내용은 본지의 편집방향과 일치하지 않을 수도 있습니다.

작년 3월에 처음 글을 기고하기 시작한 이후로 꼭 1년이 지났다. 졸작의 글이지만, 이렇게 긴 시간 연재를 허락해준 인젠 측과 몇 안되지만 글을 읽고 지속적으로 응원해주신 많은 분들께 감사의 말씀을 드린다. 이제 마지막 글로 게임 서버 엔진 사업을 하면서 내가 경험하고 느낀 점들에 대해서 간단하게 공유하고자 한다.



■ “구글 캘린더의 경쟁 상대가 누구라고 생각합니까?”

나는 구글 본사에 입사를 하기로 되어있었다. 하지만 연봉 협상까지 마친 상태였으나, 결국 마지막 단계에 구글 대신 SDN 이라는 영역을 개척하던 실리콘밸리의 다른 스타트업으로 갔다. 박사 졸업을 하면서 유일하게 입사 지원한 회사가 구글이었다는 점을 생각하면 상당히 과격한 결정이었다.

내가 구글만을 지원했던 이유는 그 회사의 문화와 제반 인프라 때문이었다. 미국에서는 여름에 인턴십을 하는 것이 정말 중요한 과정 중 하나이다. (빌 클린턴과 당시 인턴이었던 모니카 르윈스키의 스캔들 때문에 “인턴” 이라는 표현이 무언가 부정적인 느낌을 준다고 해서 “인턴십을 한다” 라고 돌려 말하는 것이 좋다던 시절이었다) 나는 시스코와 마이크로소프트 리서치와 구글에서 인턴을 했지만, 그중에서 구글에서의 기억이 가장 좋았다. 그때 결혼까지 약속했던 여자친구와 처참한 이별을 했던 기간임에도, 가장 좋았던 기억으로 남은 걸 보면 구글에서의 기억이 얼마나 인상적이었는지 상상할 수 있을 것이다.

구글에서 인턴을 포함한 신입 직원들이 들을 수 있는 많은 강연들이 있었는데, 나는 구글 캘린더 개발자가 했던 강연이 지금까지도 기억에 남는다. 그 발표자는 구글 캘린더의 경쟁 상대가 누구일 것 같냐는 질문을 했다. 많은 사람들이 MS Outlook 같은 타사 제품을 언급했다. 하지만, 그는 “구글 캘린더의 경쟁 상대는 종이 캘린더”라는 말을 했다. 나는 이 말에 상당히 충격을 받았다.



▲ 구글 캘린더의 경쟁 상대는 아웃룩이 아니다. 종이 캘린더다.

많은 사람들은 소프트웨어 제품의 경쟁 상대가 언제나 다른 소프트웨어 제품일 것이라고 생각을 한다. 하지만 그건 전체 시장에서 소프트웨어 제품이 차지하는 점유율이 높을 때의 이야기다. 캘린더 시장처럼 오프라인 솔루션이 훨씬 더 높은 점유율을 차지할 때는 다른 업체들과의 경쟁이 의미가 없다.



■ “아이펀 엔진의 경쟁 상대는 누구인가요?”

유사하게, 게임 엔진 시장에서의 경쟁 상대는 누구일까? 내가 아이펀팩토리라는 회사를 하면서 아마 가장 많이 들었던 질문일 듯 하다. 많은 분들이 이미 눈치챘겠지만, 그건 다른 유사 솔루션 개발 업체가 아니라, 바로 “자체개발하는 서버”다.

지금은 굉장히 이상하게 들릴지 모르지만, 2000년대 초반까지 게임 개발사들은 클라이언트의 그래픽 엔진을 직접 만들었다. 그리고 그걸 기술력으로 생각했다. 하지만, 지금 돌아보면 직접 엔진을 개발하는 업체는 손에 꼽을 정도다. 오히려 직접 개발한 엔진을 쓴다는 말을 들으면 뭔가 상당히 위험한 일을 하고 있다는 생각이 들 지경이니까… 그만큼 10여 년 사이에 클라이언트 측에서의 개발 방법론은 많은 변화를 겪었다.



▲ 손노리는 PC 버전 화이트데이 게임에 “왕리얼엔진” 이라는 자체 엔진을 이용했다. 2000년대 초반까지만 해도 왕리얼처럼 브랜딩까지는 이루어지지 않더라도 직접 클라이언트 엔진을 만드는 경우는 많았다.

그런데 놀랍게도 같은 기간 서버 쪽에서는 여전히 자체 서버를 개발하는 경우가 많다. 왜 그럴까? 나는 크게 두 가지 이유라고 생각한다. 먼저 회사 차원에서는, 그걸 기술력으로 생각하기 때문이다.

기술력의 축적은 결코 나쁜 것이 아니지만, 그것이 본질이 아닌 산업 영역에서 지나친 집착은 문제가 있다고 생각한다. 나는 이것이 게임 산업을 기술 산업으로 오해하는 데서 기인한다고 생각하기 때문이다. 별로 인정하고 싶지 않겠지만, 게임 산업이 콘텐츠 산업이며 흥행 산업이 된 지는 이미 오래다. 기술 산업이라면 더 좋은 기술력을 가진 회사가 더 큰 성공을 해야 되지만, 게임에서의 성공 기준은 이미 상당 부분 홍보 마케팅과 과금 모델에 의해 결정되고 있다.

두 번째 이유로는 프로그래머의 개발 욕구라고 생각한다. 모든 사람은 발전하길 원하며 그런 노력은 권장되는 것이 바람직하다. 그러나 전체 개발 일정이나 서버 개발의 품질을 끝까지 책임지지 못한다면 이는 전체 프로젝트와 동료들을 볼모로 연습 게임을 하는 것일 수 있다.

나는 결코 “자체 개발하지 마시고, 게임 엔진 사서 쓰세요.” 라는 말을 하려는 것이 아니다. 자체 개발이 특정 개발 스튜디오에는 가장 적합한 전략일 수도 있다. 내가 말하고 싶은 것은 그런 신중한 판단에 의한 결정이 아니라 맹목적인 기준으로 결정되는 것들이 위험하다는 것이다. 그리고 기술 창업을 하는 경우 그런 기존에 굳어져 버린 인식과 싸워야 하는 상황이 발생할 수 있다는 것도 기억해야 한다.



■ “그럼 당신이 만들고 있는 엔진은 시장에서 원하는 바로 그것인가요?”


이 질문에 답을 하기 위해서는 개념 선점의 중요성에 대해서 먼저 말을 할 필요가 있을 듯하다. 내가 2011년에 미국에서 잘 살다가 한국으로 건너와서 프로젝트를 시작할 때 하고 싶었던 것은 단순히 “게임 엔진” 이라는 제한된 영역이 아니었다. 나는 이전에 내가 게임 개발하고 운영할 때와 10여 년이 넘게 지났는데도 방법론에 있어서 별로 달라진 것이 없다는 점에 충격을 받았고, 그런 것들을 많은 대중이 쓸 수 있게 기술 상품화하고 싶다는 비전이 있었다. 그 당시에 나는 이것을 “게임 클라우드” 라는 표현을 썼다.

하지만 게임 클라우드라는 개념은 다른 곳들에서도 비슷한 용어를 다른 의미로 쓰기 시작했다. 가장 대표적으로는 NVIDIA에서는 그래픽 렌더링 팜(rendering farm)과 유사한 의미로 그 단어를 썼다. 클라이언트에서 게임 그래픽을 렌더링하는 것이 아니라 클라우드에서 그걸 렌더링해주고 클라이언트는 그걸 그냥 보여주기만 한다는 개념이었다.



▲ NVIDIA 가 그리던 게임 클라우드 (출처: http://venturebeat.com/2012/05/15/nvidia-tailors-its-graphics-chip-for-cloud-based-gaming/)

그러나 그렇게 개념을 선점당하자 이제 게임 클라우드라는 표현은 쓸 수 없게 되고, 그런 이름으로 상품을 만드는 것은 무모한 일이 되고 말았다.

그리고 나는 비슷한 개념 선점 상황이 게임 서버 엔진에서도 이루어졌다고 생각한다. 모바일 게임 초기에는 비동기 게임들이 많았고, 그 게임들이 서버 측에 원하던 기능들은 그다지 복잡하지 않았다. 그리고 그런 기능들을 서비스 형태로 제공하기 시작하면서 Game Back-end-as-a-Service (GBaaS) 업체들이 많이 생겨나기 시작했다. 그 뒤로 게임에서“server technology” 라는 단어는 거의 GBaaS 를 연상시켰다. 이는 아이펀 엔진처럼 설치형 솔루션과는 다른 개념이다. 개념을 먼저 선점하는 쪽은 굳이 그 개념을 설명하지 않아도 되지만, 그렇지 못한 쪽에서는 그게 무엇을 의미하는지부터 설명을 시작해야 함을 뼈저리게 느꼈다.

기술 창업에 있어서 조직의 스피드가 중요하다고 말을 하는데, 나는 이 말이 개념의 선점과 무관하다고 생각하지 않는다. 더 빨리 움직여 개념을 선점하는 것이 무엇보다 중요하기 때문이다. 그리고 기술 산업은 본질적으로 국내 영업만으로는 살아남기 힘들다. 그 때문에 글로벌 영업을 위해서는 개념의 선점을 글로벌하게 이룰 수 있어야 한다. 바로 언어 능력이 그만큼 중요하다는 것을 의미한다.



■ 보다 넓은 관점에서의 경쟁자 파악. 그리고 개념 선점의 중요성. 그러기 위한 영어의 중요성

정리하자면 내가 게임 엔진 사업을 하면서 얻은, 공유하고 싶은 경험은 기술 사업에 있어서는 경쟁자를 비기술 솔루션까지 확대할 필요가 있다는 것과, 그리고 그 기술에 관련된 개념 선점이 무엇보다 중요하다는 것이다.

그리고 이는 우리 같은 비영어권에서는 한계가 있을 수밖에 없으니 영어 공부를 열심히 해야 한다는 점이다. 내 나이가 이제 마흔인데 나는 내가 죽을때까지 비영어권이라는 핸디캡은 벗어나기 힘들 거라는 생각이 든다. 모쪼록 이 글이 기술 창업을 고려하는 분들에게 조금이라도 도움이 되었으면 좋겠다.

댓글

새로고침
새로고침

기사 목록

1 2 3 4 5