[NDC 2018] 변화하지 않는 조직은 죽는다. 효율적인 개발을 위해서는?

마이크로소프트, 블리지드, 넥슨은 어떻게 개발을 할까? 이에 대해서 개발 경험이 풍부한 박종천 넥슨 플랫폼 부본부장이 26일 NDC 2018에서 강연에 나섰다. 그는 한글과컴퓨터 개발 팀장, 미국 보스톤의 다수 벤처에서 개발실장, 블리자드 미국 얼바인 본사에서 수석개발자와 개발팀장를 역임한 바 있다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

그는 '하드코드(HARD CODE)'라는 책을 통해 MS의 사례를 분석하고, 자신의 경험을 살려 각 회사의 비교를 통해 개발 프로젝트 관리, 프로세스 개선, 조직 개편 등의 주제를 다뤘다. 그는 강연을 통해 변화하지 않은 조직은 죽을 수 밖에 없다며 변화를 강조했고, 크게 10개 분야에 걸쳐 각 회사의 개발 문화와 방식을 비교하며, 효율적인 개발을 위한 방법을 소개했다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

해당 강연은 박종천 부본부장이 책을 분석하고 본인의 직접 경험을 요약해 소개하는 것으로, 강연으로 소개된 사례가 100% 현재 회사의 운영 방식과 동일하지 않을 수 있다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

MS는 개발을 어떻게 시작할까? 당연히 개발을 시작할 때는 스케쥴을 짠다. 꼭 해야 할 일, 하면 좋을 일, 하고 싶은 일을 정리한다. 단순하게 개발자들만 존재하면 하고 싶은 일에 무게를 둘 수도 있어 이런 우선 순위를 결정하기 힘들다. 이를 도와줄 수 있는 것이 PM(프로제트 매니저)이다. MS는 PM을 두고 일의 우선 순위를 정해 프로젝트를 효율적으로 관리하고 있다.

블리자드는 개발에 관련된 베테랑들이 많아서 일정이 얼마나 걸릴 것 같다고 하면, 그 정도 기간에 결과물이 나온다. 하지만, 최근에는 시장이 빠르게 변하고 있어서 언제까지 이런 방식으로 개발을 진행할 수는 없어 PM을 도입해 목표하는 시간에 게임을 내고자 노력을 기울이고 있다고 한다.

넥슨도 마찬가지다. 당연히 PM이 있고, 프로젝트 관리를 통해 작게 빨리 만드는 식으로 개발을 진행한다. 가장 작게 동작할 수 있는 프로젝트를 만들어서 본다. 모든 필요한 것을 조금씩 완성해서 제품을 내는 것이다. 예를 들어 런처를 개선한다면 1년 동안 여러 번에 걸쳐서 개선을 하는 것이다. 그리고 1년 계획을 세워도 3개월 정도 간격을 두고 계속 리뷰도 한다. 연초에 세운 계획이 연말까지 가면 위험할 수 있기 때문이다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

그렇다면 왜 개발 기간을 지키지 못할까? 낭비되는 것이 많기 때문이다. 정치적인 문제나 의사소통의 느림, 개발의 지연, 필요하지 않은 코드나 기능의 개발 등이 대표적이다. 그리고 조직이 커지면 당연히 낭비가 많아진다. 팀이 커지면 커질수록 관리가 힘들다. 개발환경의 개선을 통해 효율을 개선해야한다. 주간 보고서를 쓰는 등 사소한 것으로 생각한 것도 굉장히 붕요한 부분이다.

박 부본부장의 경험에 따르면 블리자드는 베테랑들이 많아서 상황에 맞춰서 잘하는 사람들이 게임이 재미있을 때까지 개발을 진행해왔다고 한다. 하지만, 최근에는 과거와 달리 효율적인 프로세스 도입을 통해서 개선하고 있다.

넥슨은 3주에 한번 제품을 출시하는 방법을 쓰고 있으며, Confluence, Jira, CI/CD 등의 툴을 다 활용한다. 개발은 물론 개발 뒤에 있는 환경들까지 모두 다 신경을 쓴다. 어떤 언어를 써서 개발하느냐 등 말이다. 순수 개발 외에도 나머지 부분에 투자를 많이 해야 개발자들이 편하게 개발을 할 수 있기 때문이다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

