자동화 테스트로 수 억 대의 디바이스 환경에서 살아남는 SDK 완성하기 - QA Engineer 인터뷰

자동화 테스트로 수 억 대의 디바이스 환경에서 살아남는 SDK 완성하기 - QA Engineer 인터뷰

Airbridge 개발팀 QA Engineer로 일한다는 것은

Soeun Choi — 최소은
디지털 마케팅 성과분석 소프트웨어 에어브릿지200개 이상의 고객사 서비스가 설치된, 1억대 이상의 디바이스로부터 하루 13억건이 넘는 다양한 마케팅 데이터를 서버로 전송하고 있습니다. 고객이 올바른 비즈니스 의사결정을 하도록 돕기 위해 웹과 앱을 연결하여 데이터를 유실 없이 수집하고, 웹・모바일・크로스 플랫폼 등 다양한 환경의 서비스에서 문제 없이 작동해야 하는 만큼 철저한 품질 검증 단계를 거쳐야 하죠.
아무리 멋진 기능이 많은 프로덕트라도, 유저가 사용할 때마다 에러가 발생한다면 과연 좋은 프로덕트라고 할 수 있을까요? 고객사 개발자와 고객사의 서비스 이용자가 에러를 마주하지 않도록, AB180 QA Engineer는 다양한 테스트를 기획하고 관리합니다. 단순 반복 업무는 최소화하고, Human Error를 줄이기 위해 자동화 테스트 환경 구축에도 힘을 쏟고 있어요.
이번 글에서는 에어브릿지 SDK 팀의 QA Engineer 홍성보님을 만나 나눈 이야기를 정리했습니다. 성보님이 AB180에서 ‘좋은 엔지니어로 성장할 수 있겠다’ 생각한 이유, 실제로 AB180에서 경험한 커리어 성장, 그리고 앞으로 함께할 동료에게 전하는 메시지까지 확인해보세요.

︎ QA 커리어를 확실하게 성장시킬 수 있는 팀, AB180

들어가며,

Q. 성보님께서 AB180을 선택하신 이유는 무엇인지 궁금해요.

AB180이 ‘QA 엔지니어 커리어를 확실하게 성장시킬 수 있는 곳이구나’라는 확신을 들게 한 데에는 크게 3가지가 있었습니다.
1.
‘에어브릿지’라는 성장하는 자사 프로덕트에 대한 QA 경험
2.
Android, iOS, Web, 크로스 플랫폼 등 다양한 환경을 다뤄볼 수 있다는 점
3.
가장 매력적으로 다가왔던 자동화 프로세스 구축 업무
AB180은 QA를 단순 테스터가 아닌, 기술적인 챌린지가 가능한 포지션으로 운영하고 있다는 점에서 ‘좋은 엔지니어로 성장할 수 있겠다’ 라는 확신이 들었어요.
특히 자동화 테스트 환경을 구축하는 부분이 매력적이었어요. 자동화 테스트는 반복 작업으로 발생하는 문제를 상당 부분 해결하고, 테스트 효율을 높일 수 있어서 앞으로 QA 엔지니어 커리어에서 더욱 중요한 키워드가 될 것이고, 제 커리어에도 중요한 경험이 되리라 생각했어요.

Q. AB180에서 재미있게 일할 수 있는 포인트는 무엇이라고 생각하세요?

앞서 이야기했듯 새로운 시도를 할 수 있는 환경이라고 생각합니다. 다양한 의견을 거리낌 없이 나누고, 좋은 아이디어로 받아들여진다면 지체 없이 시도해볼 수 있어요. AB180 팀원 모두가 더 좋은 프로덕트를 위해 일한다는 생각이 자리잡혀 있기 때문에 가능하다고 생각해요.
더불어 B2B・마케팅 도메인의 SDK QA를 담당하면서 더 넓은 시야를 가지게 되었어요. 마케팅이 필요한 모든 분야의 서비스가 에어브릿지를 사용하기 때문에 간접적으로 다양한 서비스를 경험해볼 수 있고, SDK QA는 고객사 개발자와 앱 사용자 양쪽을 모두 고려하는 안정성을 추구해야 하기 때문인데요. B2B, 마케팅, SDK라는 키워드를 다소 생소하게 여기는 분들도 계신 것 같지만 오히려 QA로서 더 폭넓은 이해도를 가질 수 있다고 생각합니다

Q. AB180이 만드는 에어브릿지, 엔지니어의 관점으로 설명해주실 수 있을까요?

