2022.01.03 The Originality

The Originality | Front-end Developer, Purple Platform, 김현근

게임 안에는 새로운 세상이 있습니다. 우리는 그곳에서 새로운 것들을 경험하고 현실에선 결코 느낄 수 없는 깊은 감동을 얻으며 성장하기도 합니다.

색다른 즐거움은 저절로 만들어지지 않습니다. 다양한 사람들의 각기 다른 경험과 열정이 한곳에 모이고 새로운 잠재력이 발휘될 때 만들어집니다. 하나의 게임을 위해 모인 사람들, 그들 각각의 역량과 퀄리티를 향한 열정이 새로운 게임을 빚어냅니다.

다양한 경험의 조각을 모아 또 하나의 세계를 완성합니다.

서로 다른 탁월함 < The ORIGINALITY >


NC_Originality_khg_KV

“처음 개발을 할 땐 맨땅에 헤딩했다. 실용음악 전공자에게 개발이 쉬울 리 없다. 그래도 내가 구현한 것이 화면에 보인다는 사실이 재미있어 어려워도 포기하지 않았다. 도전이 결국 현재를 만든다. 실패는 면역과 내성을 부여해 다시 도전하고 극복하는 힘으로 환원된다.”

Front-end Developer, Purple Platform, 김현근

Front-end Development
‘퍼플’의 웹 기반 클라이언트 개발을 위한 프로그래밍을 맡고 있다. 퍼플은 엔씨의 게임을 시간과 장소에 구애받지 않고 모바일과 PC에서 동일하게 즐길 수 있는 멀티 플랫폼이다. 퍼플 플랫폼 기술 부문은 웹클라이언트, 모바일클라이언트, 라이브클라이언트, 서버, 미디어기술팀으로 이루어져 있다.

백 엔드(Back-end) 개발자가 웹 개발에 필요한 데이터베이스를 조율해 데이터를 넘기면, 프론트 엔드(Front-end) 개발자는 그 데이터를 받아 실제 플레이어가 체험할 화면을 설계한 후 구현한다. 내가 속한 퍼플 웹클라이언트팀은 퍼플 웹 기반 클라이언트의 프론트 엔드 개발을 맡는다.

스마트폰과 PC 어디서나 플레이, 퍼플
퍼플은 게임 플레이어들을 위한 텍스트 채팅, 보이스 채팅, 게시판 커뮤니티 등 기본적인 기능은 물론 퍼플만의 전용 기능들도 내장하고 있다. 이를테면 획득한 아이템이나 보스 타임을 관리하는 ‘보스 타이머’, 게임을 스트리밍으로 플레이할 수 있는 ‘퍼플온’을 비롯해 ‘퍼플 라이브’, ‘퍼플 리워드’ 등 엔씨의 게임을 즐기는 데 특화된 기능들을 차례로 서비스하고 있다. 그중 내가 주로 담당하는 퍼플의 채팅은 엔씨의 개발 지식 공유 컨퍼런스 NCDP(NCSOFT Developers Party), 사내 타운홀 같은 사내 서비스에서 시작해 점점 고도화되어 브라우저의 대용량 로컬 데이터베이스를 활용하고 있다. 실시간 게임채팅 연동도 처리하고 있어 퍼플만의 고도화한 기술이라고 할 수 있다.

퍼플의 최초 구조부터 만드는 데 참여했기에 나에게 각별한 플랫폼이다. 런칭 이후 2년 정도 지나 사용자가 많아지고 안정적으로 서비스되고 있으니 보람을 느낀다.

실용음악에서 프로그래밍으로
학창시절 실용음악을 전공했다. 음악을 너무도 좋아했고 열정을 다했다. 하지만 성대결절 등 예기치 못한 개인적 상황이 생겨서 음악을 계속할 수 없게 되었다.

이후 실용음악학원 매니저부터 기업 인사과까지 다양한 길을 거쳤다. 내가 더 즐겁게 잘할 수 있는 일이 무엇일지 계속 고민했다. 그러다 어플리케이션을 직접 개발해보고 싶어서 프로그래밍을 처음으로 시작했다. 내가 만든 어플리케이션이 사람들에게 즐거움이나 편의를 제공하는 것이 굉장히 흥미로웠다.

전공자가 아니다 보니 단단한 기초와 나만의 경쟁력이 있어야 했다. 퍼블리싱(UI&UX) 과정, 프론트 엔드 과정, 서버 과정 등 전반적인 서비스에 필요한 과정을 모두 수료하고 관련 자격증을 취득했다. 중간에 컴퓨터공학과로 편입한 후 졸업하고 경쟁력을 키우기 위해 꾸준히 노력했다. 여러 회사에서 개발 경력을 쌓았고 팀 혹은 파트의 리더 업무도 맡았다. 이러한 경험과 기회들이 쌓여 엔씨까지 오게 되었다.

NC_Originality_khg_01

끈질긴 노력으로 재능을 발굴하다

