우리 사전에 버그는 없다! 집요하게, 세심하게

🎤 우리 사전에 버그는 없다! 집요하게, 세심하게


데스크 위에 휴대전화 여섯 대가 줄지어 놓여집니다. 기기는 갤럭시와 아이폰, 구형과 신형을 넘나드는데요. 프로그램을 연결하자 기기 화면이 바삐 돌아갑니다. 검수 준비가 완료됐다는 신호죠. 오늘의 테스트 첫 단계는 ‘설정한지 6개월 이상된 비밀번호로 로그인하기’입니다. 아이디와 비밀번호를 입력하고 나면, 반드시 ‘비밀번호를 변경해주세요’라는 모달뷰가 나와야 하죠. 만약 요청 화면이 뜨지 않는다면? 오류 상황이 어떻게 발생했는지, 무엇을 개선해야 하는지 상세히 기록합니다.

기능이 잘 작동되는 것, 이 단순한 액션을 유지하기 위해 적게는 수십 개, 많게는 수백 개의 테스트 시뮬레이션을 수행하는 팀이 있습니다. 리멤버의 서비스 품질을 관리하는 수문장이기도 하죠. 바로 QA(Quality Assurance) 팀인데요.

좋은 서비스는 언제나 한결같습니다. 그래서일까요. 오늘도 내일도 팀의 미션은 오직 완성도 높은 리멤버를 선보이는 일이라는데요. QA팀이 말하는 완성도, 리멤버에는 어떤 의미일까요?


<목차>

Chapter 1. QA, 서비스 완성도를 높이는 파이널 터치
Chapter 2. 문제 해결법, 결국 내부에 있다
Chapter 3. 팀워크가 전부다


Chapter 1. QA, 서비스의 완성도를 높이는 파이널 터치

▲ 리멤버 QA팀. 사진 왼쪽부터 박한샘, 곽수민, 고강호, 양희찬

Q. 데스크를 보고 깜짝 놀랐어요. 온갖 종류의 휴대전화가 잔뜩 있더라고요. 여러분은 어떤 일을 하시나요?

곽수민: QA팀은 명함첩, 경력직 스카웃 서비스, 커뮤니티, 비즈니스 선물하기 등 리멤버 전 서비스가 최상의 상태로 배포되도록 기능을 검수하고, UI/UX 품질을 제고하는 팀입니다. 다양한 기법으로 사용자에게 일어날 수 있는 사례를 발굴하고 연구하는 팀이죠.

QA는 ‘기획안’에서 시작됩니다. 서비스의 목적과 세부 기능들을 파악해 사용자가 경험할 수 있는 수백 개의 행동 시나리오를 구성하는데요. 이 시나리오를 바탕으로 기획자가 의도한 대로 동선이 흘러가는지 확인하고 버그를 찾아냅니다. 서비스를 배포한 후에는 지속적인 모니터링을 하는데요. 오류를 일으키는 문제를 찾아내 개선 사항이 제대로 적용되었는지도 함께 검수합니다.

“서비스의 안정은 공급자에게도 중요한 문제예요.
버그나 오류로 서비스가 불안정하면
추가 리소스가 필요하고
리소스 투입은 곧 비용 지출로 이어지니까요.
안전한 품질 관리로 매출을 지키는 게 QA의 일입니다.”

믿고 쓰는 서비스의 비결,
사용자 흔적에 답이 있다

Q. QA팀은 대중에게 리멤버를 선보일 최적의 순간을 결정하는 조직입니다. 검수 과정에서 가장 중요하게 보는 것은 무엇인가요?

고강호: QA의 본바탕은 ‘제품 안정성’에 있습니다. 로그인하는 순간부터 종료할 때까지 웹과 앱 어느 경로로든 ‘리멤버는 믿고 쓸 수 있다’는 인식을 심어드리고 싶어요. 로그인 지연으로 소요된 1초, 찾기 어려운 버튼 등 작은 불편함이 불만족으로 바뀌는 건 한순간이잖아요. 사소한 검수라도 놓치면 사용자 리텐션은 떨어지고, 서비스 신뢰도는 무너져요. 그럼 회사의 매출도 줄어들죠.

답은 늘 사용자에게 있습니다. 그래서 사용자의 행동 로그를 분석해 불편한 점은 없는지 꼭 확인해요. 서비스 기능의 가치를 검증하는 데이터가 문제없이 수집되는지, 수집을 위한 장치가 코드 수정 등으로 의도치 않은 사이드 이펙트(Side-effect)를 유발하는지 검수하는 것도 중요하고요. 이렇게 수집한 로그는 다음 아이템을 선정하거나 개선점을 도출할 때 핵심 자원이 됩니다.