에어브릿지는 마케터가 데이터를 기반으로 효과적인 의사 결정을 할 수 있도록 도와주는 서비스입니다. 퍼포먼스 마케터와 같은 마케팅 관련 직무에 계셨더라면 한 번쯤 접해보지 않으셨을까 생각합니다.
에어브릿지 서버에는 고객사 서비스로부터 하루 10억 건, 월 300억 건이 넘는 마케팅 데이터가 들어오는데요, QA 엔지니어가 속한 SDK팀에서 개발한 SDK가 각 고객사의 서비스에 설치되어 데이터를 서버로 전송합니다. 이렇게 수집된 데이터는 다양한 지표로 필터링할 수 있도록 대시보드에 구현되고, 이를 통해 고객사 마케터 분들이 마케팅에 필요한 인사이트를 얻을 수 있어요.
제가 합류한 지 1년 정도 되었는데, 그 사이에 트래픽도 빠르게 늘어났고, 에어브릿지가 설치되는 플랫폼도 다양해졌어요. 그만큼 QA 엔지니어로서 테스트 프로세스를 고도화하고, 자동화 테스트 커버리지를 높이는 등 기술적인 성장을 경험할 수 있는 프로덕트이자 팀이라고 생각합니다.

AB180 QA Engineer Career

Q. AB180 QA Engineer 포지션을 소개해주세요!

200개 이상의 서비스에 설치된 에어브릿지 SDK가 안정적으로 작동할 수 있도록 품질을 책임지고 있습니다. 여기서 ‘안정적으로 작동한다’는 것은 iOS, Android, Web 등 다양한 플랫폼 기반의 서비스에 설치된 에어브릿지 SDK가 여러 변수에도 오류 없이 데이터를 서버로 전송할 수 있다는 뜻인데요, 저는 이를 확인하는 테스트를 설계하고, 더 다양한 테스트를 진행하고 테스트 커버리지를 높이기 위한 자동화 테스트 환경을 만들고 고도화시키고 있습니다.
위에 언급했듯이 SDK는 안정적으로, 유실 없이 데이터를 수집하는 동시에 설치된 앱의 사용자 경험에도 영향을 주지 않도록 만들어져야 하기 때문에 SDK 팀과 QA 엔지니어는 안정성을 가장 중요한 가치로 여깁니다.
고객사가 에어브릿지를 사용하는 목적은 서비스의 성장입니다. 서비스에 설치된 에어브릿지가 고객사의 서비스 사용자 경험에 영향을 준다면 결국 좋지 못한 결과가 있겠죠. SDK QA 엔지니어로서 비즈니스 목표 달성에 기여할 수 있는 방법은 다각적인 궁극의(!) 안정성 추구라고 생각해요.

Q. 안정성은 일반적인 QA 엔지니어에게도 중요한 키워드일텐데, 팀 전체가 이 가치를 중요하게 여긴다니 흥미롭네요. 그렇다면 AB180에서 QA 커리어를 거치며 얻는 가장 큰 무기는 무엇이라고 생각하시나요?

QA 엔지니어로서의 보이스를 가지고 주도적으로 업무를 진행하는 경험, 그리고 자동화 테스트 환경을 직접 구축하는 경험은 정말 큰 무기가 된다고 생각합니다.
QA 업무는 명세에 따른 테스트를 Top-Down 구조로 진행하고, 반복 작업을 하게 되는 경우가 많은데요, 때문에 기획 단계에서부터 주도적으로 테스트를 진행해본 경험과 자동화 테스트 구축 관련 경험이 있는 QA Engineer는 주목받을 수밖에 없다고 생각합니다.
AB180에서는 QA 엔지니어가 주도적으로 가장 효과적인 테스트 방식에 대해 고민하고, 방법을 제안할 수 있습니다. 또 비즈니스 성장에 따라 더욱 다양해지는 플랫폼 환경에 맞춰 작업을 효율화하고, 오류를 최소화하기 위한 자동화 테스트를 직접 구축할 수 있어요.
무엇보다 AB180은 새로운 시도와 탐색에 열려 있고, 학습을 위한 지식 공유가 활발한 조직입니다. 이런 환경에서 훌륭한 엔지니어 동료들과 일하는 것이 이 모든 경험을 더 의미 있게 만들어 주는 것 같습니다.

Q. AB180에서 일하면서 가장 기억에 남는 순간이나 프로젝트는 무엇인가요?