시간을 가장 많이 낭비하는 것은 미팅(회의)이다. 이를 효율적으로 개선하기 위해서는 꼭 필요한 미팅과 아닌 미팅을 나눠야 한다. 정보를 나누기 위한 미팅은 메일 등으로 가능하며, 중요한 결정이 필요한 회의는 미리 다 준비를 해서 가야한다.

MS의 경우에는 가장 적은 사람이 참여해 적은 시간을 활용해 회의를 진행하며, 회의에 참여하지 않은 이들에게도 확실히 전파해 회의의 효율을 높인다. 블리자드는 심지어 노 미팅 데이도 존재한다. 아예 미팅이 없이 개발만 할 수 있도록 하는 것이다. 넥슨도 PM들에 권한을 많이 줘서 회의에 참여할 수 있도록해 많은 사람이 참여해야 하는 불필요한 회의를 줄인다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

개발자와 QA의 협업도 중요하다. MS는 QA가 개발자의 파트너로 중요한 이유를 세가지로 꼽는다. 첫 째는 개발자가 만든 것은 무조건 버그가 있다. 두번째는 개발자에게 출시할 수 있냐고 물어보면 무조건 출시가 가능하다고 하지만, QA의 입장에서는 다르다. QA는 버그 분석을 통해서 숫자와 수치로 보여준다. 마지막 세 번째는 QA는 고객의 입장에 초점을 두기 때문에 더 좋은 제품이 나올 수 있도록 한다.

블리자드는 게임 QA와 기술 QA가 별도로 존재한다. 재미와 기술적인 부분을 따로 검증한다. 넥슨도 개발팀에 QA를 참가 시키는 임베디드 QA를 활용 중이다. 박 부본부장은 QA도 새로운 도구가 많은 만큼 다양한 기술을 활용할 필요가 있다고 강조했다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

QA는 결국 제품의 품질로 이어진다. 그리고 품질은 단순하게 제품이나 코드만 의미하는 것이 아니라 사용자 경험까지도 모두 품질의 영역에 있다고 봐야한다. 블리자드는 품질을 높이기 위해서 게임의 재미를 높이는 것에 집중하는 경향이 크다. 넥슨은 코드 리뷰를 통해서 품질을 보고 자동화 시스템도 운영한다. 여기에 최근에는 데이터 분석도 많이 한다. 여기에 기술 부채 등을 체크해서 없애려고 노력한다. 이미 출시된 제품이라도 계속해서 분석한다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

제품의 총 책임자와 기술의 총 책임자도 따로 필요하다. 제품의 해당 분야를 끝까지 책임질 수 있는 사람이 필요한 것이다. 블리자드도 게임이 재미있어야 하는 것을 강조하지만, 최근에는 프로그램 매니저 등을 별도로 두는 등의 노력을 하고 있다. 넥슨도 데이터 분석과 기획자를 두며 등을 여기에 클라우드 기술자 등까지 모두 팀을 꾸린다. 특히, 최근에는 클라우드 기반 서비스가 중심인 만큼 클라우드 관련 책임자는 굉장히 중요하다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

그렇다면 이런 제품을 만드는 엔지니어들은 어떻게 성장할 수 있을까? MS는 엔지니어이 등급을 35단계로 나눈다. 몇 단계에 도달하면 되면 디렉터가 될 수 있도록 하는 식이다. MS는 엔지니어의 발전을 위해서 관리자와 함께 일하는 것을 강조한다. 관리자는 일을 잘할 수 있도록 돕는 것은 물론, 어떻게 성장할 수 있는지도 돕는다.

네트워킹도 중요하다. 도움을 받았으면 감사를 전하고, 도움이 필요하면 도와줄 수 있어야한다. 주변의 잘하는 사람들과 함께 해야 한다. 이러한 과정 자체가 개발자나 엔지니어의 성장으로 이어질 수 있다. 실제로 블리자는 내부에서 활발한 이동이 일어난다. 개발 팀이 신설되면 이동해서 개발하는 이가 30%에 달할 정도로 많다.