기승전 리소스 최적화,
과거·현재 데이터 동원해 균형 잡기

Q. 서비스 오류를 감지하는 역할로서 어떤 팀보다도 서비스에 객관적이어야 할 것 같아요. 동시에 내부자로서 개발과 운영 리소스를 고려해야 하기도 합니다. 두 입장의 균형을 어떻게 맞추나요?

곽수민: 어떤 일이든 기준점은 ‘리소스 최적화’에 있습니다. 아무리 배포 일정이 빠듯해도 사용자에게 불편함을 줄 요인을 처리하지 못하면 서비스 안정성이 침해되고, 긴급 배포와 같은 추가 작업이 생겨 자원 손실이 발생하죠. 그럴 때일수록 재현 과정이 명확하지 않거나, 예외적으로 발생하는 엣지 케이스를 집요하게 파고듭니다. ‘사용자가 불편할 수 있을 만한 문제인가?’ 의심해 보면서요. 검증의 범위는 과거부터 현재까지 모두 포함됩니다. 이전에 발견됐던 문제와 현 사용자들의 요구 사항을 통해 문제점을 파악하죠.

동시에 내부자 관점에서 제품 조직의 일정, 담당 개발자의 리소스 여부, 버그 발생률, 모니터링 등을 통해 배포 여부를 조율합니다. 이렇게 여러 데이터를 기반으로 태스크의 우선순위를 산정하고, 양측이 충분히 이해할 수 있는 선에서 일정을 조율하고 문제를 원활하게 해결할 방법들을 찾아가고 있습니다.

Chapter 2. 문제 해결법, 결국 내부에 있다 

0원으로 개선한 업무 프로세스,
타 부서 문제까지 스마트하게 해결

Q. 올해 QA팀의 가장 큰 화두는 ‘업무 효율성’이라고 들었어요. 업무 효율성이 중요해진 배경과 어떤 것들을 시도했는지 궁금합니다.

양희찬: QA에서 ‘효율성’은 최우선 과제예요. 사용자와 약속한 배포 일정을 지켜야 하기 때문인데요. 검수해야 할 서비스는 많고 리소스는 늘 부족합니다. 하지만 검수를 안 할 순 없죠. 저희 팀은 간절한 마음으로 업무 프로세스를 효율화할 방안을 찾고 있어요.

일례로, 개발자를 거쳐 데이터를 생성해야 했던 과정을 없애고, 필요한 데이터 값을 검수 환경에 맞춰 직접 세팅하는 방법을 모색했는데요. 놀랍게도 해답은 아주 가까이에 있었어요. 바로, 서버 조직이 쓰는 API였죠. 내부 자원이라 비용도 들지 않았어요. 실제로 API를 적용해 복잡하거나 방대한 데이터를 더욱 빨리 세팅하게 되면서 업무 효율성을 높일 수 있었습니다.

이 방법으로 타 부서 문제까지 해결하기도 했어요. 사업실에서 2,000개가량의 테스트용 계정이 필요했는데요. 휴대전화 번호 인증을 받고, 내부 승인을 거치는 등 생성 과정이 복잡해 손을 못대고 있었더라고요. 저희가 해결할 수 있겠다 싶었죠. API를 활용해 이틀 만에 2,000개 계정을 뚝딱 만들었습니다. 자동화할 수 있어 업무 중간마다 잘 생성되는지 확인하기만 하면 됐죠. 적은 자원으로 큰 도움을 드릴 수 있어 뿌듯했습니다.

예상치 못한 돌발 상황
촘촘한 시나리오로 대비하기

Q. 리멤버가 좋은 서비스로 자리 잡을 수 있었던 건 만족도 높은 서비스 품질 덕분이었습니다. 그 뒤에는 QA팀의 노고가 있었을 텐데요. 가장 기억에 남는 프로젝트가 있다면 무엇인가요?

박한샘: QA팀이 성장하는 데에 일조했던 ‘리멤버 블랙’이 가장 기억에 남아요. 작년 12월 중순부터 시작해 올해 1월 초에 마무리한 프로젝트인데요. 짧은 시간 내에 정확히 검수해 신규 서비스가 출시될 수 있도록 모든 기술을 총동원 했었죠. 팀원 모두가 2주간 회사에서 먹고 자고 했을 정도로요.