Android 환경에서 기존에 수동 테스트(Manual 테스트)로 진행하던 약 100여개의 테스트 케이스를 자동화 환경으로 구축한 프로젝트가 가장 기억에 남습니다.
제가 합류했을 당시 Android SDK 테스트는 수동으로 진행되고 있었습니다. 대부분의 테스트 케이스를 살펴보니 자동화로 충분히 대체가 가능해 보였어요. 팀원 분들과 논의를 거쳐 Kotlin과 Appium 등을 활용하여 자동화 환경을 구축했고, 결과적으로 이전에 수동으로 테스트하던 약 100여개의 테스트 케이스를 성공적으로 자동화할 수 있었습니다.
자동화 테스트 환경을 구축을 통해 반복적인 수동 테스트 시 발생할 수 있는 Human Error를 최소화했고, 수동 테스트에 할애할 시간을 업무에 활용할 수 있게 되었어요. 자연스레 기획 미팅 참여, 다른 테스트 케이스 구성 등 SDK의 품질을 높이는 다른 활동을 할 수 있었습니다.
더 자세한 안드로이드 자동화 테스트 환경 구축기는 아래 기술 블로그 포스트에 정리해 두었습니다

Q. AB180 QA 엔지니어로서 꼭 이루고 싶은 것이 있다면 무엇인가요?

지금 에어브릿지는 200개 이상의 서비스가 설치된, 약 1억대 가량의 디바이스에서 데이터를 전송하고 있는데요, 두 배, 세 배 다양한 서비스와 환경에서도 안정적으로 작동하는 프로덕트를 만드는 것이 목표입니다.
테스트 자동화 측면에서는 Android SDK에서 경험한 내용을 토대로 iOS SDK 또한 약 80여개의 테스트 케이스에 대한 자동화 환경을 구축했습니다. 앞으로 Web SDK, Deeplink와 관련된 약 300여가지의 테스트 케이스에 대한 자동화 테스트까지도 구축할 예정이에요. 또한 이렇게 구성된 자동화 테스트 환경에 대한 신뢰성 확보를 위한 다양한 시도를 하려고 합니다.
QA 업무 프로세스 고도화를 위한 시도도 해 보고 싶어요. 예를 들어 신규 기능 개발 전 새로운 미팅을 구성하여 테스트 시나리오를 공유하고, 공유된 시나리오에 대해 개발자, PM 분들의 의견을 수합하거나 기존의 테스트 케이스를 다른 방식으로 관리하는 것을 시도해보는 것처럼요.
지금도 신규 기능 기획 단계부터 참여해서 테스트를 설계하고 있지만, 좀더 생산적인 방식으로 QA 업무가 진행될 수 있도록 하는 방법을 찾고 싶어요.
외부적으로는 QA 엔지니어에 대한 인식을 개선하고 싶습니다. 아직까지 QA 엔지니어라고 하면 SW 테스터의 업무와 동일시하거나, 혹은 정확히 어떤 업무를 하는 직무인지 혼동하시는 분들이 많아요. AB180에서 기술 블로그 활동 등을 통해 QA 엔지니어는 팀에서 어떤 역할을 하는지, 또 어떤 기술을 가지고 있어야 하는지 등을 알리고, QA 엔지니어의 전문성과 역할에 대한 인식을 더 명확히 하고 싶은 마음입니다.

Join Our Team!

Q. AB180을 선택해야 하는 이유, 무엇이 있을까요?

자유로운 업무 환경개인 역량 성장의 기회가 열려있다는 점입니다.
자유로운 업무 환경의 대표적인 예시로 자율 출퇴근제가 있는데요, 본인의 업무 스타일 혹은 컨디션에 맞춰 출퇴근 시간을 조정하고 이를 통해 업무 효율 또한 최대로 낼 수 있다고 생각합니다.
개인 역량 성장의 기회의 경우 제한 없는 도서 구매 지원, 강의 구매, 업무에 필요한 소프트웨어(툴) 등을 아낌없이 지원해주고 있어, 성장하는 스스로의 모습을 쉽게 발견할 수 있습니다.
새로운 소프트웨어를 도입하고자 하는 경우, 실제로 사용해보신 팀원 분들이 “저 그거 사용해 봤는데 정말 좋아요!”, “그것보단 이것도 좋던데 어떠세요?” 등 피드백을 적극적으로 주셔서 의사결정하는 데에도 많은 도움을 받고 있습니다. 이전에 원격으로 구성했던 테스트 디바이스 팜을 로컬 환경으로 구성할 때, 흔쾌히 테스트용 기기를 지원해주시고, 보안팀에서 필요한 지원 사항은 없는지 미리 물어봐주시는 등 적극적으로 도움을 받은 기억이 있어요.

