본문 바로가기
엑셈 기업문화/엑셈 사람들

엑셈 사람들 | 개발본부 QA팀

by EXEM 2019. 1. 4.



QA가 무엇인가요? QnA (Question and Answer) 아닌가요? 아마도 현업에 계신 분들이 아니라면 비슷한 반응일 거라 예상해 봅니다. ^^

QA는 대부분 생소한 직무라고 생각하실텐데요, 이 직무는 소프트웨어 제품이나 서비스 최종 출시에 앞서 버그 및 오류 테스트를 통해 품질을 보증하는 일을 합니다.

이번 시간에는 엑셈의 대표제품 MaxGauge InterMax를 보증하는 개발본부 QA팀을 만나보았습니다.

 

 QA팀이란? 

 개발본부 소속으로 회사에서 출시하는 제품에 대한 빌드/검증/배포를 담당하고 있으며, 테스트 자동화 및 고도화 작업을 통해 제품을 빠르고 안정적으로 배포할 수 있도록 준비하고 있습니다. 저희 팀만의 독특한 문화는 매주 한 번씩 무작위로 4명씩 조를 나눠 점심식사를 하고 있습니다. 회의나 회식 외 주 단위로 조를 나눠 한 테이블에서 식사를 하면서 일상적인 이야기를 나누며 친목을 도모하고 있습니다.

 
 담당 업무 소개 