당시 상황은 정말 긴박했습니다. 평균적으로 발견되는 버그의 개수를 넘긴 상황이었거든요. 이때 꼼꼼히 준비해 둔 유저 테스트가 신의 한 수였어요. 기획안에 담긴 기능별 요구 사항과 디자인을 고려해 300개 이상의 테스트를 짰습니다. 모바일 웹, 인앱 웹뷰, 사파리와 크롬 등의 여러 인터넷 환경 등 다채로운 환경에서 시뮬레이션했고요. 검수에 필요한 데이터를 유저 케이스별로 미리 준비하고, 시나리오를 촘촘히 설계한 덕분에 여러 엣지 케이스를 미리 방지할 수 있었습니다.

절실했던 팀워크,
1인분 이상의 몫을 해내자는 마음으로

특히 B2B와 B2C 사용자 모두의 케이스 검증이 필요한 큰 프로젝트였기 때문에 팀원들의 강력한 오너십이 발휘되어야 했는데요. 감사하게도, 모두가 1인분 이상의 몫을 해주었기 때문에 리멤버 블랙이 무사히 출시될 수 있었죠. 팀 차원에서는 프로젝트 규모와 기간 대비, 가장 많은 양의 버그를 검출해 역대 최고의 성과를 냈던 값진 경험이었습니다.

Q. 서비스 불량이 발생하면 사용자에게 불편함을 주고, 서비스 전체의 신뢰도에 영향을 주는 만큼 긴장의 끈을 놓을 수 없을 것 같은데요. 가장 어려웠던 프로젝트는 무엇이었나요?

고강호: 아무래도 신규 서비스 론칭할 때가 가장 긴장되고 정신없는 것 같아요. 올해 7월에 출시한 리멤버 비즈니스 선물하기 프로젝트가 생각나는데요. 특히 이 프로젝트는 외부 개발사와 함께 진행했던 터라 합을 맞춰가는 과정이 관건이었어요. 서로의 업무 툴도, 커뮤니케이션 방식도 달라 업무를 진행하기 쉽지 않았죠. 또 커머스 특성상 결제나 사용자 로직 등 까다로운 검수 조건이 많아 출시 직전까지 엣지 케이스가 발생했고요.

상황은 달라져도
검증의 본질은 변함없다

하지만 급할수록 돌아가는 길을 택했습니다. 검수의 디테일을 높이는 것, 저희는 QA 본질에 더욱 집중했어요. 사용자의 예상 행동에 맞춰 발생할 이슈를 샅샅이 찾았습니다. 페이지 하단에 작게 표기된 이용약관이나 개인정보보호법과 같이 사용자조차 가볍게 지나칠 수 있는 요소들까지요. 저희 힘만으로 발견하기 어려운 변수들은 동료들의 제보를 통해 해결하기도 했고요.

무엇보다 외부 업체와의 원활한 협력을 위해 불필요한 소통 비용이 발생하지 않도록 주의를 기울였습니다. 하나의 이슈를 전달할 때도 안드로이드, iOS, 웹 등 여러 환경에서 어떻게 일어나는지 최대한 자세히 정보를 모아 소통 한 번으로 끝내려고 했어요. 낯선 작업 환경이었지만, QA의 본질과 명확한 소통에 집중한 덕분에 선물하기 서비스를 무사히 론칭할 수 있었습니다.

바람직한 QA의 형태
시선은 평행선, 마음은 일직선

Q. 대부분의 소통이 문제를 납득시키는 설득 과정이네요. 여러 제품 부서를 만나 문제를 알리고, 어떻게 해결할지 설득하기가 쉽지 않을 것 같은데요. 소통 노하우가 있나요?

곽수민: 어떤 문제를 문제라고 정확히 인식해야 할 때 가장 필요한 건 ‘객관성’입니다. 서비스를 냉정하게 파악하는 거죠. 지난 히스토리와 레퍼런스를 참조해 객관화하려고 노력해요. 이후 클라이언트에서 발생한 문제인지, 서버의 문제인지 세부적으로 파악해 개발자가 추적하기 쉽도록 최대한 정확하고 많은 정보를 모아, 문제 해결에 드는 비용을 줄이려고 합니다.

