UI, UX에 이어 기능 개발 및 QA 관련 질문으로 인터뷰를 다시 시작했는데요. 사용자가 직접 눈으로 확인할 수 없지만, 더 쉽고 편리한 서비스 이용을 위해 애써 주신 엔지니어 세 분의 상세한 답변이 계속 이어졌습니다.
기능 개발 & QA 부분
항공권 검색 기능 역시 많이 개선되었다고 들었습니다. 개발하는 데 있어 어려움은 없으셨나요?
종엽(엔지니어): 아마 일반 사용자들께서는 ‘오~ 좀 빨라졌는데?’ 이렇게 간단하게 느끼는 부분인데 실제 개발이나 테스트는 정말 까다롭고 어려운 작업이었거든요. 기존에는 기본 기능을 유지, 보수하는 정도로 진행했었다면 이번 리뉴얼을 진행하면서는 기존의 것들을 모두 두고 새로 만들었다고 해도 과언이 아닐 정도로 작은 것부터 차근차근 변경이 진행되었습니다.
그리고 저희가 프로그래밍을 통해 검색 결과를 정제하려다 보니, 원본 데이터를 전달하는 파트너사와 커뮤니케이션 해야 하는 부분도 많았는데요. 그곳과 저희의 기준이 달라서 필요한 정보가 누락되어 있거나 빠져 있는 경우도 좀 있었거든요. 그런 부분을 내부적으로 정규화하고 정책을 정하는 부분까지 진행하다 보니 조금 더 어려웠던 작업이었습니다. 그러나 아주 조금이라도 항공권 검색 기능이 달라졌다고 느끼는 분이 계신다면 보람차게 여길 수 있을 것 같습니다.
진행해주신 것 중에 추가로 하나 더 여쭤볼게요. 플레이윙즈 ‘특가 알림’ 부분도 추가 개발 진행해주셨는데, 기존보다 더 개선된 부분이 있다면 무엇인가요.
종엽: 더 정교한 타깃팅이 가능해짐에 따라 각 사용자가 정말 필요한 정보만 받아볼 수 있도록 개선되었습니다. 기존에는 사용자분들이 선호정보를 직접 선택했고 그 정보만으로 타깃팅했는데요. 본인의 선호도를 잘 모르거나 선호한 정보와 실제 찾아보는 정보가 다른 경우도 많아서 이번에는 실제 사용자 행동을 기반으로 그 기준을 변경하였습니다. 이를 통해 관심 있는 검색 결과, 콘텐츠 클릭 이력 데이터를 바탕으로 선호도 측정이 가능해졌습니다.
알림 얘기를 하니 생각이 났는데요. 기존 특가 알림, 야간 알림 외에 리뉴얼 앱에는 콘텐츠 알림 On/Off 기능이 추가되었더라고요. 혹 알림마다 이용 방법이 헷갈리는 사용자에게 각각의 특징과 이용 방법에 대해 알려주실 수 있을까요?
에이미: 특가상품 알림은 말 그대로 매력적인 상품에 대한 안내를 제공하는 알림이며, 야간 알림은 당일 오후 8시~ 익일 오전 8시 사이의 특가를 안내하는 알림입니다. 특정 상품의 경우는 밤이나 새벽 시간에 오픈하는 경우가 있어 이를 놓치지 마시라고 조금 늦은 시간에 알림을 보내드리고 있습니다. 콘텐츠 푸시는 기존에 없던 새로운 알림인데요. 알림을 켜두면 알찬 여행 정보가 담긴 콘텐츠를 바로바로 받아 볼 수 있는 이점이 있습니다.
다시 기능 개발 질문으로 돌아가볼게요. 기능 개발과는 달리 눈에 보이지 않지만 개선된 영역도 분명히 있을 것 같은데요. ‘코드 리뉴얼’이 바로 그것이라는 얘길 들었습니다. 정확히 얘기해주실 수 있을까요?
키(CTO): 기본적으로는 전체적인 코드 퀄리티를 좋게 유지하려고 노력하였습니다. ‘퀄리티를 높이는 건 당연히 중요하지.’라고 생각하시는 분이 계실 텐데요. 실제 코드 퀄리티가 중요한 이유는 서비스의 유지∙보수를 쉽게 하면서 새로운 요구사항에 빠르게 변화하고 적응할 수 있기 때문입니다. 그렇지 않으면 버그나 문제가 생기기 쉬워질 뿐만 아니라, 고쳐 나가는데도 굉장한 시간과 노력이 소요됩니다. 공든 탑은 쉽게 무너지지 않으니까, 그런 탑 같은 플레이윙즈를 만들고 싶었습니다.
엔지니어 종엽 역시 동일한 얘기를 해주었는데요.
종엽(엔지니어)
이번엔 기존 코드를 전혀 사용하지 않고 완전히 새롭게 만들었습니다. 사실 컴퓨터가 이해하기 쉬운 코드를 만들기는 쉽지만 사람이 이해하기 쉬운 코드를 만드는 건 어렵거든요. 설계적으로도 요구사항 변경이나 확장성에 유연하게 열린 코드를 만들려고 노력했습니다. 또, 기존하고 달라진 점은 테스트를 기반으로 코드를 작성하고 이후에 진행되는 테스트도 완전 자동화했거든요. 이제는 사이드이펙트를 미연에 차단해서, 보다 안정적으로 운영할 수 있게 설계를 마친 상태입니다.
눈에 보이지 않는 개선점 질문을 하나 더 이어가겠습니다. 클라이언트의 경우, 사용 언어를 React Native로 모두 변경했는데요. 이 언어를 사용하게 되면 어떤 이점이 있나요? 또한, 사용자가 체감할 수 있는 부분에도 영향을 주는지 궁금합니다.
키: React Native 역시 아까 말씀드렸던 유연한 대응을 위해서 변경된 부분입니다. 기존에는 플레이윙즈를 네이티브 앱으로 개발했었는데요. 그러려면 iOS 개발, Android 개발을 양쪽 별개로 나눠 진행했어야 했거든요. 동일한 작업을 두 번 하다 보니 당연히 시간도, 노력도 두 배가 걸렸습니다. 하지만 React Native를 통해 하나만 개발하고 양쪽 모두에서 사용할 수 있게 됨에 따라 반응성이나 사용성이 떨어지는 부분을 개선할 수 있게 되었습니다. 이를 통해 서비스에 대한 더 유연한 대응과 변화도 함께 가져갈 수 있게 되었고요.
기능 개발이 들어가면 꼭 따라오는 것, 바로 기능 테스트일텐데요. 굉장히 많은 기능이 개발되고 개선된만큼 QA도 굉장히 까다로웠을 것 같습니다.
소피아(QA 엔지니어): 업무는 조금 버거웠지만 많은 분들이 도와주셔서 잘 이겨낼 수 있었던 것같습니다. 저는 다른 부분으로 조금 어려운 점이 있었는데요. 업무 특성 상, 기능 오류나 개선이 필요한 점들을 주로 확인하고 각 담당자에게 추가 개발 및 수정을 요청하는데, 사실 좋은 얘기도 몇 번 하면 듣기 싫은데 ‘이 부분 안되네요. 오류나네요. 에러 납니다. 작동 안하는데요.’ 이런 말씀만 드리다 보니 본의 아니게 마음이 무거워지는 경우가 종종 있었습니다. 물론 각 담당자분들은 다 너른 마음으로 양해해주셨지만 혼자 고민하고 괴로워 벽을 친 적이 몇 번 있습니다. (웃음)
물론 매번 에러나 기능 오작동의 원인을 잘 파악하시겠지만, 아무리 봐도 이유를 모르는 경우도 있을 것 같아요. 그럴 땐 어떻게 하시나요?
소피아: 네, 안타깝게도 그런 경우가 있습니다. 그러면 우선 테스트를 아주 잘게 쪼갭니다. 만일 기존 3단계 과정으로 테스트를 진행했는데 원인 파악이 어렵다 싶으면 정말 사소하고 작은 것까지 포함하여 8~9단계로 테스트 시나리오를 쪼개서 하나하나 신중하게 다시 테스트를 진행하죠. 물 샐 틈 없이 그 물을 더 촘촘하게 죈다고 생각해주시면 될 것 같아요.
서비스 운영 부분
얼마 전에 하이에어 탑승기 콘텐츠 참 유쾌하게 봤습니다. 기존에는 없었던 새로운 콘텐츠들을 많이 기획하고 계시는 것 같은데요, 앞으로의 계획이 있을까요?
블레어: 네. 하이에어 콘텐츠의 경우 직접 탑승까지 해보며 최대한 리얼함을 전달하고자 노력한 콘텐츠였어요. 저희 사용자 분들이 LCC에서 느끼는 아쉬운 부분 중 좌석 간 간격이 좁다는 점이 있는데, 하이에어는 좌석 간 간격이 무려 97cm이고 이외에도 장점들이 많아서 조금 더 항공사 선택의 폭을 넓혀보셨으면 하는 마음에 콘텐츠를 기획하게 됐습니다. 다행이 많은 분이 흥미 있게 구독해주셔서 개인적으로도 큰 보람을 느꼈는데요.
앞으로는 데이터 적인 콘텐츠도 계획 중에 있습니다. 사용자 분들이 저희가 매달 선보이는 가장 많이 검색해본 인기 여행지 1위 콘텐츠나 인구밀도가 가장 낮은 국가 TOP4 콘텐츠 등에 많은 관심을 보여주고 계시더라고요. 그래서 여행에 관한 여러 데이터를 흥미로운 콘텐츠로 정제해 보는 게 목표랍니다.
유심히 보니, 콘텐츠마다 카테고리가 다 있는 것 같은데 어떻게 분류되는지도 안내주실 수 있을까요?
레아(마케터): 저희 대부분이 여행 전문가라고 자부할 수 있는데요. 실제로 여행을 정말 좋아하기도 하고요. 그래서 저희만 알고 있는 정보들이나 실제 서비스를 운영하면서 알게 되는 팁을 전달하고자 했습니다. 그런 콘텐츠들을 엮은 것이 에디터 추천 콘텐츠입니다. 물론 모든 것이 새로울 수 없지만 정보를 볼 때 새롭게 느껴질 수 있도록 노력하고 있으니 많은 관심 부탁드립니다. (웃음)
여행 정보는 우리가 얼핏 알고 있는 것들을 꼭 짚어주는 콘텐츠입니다. 명동성당만 하더라도 고딕식 건축물이라고 하는데 고딕이 뭔지 정확히 알지 못하죠. 여행을 가서도 의문투성이였고요. 우리만 그런 게 아닐 거라는 공통점에서 시작된 콘텐츠입니다. 저희만 그런 걸까요…? 어쨌든 여행을 가셨을 때 고딕 양식은 이거지, 히잡은 왜 쓰는 거지?, 기장도 기내식을 먹을까? 등의 궁금증에서 저희 콘텐츠가 시원한 해답이 되는 역할을 해주길 바라고 있습니다.
이번에 새롭게 시도하고 있는 콘텐츠가 또 있는데요. 플윙 인터뷰입니다. 플레이윙즈를 만든 사람들을 시작으로 점차 사용자, 여행 인플루언서들의 인터뷰로 확대하고 싶습니다. 플레이윙즈를 사용해 주시는 분들이 궁금해하셨던 플윙 멤버들의 이야기, 서비스의 방향을 공유하며 사용자분들과 더 가까이 소통하려고 합니다. 또한 멤버들뿐만 아니라 사용자분들의 이야기를 담아 플레이윙즈라는 서비스를 완성해 가고 싶은 욕심이 있습니다.
추가로 콘텐츠가 접속할 때마다 매번 변경되어 있던데, 운영 주기가 따로 있나요? 테마도 항상 다르게 진행되는 것 같은데 어떻게 결정하시나요?
블레어: 콘텐츠 배너 영역은 보통 일주일 단위로 변경됩니다. 내부적으로 회의를 거친 후 하나의 테마로 여러 콘텐츠를 엮어서 사용자 분들에게 보여드리는데요. 예를 들어 코로나의 영향으로 해외여행을 가지 못해 아쉬워하는 분들을 위해 ‘언젠가 버킷리스트에 담고 싶은 그곳’이라는 테마로 아르헨티나, 로스앤젤레스 여행 스팟을 소개하는 콘텐츠들을 소개해드리기도 했고요.
오직 플레이윙즈에서만 만나볼 수 있는 ‘플윙씨에게 물어봐’ 시리즈를 ‘비행기 이용 꿀팁’을 테마로 잡아 선보이기도 했습니다. 항공권 가격 편을 통해 유류할증료와 공항시설사용료가 어떻게 책정되는지 알려드리거나, 기내 서비스 편을 통해 기장과 부기장의 기내식 메뉴가 다르다는 흥미로운 정보를 알려드리는 등의 방식으로요. 앞으로도 콘텐츠 배너 영역에서 무궁무진한 콘텐츠를 지속해서 선보일 예정이니 많은 관심 부탁드릴게요!
콘텐츠 외에 상품에 대한 궁금증도 있는데요. 플레이윙즈에 노출되는 상품들은 어떤 기준으로 선택이 되고, 사용자에게 전달이 되는 걸까요? 좋은 상품의 기준이 궁금합니다.
스윙: 플레이윙즈에는 다년 간의 데이터를 기반으로 상품 등급을 정한 내부 가이드가 있는데요. 그에 맞게 등급이 높은 상품들만 우선 선발을 합니다. 그리고 최근 여행 시장 및 트렌드를 분석하여 인기 있거나 떠오르는 여행지에 해당하는지 선별 작업을 거치고요. 이후 가격 데이터를 기준으로 사용자에게 합리적이고 유용한 혜택인지를 검증합니다.
이렇게 우리 사용자의 관심은 어디를 향해 있는지를 다각도로 확인 후 최종적으로 노출이 됩니다. 그리고 무엇보다 상품이 사용자를 만났을 때 사용자의 반응이 어땠는지를 예민하게 바라보고 다음 상품에 그 피드백을 반영하려고 합니다. 이런 과정을 통해 쌓이는 데이터가 좋은 상품의 기준이 되고, 그만큼 결과도 잘 나오지 않나 싶습니다.
파트너사를 직접 만나시잖아요. 플레이윙즈 리뉴얼 이후 파트너사의 반응이 좀 궁금합니다. 긍정적인 반응이었나요?
스윙: 확실히 편리해졌다, 예쁘다라는 반응이 많습니다. 물론 항공 이외 다양한 상품을 다룰 수 있다는 점도 한몫했고요. 특히 파트너사의 상품을 다양한 영역에 유연하게 노출시킬 수 있다는 점 역시도 긍정적으로 평가해 주고 계십니다.
영역이 다양해지고 콘텐츠가 늘어나다 보니, 파트너사 섭외에도 도움이 될 것 같은데요. 어떠신가요? 리뉴얼된 플레이윙즈가 많이 도움이 되었나요?
스윙: 물론 도움이 됩니다! 이전보다 사업 영역이 확장되어 항공 이외의 호텔, 투어, 액티비티 등 섹터를 다룰 수 있기 때문에 기존에 집중하던 항공 영역 외의 여러 상품을 다룰 수 있게 되었습니다. 코로나로 인해 아직 여행 시장이 주춤하지만 상황이 재개되었을 때, 사용자들이 플레이윙즈를 더욱 유용하게 써주시길 바라고 있습니다.
개인 질문 부분
이제 리뉴얼 프로젝트에서 조금 벗어나 개인적인 질문을 몇 가지 드리고 싶은데요. 변경된 리뉴얼 영역 중 이게 제일 좋다 하는 영역은 무엇일까요?
키: 콘텐츠 영역 쪽이 가장 마음에 들어요. 저 같은 경우 앱을 사용할 때 특별한 목적이 있으면 단발성으로 서비스를 쓰게 되더라고요. 그래서인지 앱을 잘 지우는 편인데요. 5분 이내에 지우는 비율이 60%~70% 정도는 됩니다. 엄청나죠. (웃음) 그래서 한 번 사용하고 아니다 싶으면 바로 삭제하는데, 새로워진 플레이윙즈에는 주기적으로 사용하기에 참 좋은 콘텐츠들이 넘쳐나다 보니, 계속 사용하게 되는 것 같습니다. 이런 부분이 우리 서비스를 더욱 널리, 오래 사용하게 되는 원동력이 된다고 생각합니다.
스윙:저는 푸시 알림을 모아서 보는 기능이 제일 만족스럽습니다. 사용자에게 푸시가 발송된다는 것은 그만큼 퀄리티가 좋은 상품 혹은 콘텐츠라는 방증일 텐데요. 푸시 알림 박스에 접속하면 플레이윙즈가 제공할 수 있는 가장 좋은 것들만 골라서 확인할 수 있다는 것이기에 의미가 있다고 생각합니다.
이렇게나 많은 고민과 노력 끝에 탄생한 현재의 플레이윙즈를 사용하고 계실 사용자에게 한마디 하신다면?
세라: 예전에는 항공권 특가 정보만 알려드렸는데, 이제는 조금 더 다양한 정보를 얻을 수 있으니 여행 준비하는 시작 단계부터 끝까지 함께 하는 그런 서비스였으면 좋겠습니다. 제 친구들이 항공권 구매할 때 항상 저에게 먼저 좋은 상품인지, 아닌지 물어보는데요. 우리 앱이 플레이윙즈 사용자분에게 그런 역할을 하고 기준을 세워줄 수 있는 존재로 계속 이어졌으면 좋겠습니다.
소피아: 많은 분들의 노고가 녹아 내린만큼 많이 써주셨으면 좋겠고, 세상에 완벽한 것은 없다는 말처럼, 현재 플레이윙즈 앱에서 분명 아쉬움을 느끼는 부분이 있을 거라고 생각합니다. 이런 부분 가감 없이 제보해주신다면 제가 열심히 검토하여 수정될 수 있도록 노력하겠습니다.
스윙: 다른 여행 서비스와 비교하면서 많은 피드백을 주셨으면 합니다. 사용자 의견을 많이 얻을수록 정말 필요로 하는 상품을 발 빠르게 수급할 수 있기 때문에 원하는 상품, 바라는 점 있으면 가감 없이 전달 주셨으면 합니다!
써머: 코로나 때문에 여행 가기 어려운 게 사실이지만, 언제든 여행 준비는 가능하다고 생각합니다. 당장 떠나는 건 아니더라도요. 매일 플레이윙즈에서 유익한 여행 정보를 얻고 재미난 추천 콘텐츠도 읽고, 저렴한 상품을 살펴보는 것만으로도 여행의 영감을 쉽게 잃지 않을 거라고 생각합니다. 다들 아주 많이 플레이윙즈를 이용해주셨으면 좋겠어요!
제이: 특가 알림이 도착할 때 기내에서 들었던 익숙한 소리가 울리는 거 알고 계시죠? 여행 갈 때의 그 설렘을 고스란히 전달하기 위해 기내 효과음을 사용하고 있어요. 눈을 감고 들어보세요. 마치 기내에 있는 느낌이 들고 이미 다녀온 여행을 회상하기도 하고 앞으로 가고 싶은 여행에 대한 기분 좋은 상상을 하며, 매일을 여행 가기 전처럼 활기차게 시작할 수 있도록! 당장은 코로나로 여행이 어려워졌지만, 일상에서도 잠깐의 여행 감성을 느낄 수 있도록 여러 여행 정보들을 제작하고 있으니 즐겁게 이용해주셨으면 좋겠습니다!
마지막 질문입니다. 플레이윙즈 리뉴얼 프로젝트를 5글자로 표현한다면?
써머: 빨/리/별/점/줘
제이: ⭐️/⭐️/⭐️/⭐️/⭐️
세라: 잘/가/라/구/앱* (*구앱: 구버전 앱)
소피아: 다/시/는/못/해
종엽: 싹/다/바/꿨/다
키 : 공/든/탑/플/윙
레아: 간/이/피/곤/해
블레어: 계/속/됩/니/다
스윙: 고/견/플/리/즈
맺음말
넘치는 이야기와 아이디어로 두 시간의 인터뷰가 정말 짧게 느껴졌는데요. 왁자지껄 이야기를 나누는 서로의 모습을 통해 우리를 움직이게 만드는 원동력이 과연 어디서부터 오는가에 대해 다시금 깨달을 수 있었습니다. 눈을 반짝이며 자신의 이야기를 풀어 놓는 멤버와 그 멤버를 보며 자극 받아 열의를 불태우는 다른 멤버들의 모습을 보면서 우리의 여정은 이제 막 시작되었다는 생각 역시 함께 들었습니다. 플레이윙즈의 이번 리뉴얼 프로젝트는 이렇게 끝을 맺지만, 또 다른 도전은 이제 막 다시 시작됩니다! 앞으로 더 멋지고 놀라운 모습으로 찾아올 플레이윙즈 많은 기대 부탁드립니다.