Q. 어떤 QA Engineer가 AB180에서 즐겁게 일할 수 있을까요?

높은 책임감, 그리고 전문성을 가지고 일하시는 분이라면 저희 팀에서 즐거움을 찾으실 수 있으리라 생각합니다.
QA 엔지니어를 기술 직군 중에서도 비교적 진입 장벽이 낮은 분야라고 생각하시는 분들이 많은 것 같습니다. 그러나 QA 엔지니어는 제품이 고객에게 전달되기 전 마지막 단계, 혹은 제품의 전반적인 개발 프로세스에 영향을 끼치는 직무로 높은 책임감과 전문성을 가지고 있어야 한다고 생각합니다.
또한 현재 구성 중인 자동화 환경의 경우 Kotlin과 Appium 이외에 Python, CI/CD 연동 등 다양한 환경을 활용하고 있다 보니 프로그래밍과 자동화에 관심이 많은 분이시라면 더욱 즐겁게 일하실 수 있을 거예요.

Q. 성보님이 지원자였을 당시 채용을 경험하며 느꼈던 점이 궁금합니다.

당시 채용은 서류 → 과제 → 1차 인터뷰 → 2차 인터뷰의 프로세스로 진행했는데, 1차 인터뷰에서 다른 채용 절차와의 차별점을 느꼈고, ‘이 회사 꼭 가고 싶다’ 라는 생각이 들었습니다.
1차 인터뷰 당시에 인터뷰어 분께서 사전에 제출한 과제 파일을 함께 보면서 왜 이렇게 생각하고 작성했는지, 해당 내용으로 인해 발생할 수 있는 문제는 무엇일지 등을 물어보셨는데요. 이 때 부족한 점이 무엇인지, 앞으로 해야 할 내용이 무엇인지를 알 수 있었습니다.
이런 점 때문에 인터뷰가 끝난 뒤 채용이 되지 않더라도 더 성장해서 다시 도전하겠다는 마음을 먹었던 것 같습니다.

Q. 성장에 가장 큰 역할을 하고 있는 프로덕트 팀의 문화가 있다면 무엇일까요?

팀 내에서 진행 중인 회고가 개인적으로 성장에 가장 큰 역할을 하고 있다고 생각합니다. 회고는 격주로 모든 팀원이 모여서 진행하는데요, 회고 전까지 어떤 이슈가 있었는지, 또 아쉬웠던 점은 무엇인지 이야기하며 다양한 피드백을 주고받을 수 있습니다. 다른 팀원이 남겨준 피드백을 다음 업무에 참고하기도 하고, 제가 남긴 피드백을 통해 업무 프로세스가 개선되는 등 실제 순기능이 많은 문화라고 생각합니다.
정보를 적극적으로 공유하고자 하는 조직 문화도 팀과 개인이 성장하는 데에 많은 기여를 하고 있는 것 같습니다. 예시로 슬랙 채널에 다양한 기술 관련 내용을 자유롭게 공유하는데, 서로 피드백이 활발하게 오가고 정보를 공유하는 분위기에서 자연스럽게 더 많은 정보를 습득하게 되고 성장의 밑거름이 된다고 생각합니다.

Q. AB180과 QA 엔지니어 커리어에 관심있는 미래의 동료 분들께 메시지를 남겨주세요!

위에서 언급했듯이 QA 엔지니어와 테스터의 업무를 동일시하거나 혼동하는 분이 많은 것 같아요. QA 엔지니어란 어떤 직무이고, QA 엔지니어가 되기 위에서 어떤 노력을 해야 하는지 끊임없이 고민하고 생각한다면 앞으로의 커리어와 개인적 발전에 많은 도움이 될 것이라고 생각합니다. 물론 저희 팀에서 같이 고민하는 것도 언제든지 환영입니다
수백 개 서비스, 수억 대 디바이스에서도 안정적일 수 있는 프로덕트의 품질을 함께 책임지실 엔지니어 분들을 기다리고 있습니다. 저희 팀이 궁금하시다면 커피챗도 언제든지 환영이니, 주저 말고 연락주세요!

 QA Engineer 지원하러 가기

ᴡʀɪᴛᴇʀ
Soeun Choi Tech Recruiter @AB180
유니콘부터 대기업까지 쓰는 제품. 같이 만들어볼래요? 에이비일팔공에서 함께 성장할 다양한 직군의 동료들을 찾고 있어요! → 더 알아보기