박한샘: 서비스를 바라보는 시선은 한 걸음 뒤에 있어도, 제품을 향한 마음은 제품을 만드는 동료들과 같은 선상에 있어야 해요. 제품과 제품을 만드는 사람, 제품을 만드는 과정을 정확히 알고 있어야 적시에 적합한 QA를 할 수 있죠. 그래서 저는 어떤 프로젝트든 킥오프 미팅에 적극 참여하고 있어요. 개발 초기 단계부터 목표가 무엇인지, QA 업무에서 요구되는 점이 무엇인지를 정확하게 이해하고 있을 때, 큰 어려움 없이 소통이 잘 되더라고요.

Chapter 3. 팀워크가 전부다

활짝 열려 있는 새로운 시도 
우리이기에 가능한 도전

Q. 서비스 품질을 유지하기 위해 밤낮으로 검수의 불을 켜는 QA팀. 고단함의 연속일 것 같아요. 그럼에도 리멤버와 함께하는 원동력은 무엇인가요?

곽수민: 리멤버에서는 다양한 방법론을 가지고 마음껏 도전해 볼 수 있어요. 새롭게 도입하고 싶은 기술이나 툴이 있다면 언제든 다 같이 달라붙어 실험해 보고, 검수 프로세스에 적용해 볼 수 있죠. 지금껏 저희 팀은 빠른 실행력으로 직접 부딪혀 가며 성장해 왔습니다. 앞으로도 끊임없는 도전 정신과 단단한 팀워크로 새로운 기술에 도전할 생각입니다.

고강호: 일에 대한 동료들의 열정과 책임감이 큰 원동력이 됩니다. 일할 때 허투루 하면 안 되겠다는 자극도 되고요. 개인의 성장은 물론 주변 동료들과 회사에도 긍정적인 영향력을 미칠 수 있는 사람이 되고 싶어요.

 

“누구나 어렵게 일하고 싶지 않잖아요.
저희 팀원들은 서로의 고충을 적극적으로 나누려고 해요.
그 진심 덕분에 고된 순간을 지나올 수 있었습니다.”

양희찬: 일의 원동력은 팀에서 가장 강력하게 나오는 것 같아요. 긍정적인 에너지를 함께 나누며 어떠한 힘든 일도 극복할 수 있었기에 여기까지 올 수 있었습니다. 지금껏 그랬듯 서로의 원동력이 되어 새로운 시도를 하는 동료를 적극 응원해 주고, 더 나은 길로 나아가도록 이끌어 주는 일원이 되고 싶습니다.

박한샘: ‘시도는 다양하게, 힘들 땐 동료와 함께’, 일할 때 이것만큼 좋은 환경이 있을까요? 리멤버에 있으면서 다양한 도전을 해봤고, 그때마다 한 뼘씩 성장할 수 있었어요. 과정은 험난했지만 손에 쥐어지는 결과를 볼 때마다 뿌듯했고요. 무엇보다 이 뿌듯함을 함께 누릴 수 있는 동료가 있었기에 지금까지 잘 지나올 수 있었습니다.

단조롭지만 분명한 목표
우리를 위한 일터 만들기

Q. 마지막으로 QA팀의 ‘다음’이 궁금합니다. 어떤 모습의 팀으로 만들어 가고 싶으신가요?

양희찬: QA팀의 핵심 과제는 업무 효율성인데요. 앞으로도 검수를 위한 테크닉이나 툴 외에도 효율적인 업무 환경을 갖출 수 있는 기술을 적극 도입할 예정입니다. 최근에는 ‘테스트 자동화’에 집중하고 있어요. 휴대전화에 특정 행동을 자동화할 수 있는 검수 툴인 Appium 등을 활용해 테스트 속도를 높였죠. 이 외에도 테스트 시나리오를 고도화할 다른 방안을 모색하고 있습니다.

곽수민: 희 팀은 특별한 계획도, 계산도 없습니다. 매일 완성도 높은 리멤버를 대중에게 선보이는 것이 전부죠. 그럴수록 팀워크가 매우 중요해요. 상황이 고될수록 팀을 둘러보고, 같이 나눌 수 있는 일들을 찾아야 하죠. QA팀은 서로 간의 신뢰와 책임이 있었기에 지금까지 달려올 수 있었는데요. 이제는 팀원 모두가 더 나은 업무 환경에서 일할 수 있도록 스마트한 판을 짜는 게 목표입니다. 함께 성장하는 일 문화를 만들고 같이의 힘을 믿는다면, 주저 없이 리멤버 QA팀에 지원해 주세요.

프로페셔널 네트워크 서비스, 리멤버와 함께
일하는 세상을 혁신하는 QA 매니저가 되고 싶다면? ▶ 지원하기