게임 업계에서 QA로 일을 한지 이제 15~16년이 됩니다.
연말이 되면 저는 딱히 이직할 일이 있다거나 퇴사 생각을 하고 있다던가 하는 것은 아니지만 이력서를 열어서 업데이트를 해주고 있습니다.
여러 번 그 덕으로 급하게 이력서를 준비하지 않아도 됐거든요.
올해도 이력서를 업데이트할까 하다가 내년이면 앞자리가 변한다 생각하니 지금까지의 경험과 생각을 바탕으로 그냥 글을 좀 써보는 것도 어떨까 하는 생각이 들었습니다.
- 게임 QA는 무엇인가요?
게임은 잘 아시는 그 게임이고 QA는 ‘Quality Assurance’ 줄임말입니다.
뜻대로 품질 보증을 담당하는 직업입니다.
게임 테스터라고 하면 더 쉽게 이해하실 수 있을 겁니다. 출시 직전의 게임을 테스트해서 버그를 찾아내는 게 주 업무입니다. 물론 그 외에 QA활동은 더 큰 테두리가 있지만 이건 천천히 얘기해보겠습니다.
- 그럼 게임 QA는 아무나 할 수 있나요?
이 직을 오래 하면서 종종 듣는 소리입니다.
‘게임하면서 돈 버네.’ 하는 소리와 함께 업종적으로 비하하기 좋은 지적이죠.
그런데 세상 일 다 똑같은 거 같습니다. 시작은 아무나 다 도전할 수 있죠. 그러다 일의 업무범위와 직업의 이해도가 깊어져 가면 이런 생각도 합니다.
‘아 나는 이 일이 안 맞는 거 같아.’
세상에 쉬운 일은 없습니다.
원숭이 마냥 아무 키나 눌러보면서 되는지 안 되는지만 봐도 테스트는 성립됩니다. 심지어 이런 것도 나름의 테스트 기법 중 하나입니다.
테스트에 대한 오래된 말 중에 “100% 완벽한 소프트웨어 테스트는 불가능하다.” 란 말이 있습니다.
프로그램의 복잡성은 점점 복잡해지고 있고 특히 게임은 매우 매우 그렇습니다.
결국 테스트는 효율성과의 싸움이 되어 갑니다.
MMORPG 같은 게임을 테스트한다고 생각해볼까요.
캐릭터 생성, 등록, 스테이터스 성장, 퀘스트 시스템, 대화 시스템, 각종 스크립팅, 상점 시스템, 거래 시스템, 전투 시스템, 공성전, 레이드, 맵 콘텐츠, 지형지물, 상호작용 오브젝트, 환경설정 등등 간단히 생각나는 것 만 적어봐도 이렇습니다.
저런 시스템들의 코딩과 게임의 콘텐츠(데이터)가 합쳐져서 어마어마한 볼륨의 게임이 만들어집니다.
꽤 예전 경험 중 MMORPG를 담당하는 QA조직의 인원 최고치가 20명 정도였던 걸로 기억합니다.
그 20명으로도 허덕거리며 거의 2년을 주말, 공휴일까지 집에 씻고 잠만 몇 시간 자고 오는 생활을 했었습니다.
효율성이 부족해서 그렇게 힘들게 일했냐 한다면 지금 생각해보면 분명히 그랬던 것 같습니다.
결국 효율성을 얻기 위해선 QA도 공부가 필요합니다.
코딩? 알면 좋습니다. 깊게는 아니더라도 원리 정도는 아는 게 좋습니다. 그러면 테스트 중 발견한 버그의 재현 방법을 추측하는데 도움이 됩니다. 그리고 최적의 테스트 경로를 케이스화 할 수 있습니다.
파이썬이라도 할 수 있다면 요새는 자동화 테스트에 도전해 볼 수도 있습니다.
테스트 기법들? 국내에는 STEN이라는 QA 전문 교육/인증 기관이 있습니다. 여기서 ISTQB라는 자격증 시험을 볼 수 있는데 당연히 교재가 있습니다. 해당 교제에 여러 가지 테스트 기법들이 나옵니다. 솔직하게 얘기하자면 해당 예제들이 단순 프로그램 기반으로 하기 때문에 게임 테스트에 가져와 사용하려면 역시 고민을 많이 해봐야 합니다. 단순 테스트뿐만 아니라 개발 프로세스나 QA 단계별 시나리오등 실무적인 내용도 아무것도 모르는 입장이라면 배워서 나중에 실무에서 경험하게 될 것들이 많습니다만...
최소 제가 경험해본 입장에선 게임 회사마다 QA 프로세스도 테스트 환경도 커뮤니케이션인 부분도 모두 제각각입니다. 그래서 책에 나온 대로만 하길 원하시면 괴로워지는 수가 있습니다. 교재가 답은 아니라는 점 유의하셔야 합니다.
특히 기존 소프트웨어 QA 교육은 소프트웨어의 발주자(클라이언트)가 명확한(100%는 아니지만) 기능을 요구하는 걸 전제로 하지만 게임 소프트웨어가 다른 소프트웨어 개발과 가장 다른 점은 발주자(클라이언트)가 명확하지 않다는 것입니다.
게임은 게임 유저가 자신들이 재미있어할 만 한걸 들고 오길 원하지 자기들이 정확히 어떤 게임을 원한다고 해주지 않거든요. 그러다 보니 게임 개발 현장은 언제나 대립적인 분위기가 언제 갑자기 생겨도 이상하지 않습니다.
글이 길어지네요. 한번 끊고 가겠습니다. ^^;
아무래도 개인 경험 기반으로 쓰는 글이다 보니 같은 직종인 분들에게 오해를 살 수 있는 부분도 있거나 틀린 내용이 있을 수도 있습니다. 댓글 주시면 저도 더 생각하고 고민해보는 기회가 되도록 하겠습니다.
봐주셔서 감사합니다.
네. 업무적인 얘기도 같이 풀어보도록 하겠습니다. 그런데 개인신상이 들어나는건 좀 꺼려져서 실제 프로젝트 사례까지 얘기 하긴 힘들수도 있습니다. 양해해 주세요. ^^;
반갑습니다. LQA면 로컬라이징인가요?. 해당 분야로 경험은 없지만 언제나 가장 빠듯한 일정으로 일하는 곳으로 기억하고 있습니다. 수고 많으십니다. 👍🏻
QA 에서 커뮤니케이션은 공중 줄타기 같은 영역인것 같습니다. 이걸로도 할 얘기가 한무더기는 나오죠. ㅎㅎ
생각보다 자주 발생합니다.. 패치 파일이 누락된다거나 서버 패치가 잘 안됐다거나 QA팀에서 마무리 한 뒤 뭔가 추가 빌드가 있었다던가…어떤 조건이 더 있었다던가.. 그래서 100% 완벽한 테스트는 불가능하고 프로세스가 중요하죠. 발생했다해도 나중에 반복되는 일이 없도록 예방도 해야되니까요.
시니컬함을 살리고 싶었는데 글만 요상하게 됐네요 ㅎㅎㅎ
고생 많으셨네요. QA란게 참 잘해도 남들 보기에 잘한건줄 모르고 못하면 바로 라이브에 직격이니 못나보이기 쉬운 직업이라 마음 고생이 심하죠.
새로운 자리에선 더 일 잘 풀리시길 바랍니다.
저도 이번 회사가 마지막이 아닌가 싶은 생각하면서 살고있습니다.
치킨집 차릴 만큼 돈도 못 모았는데 걱정이네요. ㅎㅎ
저도 게임회사 프로그래머로 일하면서 QA분들에게 항상 감사드립니다.
잡으라는 버그는 안잡고 자기들끼리 웃고 떠들면서 신나게 게임을 즐기고 있더라는거죠.
3D MMORPG에서 특정 스킬이 발생할 때 게임이 죽어버리는 크리티컬한 현상이 있었는데 개발사에서는 전혀 재현이 안되었죠.
제가 직접 이 버그의 발생과정을 캐다보니 VGA 드라이버의 3D관련 오류였습니다.
테스터가 특정 옵션을 켜지 않고 게임을 했던거였는데 해당 옵션을 켜지 않으면 게임이 crash 되는 상황을 개발사는 모르고 있었습니다.
물론 이 테스터도 모르고 있었구요. 그냥 죽는다고만 계속 보고를 했던거고 이 때문에 출시가 지연되고 있던 중이었습니다.
경력이 없던 테스터도 아니었건만 전혀 HW에 대한 지식이 없던거였습니다.
어떤 갭이 존재함을 깨닫고는 테스터들을 전체 재교육 했던 기억이 있습니다.
쉽고 만만해보이는데 테스트 전략 짜기가 거의 불가능에 가까운 분야가 또 게임QA지요.
아무튼 일반 SW테스트 경험을 충분히 거친 인력들을 선별해서 게임 QA에 투입해야한다는게 제 지론입니다.
이유는 아시리라 생각합니다.
"아니 뭐??? 그런 말도 안되는 상황이 생겼다고???"가 일상
특히 istqb..게임qa엔 정말 잘 안맞죠..
생각보다 회사에서 인정도 안해주고 사장부터 QA팀을 그냥 단순히 버그 잡는 팀으로 인식하는 걸 보니
자체 QA 팀이 있으면서(외주인력 X) 회사 내에서도 QA를 중요하게 생각해야 일할 맛이 나겠다는 생각이 들더라고요
언급한 회사는 그런 것 같진 않아서... 다니면서 좀 아쉬웠네요. 제가 그 팀에 속했던 적은 없지만...
퇴사한 지도 좀 됐는데 지금은 어떨지도 궁금하긴 합니다
현재 주로 하는 일은 팀 관리 및 한중 번역, 문서 작성 (보고 등)입니다. 게임 빌드 오면 게임 QA도 조금 합니다. 코딩 할 시간이 없네요
정말 공감하는 글입니다.
저는 어쩌다보니 문서 작업도 테스트도 다 혼자하고 있습니다. 그렇다고 일에 치여 있다거나 그런건 아니니 요정도 안정감으로 60까지는 했으면 좋겠네요. ㅎㅎ
그쪽에서 한숨과 감탄사 나올때마다 스트레스 받았던 기억이 나네요..
Jira 에 티켓 날라오면 심장이 두근두근하고 ㅎㅎ...;;
QA 하기 힘드니까 게임 기획을 바꿔달라던 QA분도 생각나네요.. ;;;
게임 개발에 있어 중요한 분야중 하나인데 대우는 많이 못받죠..
고생 많으십니다. ㅠ
QA하기 힘드니 기획을 바꿔달라니 QA파워가 있는 곳이나 그런 얘기 꺼내...진 못할거 같은데; 아찔하네요.