일단 실행해본다
음악을 할 때 재능이 특출하기보단 노력형이었다. 개발을 시작할 때도 그랬다. 늘 맨땅에 헤딩했다. 비전공자에게 개발이 쉬울 리 없다. 하지만 내가 구현한 것이 화면으로 보이니 너무 재미있고 뿌듯해 아무리 어려워도 포기하지 않았다.

계속 노력하다 보니 실력이 점점 늘었다. 도전이 결국 현재를 만든다. 실패는 현재 하는 일에 면역과 내성을 부여해 다시 도전하고 극복하는 힘으로 환원된다.

그렇기에 일단 도전하고 실행해봐야 한다. 성공하든 실패하든 그 과정에서 배우는 것이 있다. 이전에 성공하고 실패한 경험이 새로운 도전을 가능케 한다는 점을 늘 염두에 둔다.

다양한 경험은 신뢰할 수 있는 결과로
게임 회사에 오기 전 전자상거래, B2B(기업 간 전자상거래), O2O(온라인/오프라인 통합 서비스), ERP(기업 내 통합정보시스템 구축), 금융, 광고, 에듀테크, 블록체인 등 다양한 분야의 서비스를 경험했다. 이런 경험들은 더 좋은 콘텐츠를 개발하는 과정에서 숙련된 기술은 물론 다양한 관점을 갖게 해주었다.

또한 여러 상황을 동시에 고려하며 보다 신뢰할 수 있는 결과를 만들어내는 데 도움이 되었다. 문제가 생겼을 때 빠르게 대처하는 능력은 다양한 경험에서 우러나온다.

여러 분야의 중첩이 차별화를 만든다
언어든 패러다임이든 아직 경험해보지 못한 다양한 것에 도전한다. 겉만 보는 게 아니라 제대로 습득하려 노력한다.

한 분야를 깊이 공부하다 보면 그 분야의 한 면뿐 아니라 여러 면을 파악하게 된다. 예를 들면 영어의 문법 구조와 프로그래밍의 언어 구조에 비슷한 결이 있음을 알 수 있다. 하나의 세계에 완전히 빠져보면 다른 분야와 중첩되는 면들을 발견하기 쉽다. 중첩이 많아질수록 어떤 새로운 분야에서도 남들보다 넓게 바라볼 수 있다.

NC_Originality_khg_02

주위를 둘러보면 답이 보인다

새로움은 모방에서 태동한다
음악을 하면서 배운 것 중 하나는 새로운 발상은 모방에서 태동한다는 사실이다. 레퍼런스를 찾고 이를 따라 하며 차츰 내 것으로 만들어간다. 그 이후 온전한 나만의 스타일이 무엇인지 알게 된다. 그 과정을 통해 비로소 새로운 것이 나온다.

개발자로서 내 레퍼런스 중 하나는 팀원들이다. 한 명 한 명마다 강점과 배울 점이 다르다. 다른 사람들의 강점을 통해 배우고 그걸 나만의 스타일로 적용한다면 새로운 결과를 만들어낼 수 있다.

자유로운 분위기에서 최선의 성과를
팀 내에서도 서로의 역량과 경험을 인정하기 때문에 의견을 내고 수용하는 데 거리낌이 없다. 각자의 생각을 자유롭게 공유하면서 더 좋은 아이디어를 채택하고 있다.

일정 수립부터 계획, 구현, 테스팅, 완료까지 주도적으로 자유롭게 일할 땐 능동적인 자세는 기본이고 책임감도 뒤따른다. 팀 모두가 이런 자세와 책임감을 가지고 같은 방향을 바라볼 때 최선의 성과가 나온다.

안정성과 미래 개선의 밸런스
프로그래머의 목표는 결국 사용자에게 편의를 제공하는 것이다. 사용자의 입장에서 경험을 고려하는 것이 무엇보다 중요하다. 기술적 역량은 기본이기에 결국 사용자 친화적인 UI(user interface)와 UX(user experience)에 늘 집중한다.

현재의 안정성을 유지하면서 동시에 더 나은 방향으로 개선할 점들을 항상 고민한다. 업무 외적으로도 기술 트렌드를 계속해서 리서치하며 왜 이것이 새로운 트렌드로 떠올랐는지 이해하려 노력한다.

NC_Originality_khg_03
경력보단 실력으로 인정받는 개발자
프로그래밍을 할 때 매번 같은 기술만 사용하면 발전할 수 없다. 변화는 결국 진화나 마찬가지다. 나 역시 여러 기술을 접하면서 각각의 장단점을 알게 되었다. 이에 따라 입맛에 맞게 기술을 선별하는 눈을 가질 수 있다.

지금까지 그랬듯 앞으로도 경력보다 실력으로 인정받는 개발자가 되고 싶다. 나아가 더 많은 사람에게 게임의 즐거움을 전하는 플랫폼으로 퍼플을 발전시키고 싶다. 보다 특별한 방식으로 플레이어들과 게임을 연결하는 것이 나의 목표다.

* 본 인터뷰에서 언급되는 내용은 인터뷰 당사자의 개인적 견해이며, NCSOFT의 공식 입장이 아님을 밝힙니다.

TOP