<왼쪽 상단부터 시계방향으로 환경생성 대시보드, 타겟 실시간 로그 대시보드, 레드마인 자동관리 테스트 화면 1,2>

 QA(Quality Assurance) 영어 뜻 그대로 회사에서 출시하는 다양한 MaxgGauge 제품군의 품질을 보증하는 역할과 테스트 자동화, 그리고 테스트환경 고도화 작업을 진행하고 있습니다. 흔히 QA를 단순 테스트를 하는 역할이라고 생각할 수도 있지만, 제품이 기획 목적과 맞게 개발되었는지, 사용자에게 최고의 품질(가치)을 제공하고 있는지 등을 검증하기 위해 다양한 관점으로 테스트를 진행합니다. 이러한 과정을 통해 품질을 저해하는 문제 요소를 찾아내고, 해당 문제점이 해소되거나 개선될 수 있도록 돕는 역할을 담당합니다.
 또한 자동화를 통해 단순업무를 효율적으로 처리할 수 있도록 개선하고, 고도화 작업을 통해 테스트 환경을 쉽고 빠르게 구성할 수 있도록 준비하고 있습니다. 이를 위해 오픈소스 중심의 최신 기술 트랜드를 학습하고 반영하고 있으며 현재는 Kubernetes, Docker, Selenium, Jmeter등을 업무에 적용하여 쉽고 간편하게 활용하고 있습니다.
 
 업무에 대한 보람을 느낄 때? 
 예전에 비하여 다양한 환경에서 제품이 운영되고 기능이 확대되면서 환경 구성부터 테스트까지 어렵지 않은 부분이 없지만, 고객사에서 발생할 수 있는 문제를 미리 발견하여 해소하여 고객사에 잘 설치되어 운영되고 이를 바탕으로 수많은 고객사에서  MaxGauge를 신뢰할 때 뿌듯하고 자부심이 생깁니다. 또한 QA 업무 자체가 타 부서와의 협업이 필수적이기 때문에 어느 한쪽에 치우치지 않는 중간자의 역할이 쉽진 않지만, 한 부서의 사람들과 교류할 수 있다는 점이 좋은 것 같습니다. 
 그리고 기존에 없던 프로세스나 시스템이 사내에 도입되어 조금씩 개선되고 있을 때 큰 보람을 느낍니다. 일례로, 2018년에 NIPA(정보통신산업진흥원)관계자 분들과 QA 자동화 관련 교육 커리큘럼을 논의하는 과정에서 우리가 필요로 하는 기술수준을 NIPA에서 충족시켜줄 수 없다는 걸 느꼈습니다. NIPA 관계자 분들도 우리의 진행방향을 보시고, 이 정도로 갖추어 진행하는 회사가 없다고 평하셨을 때 옳은 방향으로 가고 있다는 확신이 들었습니다. 회사 제품이 여러 WAS와 DB를 지원하기 때문에 다양한 WAS, DB, Webserver를 다뤄보는 것 외 Kubernetes, Docker, Selenium 등과 같이 최신 트렌드에 따른 자동화 기술들을 학습하고 실제 업무에 적용함으로써 지적 호기심을 충족하는 즐거움을 얻을 수 있습니다. 
 최신 트렌드 기술들을 다루는 만큼 프로젝트 진행 과정에서 발생되는 트러블 슈팅을 수행할 때 답변을 많이 찾을 수가 없어서 마음 고생이 뒤따르기도 하지만 문제가 해소되어 팀에 적용될 때 큰 보람을 느낍니다.
 
 전공분야 & 필요역량 

 QA 업무를 하는 데 있어 컴퓨터공학을 전공하는 것이 필수는 아니지만 많은 도움이 됩니다. QA 업무는 기본적으로 제품에 대한 이해를 바탕으로 문제를 찾아야 하기에 프로그램에 대한 이해 그리고 그 프로그램을 만드는 언어에 대한 이해가 필요합니다. QA 업무에 대한 전반적인 이해를 하는데 있어서 ISTQB나 CSTS 같은 자격증이 있으면 도움이 될 것 같습니다. 

 그 외 다른 사람에게 현상에 대한 이해를 시켜야 하므로 논리적이고 체계적인 사고와 좋은 커뮤니케이션 능력이 필요하며, 다양한 환경과 시스템을 다루다 보니 IT에 대한 지속적인 흥미를 갖고 있다면 업무를 이해하고 적용하는데 수월해집니다. 마지막으로 업무를 하면서 느낀 점은 자료가 영어로 된 게 많아서 영어에 능숙하면 자료를 찾을 때 큰 도움이 됩니다. 
 
 커리어패스 & 비전 
 몇 년 사이 어느 회사에서나 QA조직에 있어서 가장 큰 화두는 자동화입니다. 저희 팀에서도 해당 부분에 대한 많은 관심을 갖고 업무를 진행하고 있는데 최종적으론 시스템 기반의 테스트 프로세스를 구성하는 것이 가장 큰 목표입니다. 시간이 갈수록 제품이 빠르게 변화하고 범위가 확장되는 것을 느끼고 있는데요, 단순/반복업무를 체계화하여 시스템으로 구성하고, 고객사와 최대한 유사한 형태의 환경을 구성할 수 있도록 고도화하여 빠르고 안정적인 제품을 배포할 수 있도록 준비하려고 합니다. 기본적으로 테스트 자동화를 위해선 어느 정도 프로그래밍 또는 스크립트 작성 역량이 있어야 합니다. 자동화가 아니더라도 프로그래밍 능력에 따라 제품을 바라보는 시각이 달라질 수 있기 때문에, QA 업무에 있어서 가장 많이 활용되고 있는 Python 언어를 마스터 하는 것이 목표입니다. 
 또한 최신기술 트렌드를 찾고 활용하려고 노력합니다. 하루가 다르게 빠르고 누구나 쉽게 사용할 수 있는 기술들이 출시되고 있는데, 이런 기술들을 학습하여 활용할 수 있다면 개인과 회사 모두 큰 도움이 되리라 생각합니다. 예를 들면 페이스북에서 인공지능이 직접 테스팅하고 버그가 발생하면 코드를 수정하는 시스템(SapFix)을 개발했다고 하더라고요. 꾸준히 노력하고 진행하면 언젠가 회사에도 그런 시스템을 만들 수 있지 않을까요?






기획 및 인터뷰 | 사업기획팀 박예영

사진 촬영 | 사업기획팀 박예영

댓글