넥슨은 각 팀에 책임과 권한을 모두 준다. 각 개인이 열심히 할 수 있는 것을 찾을 수 있도록 해주며, 면담을 자주해서 어떻게 성장할 수 있는지도 조언한다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

그리고 성장을 위해서는 결국 본인이 가장 중요하다. 이를 위해서는 커뮤니케이션 중요하며, 특히, 결정을 내리기 전에 의논하는 것이 중요하다. 다른 사람과 의논하는 것 자체가 협업이 되고 발전할 수 있는 방법이라는 것이다. 여기에 자신의 시간 관리와 일과 삶의 균형 등에도 신경을 써야 한다.

블리자드는 자신이 가진 끼를 모두 방출하는 것을 강조하며, 다양한 프로그램을 마련해 교육도 많이 해준다. 넥슨은 안에서 일하는 문화를 강조해서 발전할 수 있도록 돕는다. 넥슨은 전문 코치가 엔지니어의 미래 목표와 생각을 듣고 상담하는 것도 진행한다. 여기에 엔지니어 능력을 7가지 항목으로 구분해 부족 것을 채울 수 있도록 돕는다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

관리자도 중요하다. MS는 좋은 관리자(Good Manager)와 위대한(더 뛰어난) 관리자(Great Manager)를 구분해 놨다. 관리자는 일을 잘할 수 있는 환경을 구축해주고, 모든 고용인을 존중한다. 그리고 더 뛰어난 관리자는 대화를 많이 하는 관리자다. 조직의 구성원에게 목표나 우선 순위 등에 대해서 꾸준하게 대화해 전달하는 것이 중요하다는 얘기다.

블리자드는 관리자들을 교육하는 시스템을 구축했으며, 관리자들끼리 고충을 나눌 수 있는 런치 타임 등도 마련했다. 다만 굉장히 수평적인 블리자드의 특성상 관리자의 목소리가 더 크다거나 하는 일은 적다고 한다.

넥슨은 엔지니어의 7개 평가 방식에 2가지 항목을 더 추가해 관리자의 평가한다. 관리 능력과 리더십이다. 관리 능력은 일이 잘 될 수 있도록 돕는 것이라 볼 수 있으며, 리더십은 같이 일하면서 앞에서 일을 끌어 나가는 것이다. 이 모두를 잘 하는 사람을 찾기 힘든 것이 사실이며, 이들의 발전을 위해서도 많은 조언이 이뤄진다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

그리고 개발의 최종점은 결국 조직이다. 조직도 개선 하지 않으면 결국 무너진다. MS는 소프트웨어를 하나 완성하면 팀을 모두 개편할 정도로 계속해서 변화를 이끌어 내고 있으며, 블리자드도 내부 인력 이동 등을 통해서 조직에 변화를 준다. 넥슨도 조직 내에 계속해서 작은 변화를 주면서 조직이 바뀌면서 나아갈 수 있도록 한다.

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

NDC 2018 MS, 블리자드, 넥슨 개발
강연
NDC 2018 MS, 블리자드, 넥슨 개발 강연

박 부본부장은 강연을 마치며 “조직의 변화를 끌어내기 위해서는 변화라는 말을 꺼내지 않는 것이 중요하다. 변화라는 말을 꺼내면 반발을 살 수 있기 때문으로, 천천히 변화를 만들어가야 한다. 하지만 정말 바닥부터 깊게 변화를 끌어내야 한다. 그리고 조직은 변화를 하지 않으면 죽는다. 변화를 관찰하는 것이 아니라 돕게 만드는 것이 중요하다”고 강조했다.

게임동아의 모든 콘텐츠(기사)는 Creative commons 저작자표시-비영리-변경금지 라이선스에 따라 이용할 수 있습니다.
의견은 IT동아(게임동아) 페이스북에서 덧글 또는 메신저로 남겨주세요.