스토리 홈

인터뷰

피드

뉴스

조회수 422

매장 수익 극대화하기

매장/식당을 운영할 때 우리가 가장 많이 신경 쓰는 영역은 매출과 수익일 것입니다. 비즈니스가 앞으로 나아가려면 고객이 필요하고 이는 매출/수익으로 이어집니다. 매출은 비즈니스 라이프 스트림의 시작이며 사업을 유지하고 수익 내기 위해 필요합니다. 우리는 서로 다른 비즈니스 환경에 맞는 구체적인 매출 전략이 필요합니다. 고객을 유치하여 음식, 서비스 및 브랜드에 충실하게 만들거나 더 많은 고객을 수용하기 위해 식당을 확장 할 수도 있습니다. 레스토랑 비즈니스가 수익을 창출하고 고객을 다시 방문하게 만드는 요인에 대해 살펴 보겠습니다.저는 여기서 매출 증대 활동을 주요 활동과 지원 활동으로 나누겠습니다.매출 증대를 위한 주요 활동레스토랑 비즈니스의 핵심 비즈니스 모델은 제공되는 음식입니다. 그걸 잊지 맙시다. 저는 이 것이 많은 독자들에게 상기 될 필요가 없기를 바랍니다.1. 품질 및 고객 경험을 타협하지 마십시오.요식업에서 음식과 서비스의 질을 낮추는 것은 일으키고자 하는 변화에 대한 마지막 옵션 혹은 아예 고려하지 말아야 할 사항입니다. 사람들이 식당을 반복적으로 방문하는 유일한 이유는 음식과 경험입니다. 고객을 다시 오게 만든는 것은 광고가 아니며 충성도 높은 고객을 만드는 것은 눈에 띄는 거창한 광고 문구가 아닙니다. 우리는 레스토랑의 본질인 제품과 서비스에 집중해야 합니다.음식과 서비스의 질을 유지하기 위한 활동들:직원 회전율 평가요리사와 서버가 너무 많이 입퇴사하는 경우 음식과 서비스에 문제가 될 것입니다. 해당 현상을 발견했다면 문제를 해결하십시오!원재료/제품 소싱모든 제품 품질의 기본은 제조자 혹은 질에 달려있습니다. 식당 운영에서 재료의 신선도는 타협할 수는 없습니다 (소매점의 경우 제품의 품질). 어떠한 방법으로든 좋은 품질의 재료/제품을 찾으십시오 (합리적인 차원에서). 너무 비싸면 다른 식당과 공동구매하여 단가를 낮추십시오. 열심히 한 만큼 돌아옵니다.트레이닝 매뉴얼트레이닝 매뉴얼을 만들고 항상 음식 준비, 요리 지침 및 매장 운영에 대한 규칙을 세운 후 그에 따르도록 합니다. 제대로된 교육을 받지 않은 직원은 비즈니스에 있어 평생 고객을 잃는 손해를 안겨다 줄 수 있습니다. 그 동안 트레이닝의 효과를 무시했다면, 이제 사업의 트레이닝 과정을 다시 평가해 볼 때입니다. 따라야 할 일련의 규칙을 가지고 있으면 음식과 서비스의 일관성이 유지됩니다.2. 피드백 루프이는 일부 IT 스타트업의 문제처럼 들릴지 모르지만 건강한 피드백 루프는 고객의 참여를 이끌어 내고 그들의 목소리를 들어주는 좋은 방법입니다. 모든 사업은 스타트업처럼 성장할 수 있습니다. 양적 데이터와 정성적인 피드백에 모든 결정을 기반하세요. 성공한 스타트업 중 가장 성공적인 기업은 고객과의 건강한 피드백 루프를 가지고 있습니다. 이 것이 제품에 대한 시장의 반응을 파악하고 비즈니스의 방향을 재검증하는 방법입니다. 사업은 당신의 마스터 플랜에 달려 있지 않습니다. 비즈니스는 고객들에 달려있고 그들과 함께합니다. 오늘 고객에게 경험이 어땠는지 묻기 시작해 보세요. 그들이 무엇을 좋아하거나 싫어하는 것을 알게 되면 놀랄 것입니다. 당신은 그 결과에 따라 행동하기만 하면 됩니다.매출 증대를 위한 지원 활동주요 활동 이외에도 많은 지원 활동을 통해 매출이나 수익을 높일 수 있습니다. 이러한 활동에는 비용 절감, 효율성 증대, 고객 유치, 반복 방문 증가 등이 포함될 수 있습니다.1. 기프트 카드 프로그램기프트 카드 사용이 증가하고 있습니다. 소비자는 물리적 카드 또는 온라인 기프트 카드와 상관없이 기프트 카드를 계속 주고 받습니다. 고객에게 기프트 카드를 구입할 수있는 옵션을 제공하면 매출을 앞당길 수 있을 뿐만 아니라 충성 고객이 친구 및 가족에게 전달하여 잠재 신규 고객을 더 많이 확보 할 수 있습니다. 많은 소매 및 F&B 기업이 선불 형태로 수익을 늘리고 잠재 고객에게 제품/서비스를 이용해 볼 수 있는 기회를 제공하기 위해 기프트 카드 전략을 사용합니다. 기프트 카드의 장점은 고객에게 부여되는 구매의 자유입니다. 기프트 카드를 받으면 원하는 음식이나 서비스를 언제 구매할 지 자유롭게 선택할 수 있습니다.또 다른 매출 전략을 세우고 있다면 기프트 카드 및 프로모션 방법에 대해 생각해보세요.2. 전략적 구매 시점 프로모션우리가 계획보다 얼마씩 더 소비하게 만드는 요인은 충동적인 마지막 순간의 결정일 때가 많습니다. 저는 많은 독자들이 이를 경험했을 것이라고 생각합니다. 이는 상향 판매에 좋은 전략이며 때때로 일일 매출의 상당 부분을 차지할 수도 있습니다.많은 고객의 구매 결정은 상점내에서 이루어집니다. 그 결정은 곧 매출로 이어질 수 있습니다. 소형 보드나 아이패드를 계산대 옆에 설치하고 베스트셀러 물품이나 오늘의 할인 품목을 홍보해 보세요. 고객이 매장에서 알아채지 못했던 베스트셀러나 할인품목을 구매 시점에 발견하여 구매할 확률이 높습니다.3. 작업 효율 향상작업의 효율성에 영향을 미치는 많은 요소가 있습니다. 그것은 매장 구조 같은 작은 영역에서 발생할 수 있습니다. 고객에게 제품을 전달하기 위한 한 가지의 추가적인 단계는 고객의 만족도를 저하시킬 수 있습니다.식당/매장 평면도매 번 부엌이나 계산대가 항상 혼잡하다면 귀하의 레스토랑 평면도에 문제가 있을 수 있습니다. 식당/상점 운영은 부동산 비즈니스와 유사합니다. 바쁜 시간에 고객이 집중되는 통로와 전체 고객 트래픽을 처리할 방법을 잘 계획해야합니다. 레스토랑의 평면도를 재평가하고 bottle neck 현상이 어디에 있는지 확인하고 고쳐보세요. 전에 하루 100 명의 고객을 앉힐 수 있었다면 평면도를 개선하고 20 명의 추가적인 고객이 당신의 음식을 먹어 볼 수 있지 않을까요?스토리지(창고) 구조직원이 고객에게 맞는 신발을 찾는데 걸리는 시간이 오래 걸리나요? 창고에서 고객이 요구한 제품을 찾는 것이 어려운 일인가요? 귀하의 재고 관리 소프트웨어는 그 품목이 창고에 있다고 말해 주지만 도통 찾을 수가 없나요? 스토리지 재배치, 선반 재정렬, 올바른 레이블링 등으로 재구성해 보세요.주방 구조주방은 식당이나 스토리지보다 복잡한 영역입니다. 요리사가 음식의 품질을 통제하는 중요한 곳입니다. 복잡하게 설계 된 주방은 식당 운영의 효율성을 떨어뜨립니다. 직원/요리사들과 주방에 대한 피드백을 듣고 개선 할 수있는 방법에 대해 토론해 보세요. 당신이 그들이 하는 말을 듣은다면 놀랄 수 있습니다. 대화의 창을 열어보세요.상점 매출과 수익을 높이기 위한 몇 가지 방법을 제안했습니다. 일부는 귀하의 비즈니스에 적용 가능할 수도 있고 그렇지 않을 수도 있습니다. 비즈니스의 사장 또는 관리자로서 귀하의 중책은 직원 관리, 재고 주문 및 광고, 홍보만이 아닙니다. IT 스타트업의 핵심은 제품 그 자체이며 고객이 잘 만든 제품/서비스를 구매하듯 레스토랑이나 리테일 사업도 그 핵심은 음식과 제품, 그리고 서비스에 있습니다.#시프티 #고객가치 #핵심가치 #기업소개 #서비스소개
조회수 816

탕비실의 브랜딩: 브랜딩과 육두문자의 상관관계

일을 하다보면 매우 화가 날 때가 종종 있습니다. 일이 힘들어서라기 보단 그 일을 하는 사람들로 인한 관계의 문제가 크죠. 브랜딩업무는 협업과 협조가 굉장히 많이 필요합니다. 디자인팀만 죽어라고 일하는 것이 아닌, 마케팅, 대표님, 경영지원, 개발단에서도 전체 브랜드의 맥락과 의미를 알고 있어야 합니다. 또 제대로 가이드대로 적용할 수 있어야 하지요. 단순히 문구를 일치시키고 상하좌우 여백과 로고위치를 맞추는 것의 문제는 아닙니다. 사실 그런 비쥬얼적인 부분은 오히려 부차적이죠. 그냥 로고위치는 바꾸면 되는 것입니다. 그러나 행사기획에서의 방향성이나, 신제품 런칭할 때 홍보전략 등은 단순한 것들이 아닙니다. 그러나 우리는 돈도 별로 없고 시간도 없고 마음이 바다같이 넓지 않기 때문에 브랜드컨셉을 정확하게 일치시켜가면서 전략을 구축하기 어렵습니다. 그 때 그 때 아름다운 순천만 갈대같은 우리의 맘도 다잡아야 하고, '현실적' 이란 말을 입에 달고 사는 이사와도 싸워야 합니다. 당초 설정했던 브랜드컨셉대로 가려면 통장의 장막을 들추고 공허를 마주하는 공포도 견뎌내야 합니다. 대부분의 사람들은 이러한 불안과 조급, 두려움, 가난, 피폐, 기아와 환난에 마주하게 되면 3가지의 특징을 드러내게 됩니다.1. 대충 보고 대충 결정한다.2. 내 말이 맞다.3. 니 말은 틀렸다.마음이 조급해졌다..라는 얘기는 심리학적으로는 '인지편향기제가 크게 작용한다' 라는 것과 비슷합니다. 인지편향이란 무언가를 받아들일 때 한 쪽으로 치우쳐진 판단을 하는 현상을 의미하지요. 불확실성이 높아지면 사람은 내가 알고 있는 지식이나 경험안에서 해답을 찾고자 합니다. 안정성을 추구하고 해봤던 것으로 회귀하죠. 관성과 습관에 의해 행동하길 원하고, 그 외의 것들은 고려의 대상에서 일단 제외시킵니다. 2번과 3번의 현상은 그러한 안정성의 추구때문에 발생하는 것이지요. 1번의 경우는 정확히는 '스윽 보고 내가 아는 것이면' 받아들이고 아니면 버린다라는 얘기입니다. 이 때 흥미로운 것은 '내가 아는 것' 이 그닥 정확하지 않은 것이라는 사실이죠. 보통 그 지식은 프레임의 영향을 크게 받습니다. 예를 들어 이번에 앱을 구글스토어에 런칭하고 3달이 지났는데 아직 다운로드수가 45밖에 되지 않았다고 해봅시다. 똥줄이 타고 마음이 조급하여 심장의 쫄깃거림이인절미의 그것과 같겠죠. GA분석을 하고 있어도 사실상 수치에 대한 객관적 분석이 힘들어집니다. 그래서 일단 박리다매식 불특정다수를 대상으로 한 광역홍보를 시전하자고 합니다. '일단 높이는 것이 먼저다!' 라는 전제에서 나온 것이죠. 하지만 당초 브랜드컨셉은 고급화전략+명확한 타겟군의 확보로 매니아층을 기반으로 한 앱이었단 말입니다. 하지만 GA상에서 '네이버검색 유입이 가장 높네!' 라는 사실을 들어 마케팅팀에선 브랜드컨셉을 가볍게 누를 수 있습니다. 물론 편향된 정보입니다. 사실 연관검색어 유입은 다른 것에 비해 1.2%정도가 높은 것 뿐입니다. 그러나 이미 답정넌전략의 경우엔 일단 전략을 내고 그 이유를 나중에 찾습니다. 운 좋게도 네이버 연관검색어가 1위를 차지해서 프레임의 벽을 튼튼하게 만들어주었습니다. 수치와 통계, 데이터도 프레임앞에선 가끔 무용지물이 될 때가 있습니다. 숫자없는 의미는 맹목적이고, 의미없는 숫자는 공허하지만, 숫자가 의미와 잘못 결탁하는 순간 우리는 회의실에서 고대사 간접체험을 하며 '고조선시대의 제정일치가 이런 느낌이었구나.' 라며 무릎을 탁 칠 수 있습니다.이처럼 정보의 편향된 인지와, 자기중심적 사고, 배타심리가 높아지면서 무리한 요구, 잦은 변경, 말 같지도 않은 소리등이 탄생하게 되고 실무자들은 만들어놨던 여러가지 것들을 無로 되돌리는 공허의 군주놀이를 하며 드디어 욕설이 등장하게 되는 것입니다.사람은 언제 화를 낼까요. 물론 여러가지 상황이 있을 겁니다. 그 주체가 상대방에 대한 빡침인지, 나를 향한 것인지도 구별해야 겠죠. 추운 겨울날 따끈한 치킨을 사들고 집에 가다가 자빠져서 치킨이 진흙탕물에 뿌링클되는 것은 나에 대한 빡침일 것이고, 디자이너에게 시안좀 만들어오라고 했더니 혼돈스러운 것을 가져왔을 때 느껴지는 것은 상대에 대한 빡침이겠죠. 사람의 화는 주로 이런 상황에서 발생합니다. 5가지로 분류해보죠.1. 인정받지 못할 때2. 나와 다른 어떤 것을 강요당할 때3. 부당하거나 억울하다고 느껴질 때4. 상대가 공격적인 태도를 취할 때5. 배고프거나 졸릴 때5번의 경우는 1,2,3,4의 상황과 콤보를 이루며 증폭의 역할을 합니다. 1번은 10시간 내내 해놨던 것을 보지도 않고 '다른 거 없어?' 라고 할 때이고, 2번은 정치관련된 콘텐츠 만들기 싫은데 자꾸 만들으라고 할 때(심지어 내가 싫어하는 당을 옹호하는), 3번은 1번에서 만든 10시간 시안을 보면서 '이거 뭐 베낀거 아냐? 아니면 니가 한거 맞아?' 라고 되물을 때, 4번은 '그건 팀.장.님.에.게 물.어.보.시.라.구.요.' 라며 꼭꼭 씹으며 싸가지없이 말하는 옆 팀 대리에게서 느껴지는 느낌이죠.브랜딩작업만에 해당하는 것은 아니겠지만, 브랜딩은 굉장히 추상적이고 두루뭉술한 것들을 실체화시키는 작업입니다. 그러다보니 상황이 조금만 여의치 않으면 가장 먼저 희생되고 깨지는 약속이기도 하지요. 실질적인 매출증감을 체감할 수도 없고 어쩌면 모두에게 그냥 불필요한 일의 일부로 느껴질 수도 있으니까요. 그래서 상호간의 깊은 동의와 이해가 없이는 브랜딩작업은 사실상 불가능에 가깝습니다. 사람 모인 곳이 회사인데 모든 사람들이 인정하는 하나의 명제를 만드는 것이 결코 쉬운 일은 아닐 것입니다. 또한 이러한 명제 아래 발생하는 실무들을 처리하는 실무자들에겐 의미없는 스트레스로 다가오기도 하지요. 그러나 단순히 일이 늘어서 짜증나는 것일까요? 그건 아니라고 생각합니다. 그 일을 전달하는 사람의 자세나, 일을 대하는 지시자의 태도, 결과물에 대한 리액션 등..결국엔 사람과의 커뮤니케이션에서 항상 문제가 발생하죠.그래서 우리를 화나게 하는 상황들에 대해 주우욱....늘어놔보도록 하겠습니다.1. 5번을 말해도 못 알아들을 때: 말하는 내 문제인지, 듣는 사람의 문제인지 모르겠지만 5번 정도 말했다면 듣는 사람의 센스 문제일 경우가 큽니다. 보통 이럴 땐 그림을 그려주거나, 사내에 말 잘하는 분께 외주를 주거나, 제프 베조스가 빨리 '센스를 높이는 두뇌자극장치'를 개발해주길 기다려봅시다.'어디서부터 잘못된거지?....2. 혼자 크게 우월한 분: 그러니까 그 이론은 알겠으니 이제 앉아서 일을 하세요.배우신 분인건 알겠고, 언제 끝나요?3. 자꾸 다른 것 부터 하고 계실 때: 아니 그거 말고 제가 프로모션 기획안부터 하라고 중세시대부터 얘기했을 텐데..4. 회의에서 나온 내용 안듣고: 자꾸 나한테 다시 물어봅니다. 저는 에버노트가 아닙니다.. 5. CC걸린 이메일 안보고 딴 소리: CC라는 것은 캠퍼스커플이나 컨츄리클럽이 아니라 carbon copy입니다. 먹지에 똑같이 복사해서 당신에게도 주겠다는 것인데 무언가를 주는 데에는 이유가 있습니다. 6. 파일을 자꾸 못찾아: 기획안은 야동이 아닙니다. 컴퓨터에는 즐겨찾기라는 최첨단 기능이 있습니다. 너무 소중해서 깊숙히 숨겨놓는 마음은 이해가 갑니다. 하지만 빨리 달라고 하는데 30분 째 파일 하나하나 열어보면서 뭐였지?..하고 있으면 답답합니다. 파일이름도 19741908357.doc 하지말고 DarkNamer 등의 프로그램을 이용해서 일괄변경해줍시다. 7. 아까 했던 말을 자꾸 바꿈: 23아이덴티티 인줄.. 그의 마지막 23번째 인격이 깨어나 또 말을 바꾼다면 이젠 내가 가만히 있지 않을 것입니다.8. 왠지 가르치려 듦: 아니 같이 일을 하는데 왜 묘하게 선생님의 모습이 겹치지.. 어느새 손등내밀고 자 모서리로 뼈 맞을 것 같은 느낌이 들기도 합니다. 회의를 하는 거지 가르침을 받는 시간이 아닐텐데..9. 뭐가 맘에 안드는 지 말해줘요.: 이 느낌이 아니야. 라고 했다면 무슨 느낌을 원하는 지 말해주세요. 말을 못하겠다면 당신의 느낌을 빌딩밖으로 던져버리도록 합시다.10. 디자이너가 시안을 밤새 깎고있다.: 일을 한다는 건 절차가 있고 제한시간이 있습니다. 디자이너 쪽에서 막혀있으면 다음 단계의 실무자는 주말에 애인을 만날 수 없습니다. 또는 생길 수가 없습니다. 아직 최종이 나온 것이 아니잖습니까. 시안의 완성도는 최종시안에서 챙깁시다. 지금은 '쳐내는 것'에 집중하세요.11. 당신이 맡은 일은 '끝내서' 나에게 주세요.: 대학교 조별과제 하다보면 '제가 PPT맡을께요.' 라고 해놓고 이 세상 PPT가 아닌 것 같은 해괴망측한 괴생명체를 단톡방에 던지고 '저는 그럼 이제 나가볼께요.' 하시는 분들이 계십니다. '제가 맡을게요.' 라는 말은 자신의 업무에 대한 결과보장과 퀄리티, 신뢰도까지 책임지겠다라는 얘기입니다. 그렇게 대충해서 다했다고 할거면 월급도 아무숫자나 적힌 채로 받으시면 됩니다.'자료 조사를 해오랬더니 링크만 긁어서 단톡방에 남겨??12. 일하는데 옆에서 계속 투덜댐.: 투덜대지 말고 의견을 제시하던가, 해결책을 내놓던가 대표님실에 가서 투덜댑시다. 13. 자기만 힘든 척: 모두가 같은 일을 하고 있습니다. 지금 저 사람이 놀고 있는 것 같지만 그 사람 프로세스가 오면 그 사람이 바빠지는 겁니다. 이어달리기 같이 움직이는 것이 일입니다. 세상 일은 혼자 다하는 것처럼 자꾸 인상찌뿌리고 그러면 아마츄어 같습니다.14. 아무 설명도 없이 파일만 던짐: 메일을 보면 제목도 없고 내용도 없고 파일만 덜렁 온 경우도 있는데, 특히 포워딩할 때 이런 경우가 많습니다. 무언가를 줄 때는 무엇이다, 주겠다, 이걸 받고 어떻게 해라 등등의 디렉션을 포함하도록 합시다. 하다못해 동네축구를 해도 마이마이!!! 가 있고 패스패스!! 들어가!!! 퍼져퍼져!!! 등의 직관적인 디렉션이 있는데 말이죠.15. 사건을 벌어졌는데 미궁속으로 빠졌다.: 뭔 사고를 쳤는데 범인은 없다....! 대부분 그 범인은 자기가 범인인 줄 모릅니다.16. 남의 것만 베껴옴: 우리 브랜드철학과 적합한 뭔가를 만들어야 지 자꾸 남의 것만 베껴오면 어떻하나요. 물론 카카오나 배달의 민족이나 29CM 등 브랜딩과 마케팅을 잘하는 곳들의 레퍼런스를 참고하는 것은 좋습니다만, 그들이 성공한 것은 레퍼런스가 좋아서가 아니고 '그들이 했기 때문' 입니다. 17. 중요하지 않은 것에 힘쓰고 계심: 보고서에 표지만드는 것은 크게 중요하지 않습니다. 자꾸 표지에 디자인하지 마세요.18. 데드라인 못지킨 이유: 못지켰으면 핑계핑계하지말고 대책을 가져오도록 합시다. 어머니와 아버지가 편찮으시고 집안이 무너지고 심신미약과 공황장애, 우울과 몸살감기가 겹쳐 일을 못한 것은 십분 이해합니다. 그러니 이제 어떻게 할 것인지 그것을 얘기해주세요.19. 이빨까기: 저 사람은 자꾸 일은 안하고 대표님과 팀장님 옆에서 자기 일한 거 들고 아양만 떱니다. 얼핏 주상전하 옆에 성은이 망극하옵니다 봇같기도 하고 이방 내지는 반지의 제왕의 세오덴 왕 옆에 붙어있던 그 까만머리 아저씨같기도 한데 뭐가 되었든 저 사람이 자료를 줘야 내가 퇴근을 하는데 벌써 7시고.. 뭐 이렇습니다.저..저봐!! 백색의 김대리야!20. 도와서 같이 해: '돕는다' 라는 말은 참 애매합니다. 내가 다 만들고 니가 옆에서 ctrl+s 만 눌러줘도 돕는 건 돕는거니까요. 이건 남편이 아내의 집안일을 '돕는다' 라고 표현하는 것과 비슷합니다. 지가 사는 집인데 왜 그게 돕는 건가요. 돕는다라는 표현은 애시당초 "니가 할 일" 인데 내가 선심써서 너의 노고를 덜어주는 거야 라는 함의가 담겨있습니다. 일에 돕는 것이 어딨나요. 니 일은 니가 하시고, 내 일은 내가 하는 거죠. 진짜 돕는 건 자기 일 다 끝내신 분이 주말에 나와서 내가 못 끝낸 기획서 반토막을 샤샤샥 써주고 백마 탄 초인처럼 손 흔들며 사라지는 걸 돕는다고 하는 겁니다. 21. 공부 좀 ...: 단도직입적으로 브랜딩은 똑똑해야 할 수 있습니다. 전문지식이 있던가 아니면 얕고 넓게 알던가, 트렌드에 민감하던가 센스가 엄청나던가. 어떤 식으로든 똑똑해야 합니다. 아는 게 있고 본 게 많아야 레퍼런스를 끄집어 낼 수 있고 컨버전스를 하던 믹싱을 하던 카피를 하던 뭐라도 할 수 있습니다. 당최 요즘 우리나라가 통일이 됬는지 대통령이 바뀌었는지 살았는 지 죽었는 지 관심도 없이 이번 겨울신상 롱패딩 지르기에만 여념이 없으면 같이 회의하고 일하는 사람들이 무지 답답합니다.22. 결과물까지 책임지는 겁니다.: 인쇄사고가 난 거니까 이건 인쇄소책임이니 난 모르겠습니다. 라고 하면 안됩니다. 아 그건 인쇄소탓이잖아. 23. 해봤다면서요.: 해봤다고 해서 시켰는데 광고게시자에 결제수단 추가도 못하면 어떻하자는 건가요. '해봤다' 라는 것은 '전체맥락을 알고있다.' 라는 얘기입니다. 한 두번 만져봤다란 얘기가 아니지요.24. 자기가 한 것처럼 하지 마세요.: 다 같이 만든 건인데 보고 할 때 자꾸 자기가 다 한 것처럼 주어를 통합하거나 뭉뚱그리는 분들이 있습니다. "이번 기획안 다 완성했습니다. 자료조사도 다 끝냈고, 프로모션 이벤트 견적도 조사 끝냈습니다." 라고 말이죠. 누가 무슨 업무를 담당했었는지 확실하게 보고하도록 해요. 심지어 부족한 자료는 꼬박꼬박 얘기하면서 잘되고 멋진 건 주어를 빼버리는 주어강제수탈행위는 좋지 않습니다.아니, 야 임마  말을 그렇게 하면 안..25. 그냥 해: 물론 일이란 게 그냥해야 할 때도 많습니다. 브랜딩은 철학과 가치적인 워딩이 많은 작업이기 때문에 나와 다른 생각을 강요받을 때가 있습니다. 이 때 이유도 뭣도 묻지말고 시키는 거나 하라는 식의 태도는 좋지 않습니다. 적어도 다른 의견을 지닌 사람들에게 설명이나 합의, 배려는 있어야 하는 것이지요. 닥치고 시키는 일이나 해!...라는 말을 들을 때면 보자기를 뒤집어 쓴 채 회사에 검은 차로 끌려와서 검은 가방을 국경넘어로 전달하는 느와르의 주인공이 된 듯해서 짜릿하긴 하겠지만, 직원이 리암 니슨이 아닌 이상 대부분 그런 사람들은 빠른 퇴장을 고심하게 됩니다. 대부분 업무를 하다가 화가 나는 것은 커뮤니케이션의 문제가 90%이고, 일의 능숙도나 스킬문제가 10%정도 되는 듯 합니다. 일을 잘 못하거나 실수를 하거나 사고를 치는 것은 어쨌든 손배소를 걸든, 퇴사를 하든 다른 사람에게 넘기든 해서 정리를 하고 처리가 가능한 부분입니다. 하지만 커뮤니케이션은 사실 대놓고 막 화를 내기도 뭐하고 따지자니 내가 좀 치졸해지는 것 같기도 합니다.'다양한 의미의 해석'이 가능한 부분인지라 속앓이를 하기 마련이지요.위의 25가지는 당연히 브랜딩 뿐 아니라 모든 일을 함에 있어서 동일하게 적용되는 상황들입니다. 하지만, 굳이 브랜딩실무와 연결시킨 이유는 아래와 같습니다.1. 브랜딩은 말로 하는 업무가 아닙니다.: 그런데 누군가는 자꾸 말만 하고 있고, 누군가는 일만 하고 있기 마련입니다. 차라리 마케팅업무는 데이터에 근거한 액션을 수립하고 정확한 목표와 예산을 설정할 수 있으니 미래지향적이라곤 해도 브랜딩보단 비교적 정량평가가 가능한 영역입니다. 그러나 브랜딩은 그 자체를 수치화 할 수 없고 '정체성' 이라는 모호한 단위에서 다들 허우적거리기 마련이죠. 실무단계에서 빨리 이 두루뭉술한 개념을 정리하여 시각화시키고, 액션으로 바꿔내야 합니다. 문장과 개념들만 떠도는 브랜딩은 모두에게 해롭습니다.문장과 개념들만 떠도는 브랜딩은 모두에게 해롭습니다.2. 모두가 함께하는 유일한 일이어야 해요.누군가는 이를 눈으로 보이게 만들어야 하고 누군가는 그에 맞는 기획안을 짜고 실천에 옮겨야 합니다. 이는 달리 말하면 디자이너와 기획자, 대표만의 잔치로 끝나버릴 수도 있다는 얘기입니다.  위 문제들은 대부분 이러한 맥락에서 발생합니다. '내 일 아닌데?''그게 나와 무슨 상관?''나는 똑똑해, 그러니 내 생각이 옳아.''무슨 일을 해야 하는거죠?'등의 말들이 나오기 시작하죠.  브랜드에 대한 이해도가 공유되지 않으면 대표, 디자이너, 기획자를 제외한 인원들과 업무 핀트가 어긋나기 시작합니다. 서로 무슨 일을 하지는 모르니 오해도 생깁니다. 또한 브랜딩 업무가 특정인원에게 가중되기도 하죠. 회사에는 여러 인원이 있고 각자가 맡은 영역이 서로 다릅니다. 그러니 같이 모여있지만 서로 다른 일을 하면서 일정 부분을 채워나가는 식이죠. 그럼에도 모두가 공통으로 해야 하는 영역이 있다면 바로 브랜딩실무라고 생각합니다. 같은 정체성을 그리고 같은 언어와, 같은 양식, 동일한 프로세스와 같은 문화를 영위하며 같은 방식으로 표현하는 것. 모두가 각자의 일을 하되, 그 저변에 항상 고려되어야 하는 것. 내가 작성하는 모든 문서의 중심과 커뮤니케이션의 구심점이 되어야 하는 것이 사실 브랜딩이니까요. 3. 브랜딩실무는 '일을 만드는 것'이 아니예요.브랜딩의 정의나 개념을 내리는 것은 오히려 쉽습니다. 브랜딩의 중요성을 설파하고 그 방법론에 대해서 떠드는 것은 어렵지 않죠. 하지만 "그래서 우리는 뭘 해야하는데?" 라는 문제에 봉착하면 머뭇거리고 있기 마련입니다. 일단 배너하나 바꾸는, 표지, 굿즈, 상품라벨, 패키지 하나 바꾸는 데에도 돈이 들어가기 시작하고 그 투자비용에 대한 개런티는 어디에도 없습니다. 누구나 다 중요하다곤 외치지만 실상 많은 돈을 들여서 하긴 꺼려하죠. 그래서 생각보다 브랜딩에 대해선 많은 사람들이 모순된 행동을 보이곤 합니다. "아, 이번에 저희가 네이밍을 새로 하려고 해요. 저희의 가치와 브랜드스토리를 알리는 작업이 정말 중요하잖아요. 브랜드의 시발점을 제대로 잡고싶어서 의뢰드렸습니다." 라고 말은 하지만, 막상 견적이 오고가는 과정에선 "그런데 3글자에 A4한 장만 적어주시면 되는데... 조금 저렴하겐 안되나요?"가 되는 것이죠. 가치를 알리는 브랜드의 시발점에서 갑자기 글자와 A4한장분량의 작업으로 바뀌는 경우가 정말 수도 없이 많습니다. 사실 솔직히 브랜딩에 대해 잘 모릅니다. 저도 그렇고 여러분들도 그렇죠. 하지만 변치 않는 명제가 있다면 브랜딩이 일을 위한 일이 되어서는 안된다는 것입니다. 브랜딩을 하기 위해 또 다른 일을 벌리거나 누구도 이해하기 힘든 새로운 프로젝트나 팀을 짜서 움직이는 것이 아니라는 것이죠. 오히려 브랜딩은 '마이너'한 개념의 실무부터 진행해야 합니다. 지금 우리가 하고 있는 것 중  우리 가치관과 맞지 않는 일들을 제거하는 것부터가 시작이죠. 브랜딩은 마이너스의 업무.위의 25가지 내용을 다시 한 번 곰곰히 살펴보시면, 대부분 무언가 "일을 하는 과정/일이 생기는 과정" 에서 발생하는 문제들입니다. 위의 문제들을 하나하나 해결해나가기 위해선, 분노유발자인 상대방을 원자단위로 소멸시키기거나 빅뱅이전의 에너지상태로 돌리는 방법도 있겠지만....더욱 좋은 방법은일단, "우리가 꼭 이것때문에 싸워야 할 필요가 있나?" 를 먼저 고민해보는 것입니다. 브랜딩은 '뭉치는 작업', '규정하고 하나로 모으는' 수렴형업무입니다. 이것을 꼭 유념해두셨으면 합니다. 일이 자꾸 커져서 문제가 생길 때는 잠시 일을 멈추고 주위를 둘러보세요. 그리고 그 원인자체를 하나하나 제거해 나가는( 사람이 아니고..업무를 ) 겁니다. 이런 식으로 우리를 둘러싼 거품과 불필요한 과정들이 사라지고 나면, 이제부터 무엇을 해야할 지 꽤나 직관적으로 발견할 수 있게 될 거예요. 
조회수 980

스푼 라디오 베트남 지사 탐방기

스푼을 만드는 사람들 아홉 번째 이야기베트남에 현지 마케팅 리더이자 '닭발'을 사랑하는 Jenny를 소개합니다!(모든 인터뷰는 영어로 진행되었으며. 한국어로 번역하였습니다)박진주 = Jenny베트남에 출장을 가게 되어, 오랜만에 베트남 현지 리더이자 마케터인 Jenny를 만났다. 한국에서와는 사뭇 다른 모습에 에너지 넘치는 제니에게 비결이 뭐냐고 물으니 하는 말."지금 난 베트남에 살고 있으니까!"한국에서 보았던 모습과는 달리, 리더 포스 뿜뿜 내며 늘 밝게 일하는 제니와 일주일간 동고동락하며 그녀를 조금 더 알아가 보았다. 박진주, 찰떡같은 한국 이름.박진주라는 이름은, 한국 마케팅 멤버인 써니가 지어준 이름이에요. 처음에 듣자마자 너무 마음에 들더라고요! 왜 박진주냐고 물어봤더니, 그냥 왠지 느낌이 박진주 같다고 하더라고요. 근데 저도 잘 모르겠지만 느낌이 제가 박진주 같아서 좋아요.'Jenny' 당신이 궁금합니다.Q. 본인을 한 마디로 표현한다면?쇼퍼홀릭 - "저는 저를 쇼핑의 여왕이라고 생각해요. 왜냐면, 한국에 있을 때 거의 맨~날 쇼핑을 했었거든요. 지금은 좀 절제하고 있긴 하지만.. 쇼핑하면 저를 빼놓을 수 없다고 생각합니다"Q. 한국어 잘하신다는 소문을 들었습니다."한국어를 잘하진 않는데, 꽤 잘 알아듣는 편이에요. 생각보다 잘해서 놀라시는 것 같더라고요. 한국에 있을 때 꽤나 많이 들어서 그런지 기본적인 표현은 알아요. 그중에 제가 가장 좋아하는 문장은 바로, 이건 데요..이 세상에 공짜는 없어!써니가 알려준 문장인데, 왠지 모르겠지만 너무 좋아요. 어떤 언어로 번역해도 의미가 적절해서 그런 건지 꼭 머릿속에 기억이 남더라고요. 다른 친구들에게도 한국어 가르쳐줄 때, 가장 먼저 알려주는 문장이기도 해요.호찌민에 위치한 오피스당신의 회사생활이 궁금합니다Q.  베트남에서 현재 하고 계신 업무를 말해주세요"저는 현재 베트남에서 마이쿤(스푼 라디오)을 대표하고 리드하고 있고요. 또 한 마케팅 리더이면서 전반적으로 모든 프로세스를 책임지고 있답니다."Q. 베트남에서 스푼에 입사하게 된 계기는?"제가 베트남계 회사를 다니면서, 이직을 준비할 때였는데요. 갑자기 제 여동생이 저에게 구직 관련 이메일을 하나 전달해주더라고요. 그게 바로 '스푼'이었어요. 그전에 스타트업에서 근무해본 적도 없고 관심이 없었는데도 불구하고 왠지 도전의식이 생기더라고요. 솔직하게 말해서, 저는 인터뷰나 한 번 볼까?라는 마음이었어요. 근데 첫 인터뷰로, 스푼 라디오 투자사분들하고 면담을 했을 때 이곳이 너무 비전이 있는 곳이란 걸 느꼈어요. 그리고 정말 궁금하더라고요. 젊은 분위기에 젊은 문화 그리고 젊은 서비스를 만들어 나간다는 건 어떤 느낌일지 호기심도 생겼고요. 제 생각에 아마 '운명' 이 아니었나 싶습니다."Q. 한국 생활하셨을 때 어떠셨어요?"저는 사실 제가 한국에 와야 하는지 몰랐어요. 합격하면 바로 베트남에서 근무를 하는 줄 알았는데, 3개월 동안 한국에 가서 트레이닝을 받아야 한다고 하더라고요. 그래서 동시에 기쁘면서도 너무 겁이 났어요. 그래도 3개월 동안 너무 즐거웠고 모든 것이 새롭고, 좋은 친구들과 동료들도 만났기에 행복한 나날 들이었어요. 무엇보다 근무환경과 업무 스타일이 베트남과는 정말 180도 다르다는 것에 대해서 놀랐고요. 무엇보다 제가 예전에 한국 드라마를 봤을 땐, 막 회사에서 되게 권위적이고 무서워 보이던데 아니라서 깜~짝 놀랐어요 (강조) 너무 편하게 잘 대해주셨고, 모든 분들이 정말 많이 배려를 해주셨어서 지금도 기억하고 감사하고 있어요. 물론, 3개월 후에 집에 갈 줄 알았지만.. 조금 더 연장이 되면서, 집이 너무 가고 싶은 거예요. 베트남도 그립고 가족들도 그립고.. 그때 조금 힘들었던 것 같아요. 그래서 한 동안은 정말 힘도 없고 조용히 지냈던 것 같아요."Q. 스푼에서 일하는 것에 대한 장점은?"일단, 사람들이 너무 좋아요. 정말 다들 너무 좋은 사람들이고 열정적이에요. 한국 사람들이 열정 넘친다는 건 알았지만 스푼에서 일하시는 분들은, 정말 똑똑하고 좋은 사람들이 많아서 배울 것도 많고요. 매일매일 새로운 무언가를 배울 수 있다는 것이 가장 장점인 것 같아요. 저 또한 이곳에서 현지 직원들에게 많이 배우려고 하고 또 나누려고 하고 있고, 다들 잘 따라와 줘서 감사하게 생각하고 있어요. 아! 무엇보다 진짜 '실전 마케팅'을 배울 수 있다는 점이에요. 어떤 책으로 배우는 것보다도 가장 효과적이고, 효율적이에요."Q. 어떤 사람과 일하고 싶으세요?저는 일단 베트남 문화와 관습을 잘 아는 사람이었으면 좋겠어요. 로컬라이징이 가장 중요하다 보니 문화적으로나 정서적으로 사람과 문화를 이해 잘하는 그런 공감대가 있는 사람이 필요하니까요. 무엇보다 어느 나라건 일하는 '태도'가 가장 중요하지 않을까요?당신의 사생활이 궁금합니다Q. 본인이 추구하는 인생 KPI는?"저는 크게 2가지 목표를 가지고 살아요. 첫 번째로 좋은 직장에서 행복하게 일하는 것이고 (이건 이루었네요)다른 하나는 좋은 사람과 결혼해서 3명의 아이들을 기르는 것이 꿈이에요. 하하.. 하나만 남았어요"Q. 한국에 있을 때 가장 그리웠던 건?"1. 닭발 : 베트남에서 닭발 있는데, 한국이랑 맛이 좀 달라요. 베트남식 닭발이 너무 그리웠고요.2. 스쿠터 : 스쿠터가 타고 싶었어요. 한국에선 지하철이나 버스를 타니까요. 베트남에선 매일 스쿠터 타고 다니는데 한 동안 느낌이 정말 이상했어요."Q. 스푼에 오기 전 베트남에선 어떤 일을 했었나요?"먼저 저는 스푼에 오기 전에 인터내셔널 대학교에서 마케팅 커뮤니케이션을 했었어요. 그때는 보통 프랑스에서 오신 교수님들과 많이 일을 했어요. 그리고 대학생들과 일하다 보니 자연스럽게 어린 친구들의 트렌드라던지 행동을 이해하는데 도움이 많이 되었던 것 같아요. 그리고 제 생각에, 베트남 회사들은 정말 엄청 독단적이고 강압적이에요. 상사가 말하는 게 무조건 정답이고, 상사에 말에 거부할 수 없는 일방적인 커뮤니케이션이 오고 가요. 정치질도 엄청 심하고요. 한국도 물론 그런 회사는 있겠지만 베트남은 정말 비교도 안될걸요"Q. 또다시 한국에서 살 생각 있나요?"음.. 사실 아주 가~끔 한국이 그립긴 한데.. 그래도 전 베트남이 좋아요. 물론 한국 음식, 쇼핑몰.. 다 너무 엄청 그립긴 하죠. 그래도 제가 에너지를 낼 수 있는 곳은 베트남인 것 같아요. 그래서 가서 살진 않을래요! 하하.. 가끔 출장은 가면 좋겠어요"From Ho Chi Minh to Seoul"I really want to take all of my team members to Korea with me! so we all can meet up in person, and I am trying my best to reach our KPI so that the dream comes true!"
조회수 2126

서비스 단계별로 개선하기

안녕하세요. 스포카 UX 디자이너 남유정입니다.서비스를 만드는 회사나 팀에서는 많은 경우 애자일, 린 등의 방법론을 실천하기 위해 노력합니다. 하지만 실무를 진행하다 보면 여러 가지 상황들로 인해 길을 잃습니다. 추정시간은 이미 예측을 벗어났고, 목표했던 배포 날짜도 한참 지나가 버립니다. 특히 서비스 대규모 업데이트를 앞둔 경우, 이러한 문제는 더욱 심화됩니다.이번 포스팅에서는 서비스 개선을 위해 대규모 업데이트를 목표했다가, 단계별로 서비스를 최적화하는 방식으로 전략을 선회하면서 이를 위해 어떤 과정을 거쳤는지를 실사례를 들어 소개합니다.스프린트 단위로 일하는데, 서비스는 워터폴한 아이러니실무를 하다 보면 서비스 배포 주기를 늘어지게 하는 요인은 여러 가지가 있습니다. 특히 저희의 발목을 잡았던 주된 요인은 다음과 같았습니다.기존 코드로 인해 기능 추가 및 디자인 개선이 어려워 새로 만드는 결정을 함별도의 제품 라인을 만들어서 신규 서비스를 선보여야 하는 비즈니스 상황이 발생함요구사항을 모아보니 서비스 설계가 비대해졌음서비스 사용 환경상 잦은 배포가 쉽지 않은 경우가 있음때로는 잦은 업데이트로 인한 고객이 피로감을 호소함이런 일들을 겪으면서, 업무는 매주 스프린트 단위로 진행하면서도 서비스 배포 주기가 짧게는 1달, 길게는 6개월을 넘기기도 하는 기형적인 상황이 발생했습니다. 버그를 고치거나 사소한 요구사항을 반영하는 이슈들은 그나마 스프린트 주기와 일관성을 가졌지만, 새 기능을 업데이트 하거나 신제품을 선보이는 프로젝트를 진행할 때에는 일정이 엿가락처럼 늘어지곤 했습니다.신기능이나 신규 서비스는 운영 중인 제품이 아니라 사용하는 고객이 없음사용하는 고객이 없으니 피드백이나 인입이 없어, 타임라인에 둔감해짐특히 기존 제품을 리뉴얼 하려고 할 때코드 유지보수가 어렵고, 크고 작은 빚이 많아서 새로 만드는 선택을 함멀쩡히 돌아가는 기존 기능을 똑같이 새로 만드는 비용이 추가됨릴리즈 시기가 미뤄지면서 그간 수집된 요구사항이 더 추가됨미뤄짐의 무한 반복이런 문제를 반복하던 중, 저희는 전환점이 되는 사건을 맞이했습니다.가장 많이 쓰는, 개선점이 산처럼 쌓인 서비스 개선을 시작하다저희는 2017년 3분기에, 도도 포인트 어시스트라는 프로그램을 개선하고자 마음먹었습니다. 결제 후 점원이 매장 POS나 컴퓨터에서 결제 금액을 입력하면 적립할 포인트를 계산해주는 프로그램이며, 다음과 같은 특징을 갖고 있습니다.도도 서비스 라인업 중 유일한 윈도 설치형 프로그램구형 POS가 많은 한국 매장 환경상, 윈도 XP까지 동작을 커버해야 하는 제품홀로 분리된 개발환경, 회사 내 윈도 개발인력 많지 않음상기한 이유로, 2012년경부터 메이저 업데이트 없이 유지보수만 하던 제품덕테이핑된 코드와 서비스 설계, 디자인이 매우 많이 남아있는 제품그럼에도 POS를 주로 쓰는 한국 특성상 고객이 가장 많이 사용하는 프로그램이 서비스를 개선하기로 결정한 만큼, 몇 년 동안 쌓여있던 요구사항을 모아서 신기능을 추가하고 전체 설계를 개편하면서 최신 디자인도 반영하는 거대한 목표를 세웠습니다. 더불어 신기능 설계와 디자인을 진행하는 동안 POS 기기와 도도 포인트 프로그램 간 통신 환경 안정화까지 도모하는 큰 마일스톤도 함께 진행하기로 했습니다. 그래서 통신 환경 안정화를 우선 진행하는 약 3주간, 리뉴얼할 서비스의 전체 기능 설계와 디자인 작업을 완료했습니다.01. 배포 전략을 재고하다프로젝트를 한창 진행하던 중, 사소한 요구사항 응대를 위해 결제 금액을 편하게 입력할 수 있도록 00 버튼을 추가하는 간단한 이슈를 진행했습니다. 그런데 이 기능을 업데이트하고 나서 매장의 항의가 빗발쳤습니다. 00 버튼을 추가하는 김에, 숫자 패드 배열을 최신 버전으로 변경하고 중복으로 있는 액션 버튼을 하나로 줄인 간단한 이슈였습니다. 하지만 업데이트를 진행한 날, 강도 높은 여러 매장의 피드백을 듣고 급하게 00 버튼을 제외한 모든 변경사항을 롤백해야만 했습니다.제품 변경 후 강한 피드백을 받고 하루만에 롤백롤백 후 검토해보니, 이 변경사항은 문제가 있을 수밖에 없었습니다. 결제 금액을 입력하여 적립 포인트를 계산하는 행위는 매우 간단한 행동처럼 보이지만 다음과 같은 특징이 있었습니다.이 행동의 수행 횟수는 매장의 일일 결제 횟수와 같으며, 매우 빈번하게 수행됩니다.행동의 수행 시간은 짧은데, 클릭 이벤트가 매우 많이 일어나는 행동입니다.하루 200번의 결제가 일어나고, 평균 결제 금액이 12,350원이라고 가정할 경우, 각 결제당 6회(숫자 패드 5회, 적립 버튼 1회)의 클릭, 하루 총 1,200번의 클릭 이벤트가 발생합니다.하루 1,200번의 클릭이 발생하는 화면의 배열을 하루아침에 바꿈으로써, 매장의 혼란이 극대화될 수밖에 없었습니다.특히 이 행동은 수행할 때의 집중도가 상대적으로 얕고, 화면의 배열을 거의 외우다시피 하여 순간적으로 수행하는 것이라 더욱 문제가 되었습니다.집중도가 높고 여러 화면을 넘나들어야 하는 전체 흐름이 긴 행동은, 버튼 배열과 디자인의 변경사항에 상대적으로 혼란을 덜 겪습니다. (예, 목록에서 고객을 찾아 선택하여 메시지를 작성하고 발송함)이 일을 겪은 후 제품 개선 진행에 대한 팀 내 불안감이 커졌습니다. 큰 규모의 업데이트를 생각하며 일을 진행하고 있었으나, 더욱 신중하게 접근하지 않으면 나중에 더 큰 반발이 있을 수도 있겠다는 사실을 뼈저리게 느꼈습니다.02. 고객이 부담스러워하지 않는 단위로 배포하자이 문제를 해결하고자, 부분 배포 전략을 수행하는 것을 제안했습니다. 제안한 내용은 다음과 같습니다.우리가 가장 중요하게 해결하고자 하는 문제가 무엇인가?리뉴얼 자체가 목적이 아니다. 해결하려는 문제를 다시 분명히 하자.고객이 최대한 자연스럽게 업데이트 내용을 받아들일 수 있는 순서와 단위로 배포하자.‘이번 업데이트의 개선사항은 무엇입니다.’를 한 마디로 설명할 수 있는 단위로 나누자.기존의 행동 흐름에서 자연스럽게 연결되는 시나리오를 가진 기능을 먼저 배포하자.새로운 기능을 추가한다면, 기존의 행동, 디자인과 공통 속성이 있는 것을 먼저 배포하자.몇 년간 고객이 학습한 부분을 계승하면서 최신 디자인 기조를 담을 수 있도록 하자.각 단위는, 작업부터 실 배포까지 추정 기준 2주일 내로 가능한 단위인지 점검하자.이에 따라 리뉴얼할 사항들을 쪼개서 전체 리스트업 하고, 새롭게 단위를 나누어 우선순위를 배열했습니다.리뉴얼할 사항을 적절한 단위로 쪼개서 배포 순서를 결정03. 배포 단위에 맞게 중간 전략을 설정하다우선순위를 재배열한 후, 이상적인 상태의 설계와 디자인을 쪼개서 현 버전에 부분적으로 신기능이 들어가도 전체 서비스 사용 흐름과 디자인에 문제가 없도록 중간 단계를 재설정했습니다. 또한 기능을 구현하고 있는 동안에는, 바로 다음에 구현될 기능만 잘라 워킹 프로토타입을 만들어서 내부 테스트를 다시 수행했습니다.이상적인 상태에서 한 단계 정도 수준을 낮춘 중간 전략을 설정04. 검증 단계를 더 추가하다기능 구현 이후에는 로컬에서 QA를 하는 것이 아니라, 나이틀리 빌드1 배포 버전으로 실 서버에서 동작하는 제품을 사용하면서 QA를 진행할 수 있도록 했습니다. 이 과정에서 서비스 교육팀, CS팀 등과도 함께 QA를 진행하여, 변경사항에 대한 사내 공유를 강화했습니다.QA가 완료된 후에는 전체 고객에게 바로 배포하지 않고, 부분 배포 기간을 1주일 두어 적어도 30명의 고객이 1주일간 사용해보고 크리티컬한 문제가 없다고 판단된 후 전체 배포를 진행했습니다.효과신규 기능이 올라갈 때의 프로세스를 전체적으로 변경한 후, 다음과 같은 장점을 경험했습니다.1. 예측 가능한 작업 추정추정 기준 2주일 이내로 배포할 단위를 설정했기 때문에, 추정 예측이 훨씬 높아졌습니다.2. 업데이트 내용에 집중된 고객 피드백 수집하루 수십 번~수백 번을 사용해야 하는 제품이기 때문에 고객이 업데이트로 인한 변경사항을 학습해야 하는 피로도가 지나치게 높으면, 개선된 부분에 대한 피드백을 듣기 어려웠습니다. 최악의 경우에는 새로운 기능에 대한 피드백을 듣기도 전에 손에 익은 예전 버전으로 롤백해달라는 요구를 듣기도 했습니다. (실제로 릴리즈의 형태로 업데이트를 강행한 제품은 지금도 종종 이런 문제가 있습니다.)하지만 배포전략 변경 이후에는 한 번의 업데이트에 고객이 집중할 수 있는 하나의 변경 사항을 제공함으로써, 고객은 업데이트된 하나의 기능에만 집중하여 사용할 수 있고, 저희도 업데이트한 기능에 집중된 피드백을 들을 수 있었습니다.3. 활발한 사내 공유부분 배포하기로 전략을 수정한 것은, 고객뿐 아니라 사내에서도 효과를 발휘했습니다.처음 진행한 내부 테스트는 리뉴얼할 제품의 전체 설계와 디자인을 완료하여 제품 전체를 워킹 프로토타입으로 만들고, 약 20분 동안 1명당 10여 개의 과업을 수행하게 하여 피드백을 받는 방식으로 진행했습니다. 사내 직원이라 해도 개편 내용을 그날 처음 확인하는 것이라 변경사항이 지나치게 많기 때문에, 다소 분산된 의견이 수집되었습니다. 또한, 과업 수행 시간이 길어 테스트의 집중도가 저하되는 문제도 있었습니다.그러나 배포 전략 변경 이후에는 배포될 단위별로 워킹 프로토타입을 다시 쪼개서 만들고, 한 번에 하나의 내용에 대해서만 테스트를 진행한 후 피드백을 수집했습니다. 덕분에 훨씬 몰입이 높은 환경에서 테스트가 진행되었고, 한 내용에 대한 심층적인 피드백을 수집할 수 있었습니다.단계별 배포 전략 수행 이후 cafe study 리서치 방식의 변화또한 내부 테스트 자체가 제품 변경사항에 대한 사내 홍보 역할을 하는 부차적인 효과도 있었습니다. cafe study 형식으로 내부 테스트를 진행하니, 곧 배포를 앞둔 신기능이 무엇인지 사내에 자연히 홍보가 되어, 타 부서에서도 여러 채널로 배포 일정을 먼저 물어오기도 했습니다.특히 서비스 교육팀이나 CS팀에는 얼마 전에 눈으로 확인하고 피드백을 준 내용이 업데이트된다는 안정감을 줌과 동시에, 고객이 한 번에 이해할 수 있는 단위만큼 업데이트되기 때문에 업데이트로 인한 인입량이 감소하여 해당 부서의 부담도 줄였습니다.염두에 둘 것어떤 업데이트 안내 문구가 친절하게 느껴지는가?1. 어떤 점이 개선되었는지 고객에게 쉽게 안내해야 합니다.고객이 업데이트를 실행한 전/후 어떤 점이 개선되는지, 또는 어떤 기능이 추가되는지 안내하는 것은 매우 중요합니다. 설명이 필요 없을 정도로 서비스 설계를 잘 했다 하더라도 아무런 안내가 없다면, 시간을 들여 업데이트를 진행한 고객에게 개선점을 스스로 찾으라고 하는 꼴이 됩니다. 사소한 버그를 수정했다 하더라도, 어떤 부분을 수정하고 개선한 것인지 간결하고 구체적으로 안내되면 고객에게 기본적인 신뢰감을 줄 수 있습니다.2. 업데이트를 기꺼이 수행한 고객을 실망하게 하지 않아야 합니다.업데이트 이후 ‘이상하다. 버그 없네’ 할 수 있다면 좋겠지만, 대개 예상치 못한 문제가 발생할 확률은 항상 존재합니다. 이때 자칫 단계별 배포 작업에만 집중하면 다음 스텝에 배포할 내용을 구현하는 것만 계획하고, 업데이트 직후 모니터링을 소홀히 하기 쉽습니다.최신 업데이트 버전을 바로 설치한 고객은 우리 서비스를 가장 활발히 사용하고 있는 고객일 것입니다. 하지만 업데이트를 일찍 진행한 고객일수록 문제를 빨리 밟을 확률은 더 높습니다. 특히 단계적으로 배포하여 업데이트 횟수를 늘린다면, 서비스를 활발히 쓰는 고객이 문제를 겪게 될 빈도는 더욱 늘어납니다.따라서 단계별로 배포 횟수를 늘릴수록 테스트 코드를 추가하고 QA 프로세스를 강화해야 합니다. 그럼에도 문제가 발생했다면 빠르게 문제를 해결할 수 있도록, 업데이트 직후에는 모니터링과 문제 상황에 대응할 여유 슬롯을 두는 것을 잊지 않아야 합니다.여담1. 이상적인 시나리오와 디자인 작업의 필요성에 대하여이번에는 약 3주간의 기간을 거쳐, 리뉴얼할 제품의 이상적인 전체 시나리오와 디자인 원칙을 먼저 확립하고 이를 팀 내에 공유한 후, 최종 목표로 가기 위한 쿠션 역할을 하는 중간 전략을 다음에 설정하는 방식으로 프로젝트를 진행했습니다. 중간에 전략을 변경한 것이긴 하지만, 최초에 작업한 이상적인 상태의 제품 설계는 중간 전략을 설정할 때 ‘기준선’의 역할을 함과 동시에, 팀 내에 제품의 전체 방향성을 공유하는 매개의 역할을 했습니다.이러한 효과를 체험했으므로 다음에도 프로젝트 수행시 제품 설계와 디자인의 최종 목표에 대한 작업을 선행하려 합니다. 하지만 이때 작성하는 이상적인 시나리오와 디자인은 ‘반드시 그렇게 되어야 하는 목표’가 아닌, 공유와 매개, 중간 전략을 위한 기준이 되는 역할을 해야 합니다. 또한 이번에는 이 작업에 3주가량 시간을 썼는데, 보다 최적화할 수 있는 방향을 모색하고 있습니다.2. ‘레거시’라는 단어의 제한적인 사용에 대한 팀 내 논의서비스를 오랜 기간 운영하다 보면, 자연히 팀 내에서 ‘레거시(legacy)’라는 단어를 자주 사용하게 됩니다. 하지만 현재 고객이 사용하고 있는 서비스를 받치고 있는 코드나 디자인을 습관적으로 레거시라고 이야기하는 것은, 서비스를 ‘뜯어고쳐야 할 대상’으로만 바라보게 되는 부작용이 있어, 이 단어를 최대한 자제하여 사용하자는 팀 내 논의가 있었습니다.4. 함께 읽으면 좋은 아티클 소개Things You Should Never Do, Part I 트렐로 서비스를 개발한 것으로 유명한 프로그래머 Joel Spolsky의 글입니다. 이미 돌아가는 서비스의 코드가 엉망이라고 생각한다고 하여, 섣불리 재작성을 시도하는 것을 ‘절대 하지 말아야 할 일’이라고 이야기합니다. 코드 뿐 아니라 서비스 설계와 디자인에도 적용되어야 할 내용입니다. 이 아티클이 수록된 책은 한국어로도 번역되어 있습니다.마치며저희는 아래와 같은 상황에서 많은 시행착오를 겪으며, 안정적으로 기존 서비스의 개선 프로젝트를 실행하는 방법을 이번에 배웠다고 생각합니다.서비스를 운영한 지 7년 차. 제품 설계와 디자인, 코드 모든 것에 많은 빚이 남아있었습니다.그러다보니 전체 서비스를 개편하는 설계를 하고, 디자인을 전면 개편하고, 코드도 뒤엎는 시도를 2016년부터 지속하여 수행했습니다.그 과정에서 제품을 만드는 사람과 이를 받아들여야 하는 고객 모두가 매우 힘들다는 것을 경험했습니다.여러 해 동안 서비스를 유지보수 해온 팀이라면, 제품 개선에 자연히 많은 욕심이 생깁니다. 하지만 기존의 시나리오와 디자인, 코드 베이스로 오랜 기간 서비스를 해왔다면, 현재의 서비스 또한 어느 정도 ‘고객이 이해하고 사용할 수 있는 상태’라는 믿음을 가져야 합니다. 또한, 서비스를 무조건 대규모로 개선하려고 하는 시도가 자칫 이를 사용하는 고객을 더욱 괴롭게 하는 일이 되어서는 절대로 안 될 것입니다.이번 경험을 계기로 크리에이터 팀 내에서는 이 내용을 백서처럼 공유하고 프로세스를 정하여, 다른 프로젝트를 수행할 때에도 최대한 비슷한 방식의 프로세스를 밟기 위한 정규화를 진행하고 있습니다. 읽어주셔서 감사합니다.#스포카 #UX #디자인 #디자이너 #사용성개선 #인사이트 #일지 #후기
조회수 1364

이유가 필요한 #데이터

그렇다. 항상 이유가 필요했다.무엇을 하든지 자세하진 않더라도 대략적인 방향성이 잡힌 이유가 필요했다. 그래서일까. 그 때문에 내 인생의 방향성을 찾기 위해서 어른들이 흔히 말씀하시는 쓸데없는 짓(?)을 꽤 많이 했던 것 같다. 핀다에 합류하게 된 것도 그 때문이었다. (그렇다고 핀다의 조인한 게 쓸데없는 짓이라는 뜻은 아니다) 학교에서 가르치는 과목들을 왜 배우는 지도, 실무에서 어떤 식으로 쓰이는지도 모르고 수업을 듣자니 좀이 쑤셨다. 그래서 선택한 게 ‘인턴’이었다. 컴퓨터 공학을 전공하고 있는 나는, 미래창조과학부에서 주최한 이공계 인턴쉽 프로그램 ‘오픈 챌린지'에 참여한 덕분에 ‘핀다’를 만날 수 있었고, 얼떨결에 우수 인턴으로 선정되었다. 25개의 인턴쉽 참여 기업들과 참여 인턴들 앞에서 대표로 성과공유를 발표해보는 좋은 경험도 해볼 수 있었다. 인턴쉽이 끝나고 정식 인턴으로 채용되어 현재 나는 핀다의 Database를 맡고 있다.미래창조과학부에서 주최한 이공계 인턴쉽 프로그램 ‘오픈 챌린지' / 우수인턴으로 발표하는 영광을!핀다에서의 많은 업무 중에서도 제일 재미있었던 것은 데이터 분석(Data Analysis)이다. 특히, 데이터를 여러 관점에서 나누고 그 안에서 인사이트를 내는 것은 굉장히 두근거리는 일이었기 때문이다. 처음 입사했을 때 간결하게 정돈되어 있는 Data Sheet를 보고 감동했을 정도였으니까.# 소비자(유저) 리뷰 분석핀다에서는 사용자들의 실질적인 리뷰를 중요시한다. 다만, 우리나라 문화상 (미국에 비해) 리뷰에 대한 태도가 자발적이지 못한 편이다. 따라서, 퀄리티 높은 리뷰를 많이 얻는데 굉장히 힘이 드는 것도 사실이다. 그렇게 힘들게 얻은 상품 리뷰가 어느덧 1,000개 정도가 되었다. 이를 분석함으로써 현재 우리 서비스를 이용하는 고객들은 어떤 고객들이고 금융 상품을 선택할 때 어떤 특징들에 민감한지, 나아가 앞으로 핀다가 집중해야 하는 고객은 어떤 특성을 가진 고객인지를 알아보는 데에 기본 바탕이 될 수 있다.1) 먼저 상품 카테고리 별 만족도는 ‘주택담보대출’이 가장 높았으며 ‘신용대출’이 가장 낮았고 할 말이 제일 많았던 카테고리는 전세대출(리뷰당 단어 수 전체 평균: 33.4 / 전세대출 평균: 42.2)이었다.2) 내용면으로 봤을 때 ‘금리’에 대한 관심이 높다는 것을 다시 한번 확인할 수 있었고 (‘금리’ 언급 비율: 55.9%) 흥미로웠던 것은 2030을 타겟으로 하는 핀다에서의 리뷰임에도 직원 혹은 지인 추천, 오프라인 가입과 같은 ‘오프라인 관련 요소’(21.6%)가 끼치는 영향이 적지 않다는 것, 그리고 영업점이 가까워서 혹은 처음 계좌를 만들 때 엉겁결에 가입하게 되는 ‘주거래은행’(17.5%) 역시 상품을 선택하는 데에 있어서 크게 기여한다는 것이다.3) 여담이지만 오프라인, 온라인 상담 관련한 내용(30.9%)도 많았는데 그중 83%가 상담이 친절했다거나 설명을 알아듣기 쉽게 해주었다는 등 긍정적인 내용이었다. 보통 리뷰는 리워드가 있는 이벤트성이 아닌 이상 부정적인 내용이 많을 거라고 생각했던 나에겐 신선한 충격이었다.핀다가 전하는 경제 소식, 오늘의 뉴스는 매일 오전8시에 업데이트 된다.# 오늘의 뉴스 분석핀다에서는 매일 아침 금융 관련 주제를 가진 ‘오늘의 뉴스’를 페이스북 페이지에 게시한다. 당연한 소리겠지만 같은 시간대에 올려도 어떤 기사는 좋아요, 공유, 도달률 등의 수치가 좋고 어떤 기사는 좋지 못하다. 그리고 이건 핀다의 페이스북 페이지 전체 도달률에 영향을 주게 되는데 때문에 오늘의 뉴스에 엮여있는 수치들을 분석하여 페이스북에서의 뉴스는 어떤 주제를 어떤 식으로 게시해야 반응이 좋은 지 인사이트를 내야 했다.도달률을 결과로 보고, 원인으로 기사 주제, 게시할 때 사용하는 헤드라인과 사진 등이라 했을 때,데이터를 분석하는 일에는 어느새 매의 눈이 되는 나! 집중 :)A. 전기세, 공카족(카페에서 공부하는 사람들)과 같이 생활에 밀접한 관련이 있는 주제이거나 특정 영화나 미디어의 어투, 워딩을 패러디한 헤드라인을 사용했을 경우, 또 전체적인 글의 분위기가 비교적 가벼운 기사들이 도달률이 높았다.B. 반면에 사드 배치로 인한 중국 관련 주식 하락, 미국 기준 금리 상승과 같이 거시적이거나 노령화, 보이스피싱과 같이 SNS 이용자의 대부분인 2030에게는 와 닿지 않는 주제인 기사는 도달률이 낮았다.C. 그리고 다른 부수적인 조건에 상관없이 높은 도달률을 달성하는 기사 주제가 있었는데 그건 바로 대기업이나 정부의 비리 관련된 주제의 기사였다. 요즘 사회 분위기를 대변하는 데이터가 아니었나 싶다. ‘어떤 데이터든 그 데이터가 발생된 이유(원인)가 있고 그 데이터는 또 다른 결과의 이유가 되기도 한다. 하지만 그런 데이터들 역시 목적이 없으면 한낱 글자나 숫자에 불과하다. 즉, 데이터는 그에 맞는 목적을 갖게 될 때 빛난다.’라는 게 현재까지 내린 결론이다.앞으로도 핀다는 데이터를 통해 다양한 소비자들의 반응을 보고 컨텐츠와 서비스의 방향을 고도화해 나갈 예정이다. 그 과정에서 내가 분석한 인사이트들이 반영이 되고, 조금씩 더 나은 컨텐츠와 더 발전된 서비스로 세상과 만날 수 있다면 정말 기쁘지 않을까! :)ㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎㅎ핀다의 데이터 꿈나무,권영진 드림Database AnalystYoungjin from Finda#핀다 #데이터애널리스트 #DataAnalyst #팀원소개 #인사이트
조회수 571

4차산업혁명과 새로운 협업방식

증기 기관차로 대변되는 1차산업혁명, 전기를 이용한 대량 생산의 2차산업혁명, 인터넷이 이끈 3차산업혁명, 이제는 3차산업혁명을 지나 4차 산업혁명은 18세기 초기 산업 혁명 이후 4번째로 가장 중요한 산업 시대입니다. 현재는 3차산업혁명으로 다져진 인터넷으로 기계, 화학, 디지털 등의 서로 다른 분야가 융합되는 시대로써 4차 산업혁명의 핵심기술들로 인해 자동화. 지능화가 빨라지고 있고 AI, Big Data 등의 관련 일자리도 늘어나고 있습니다. 지금 4차 산업혁명 사회에서 우리에게 가장 필요한 능력은 무엇일까요?※ 사진출처 : https://www.autoexpress.co.uk/car-news/91046/gm-onstar-the-future-of-connected-car-tech4차산업혁명에서 생존과 진화를 위한 핵심 키워드는 바로 “융합과 협업”입니다. 아마존은 물건 하나 가지고 있지 않으면서 세계최대 유통업을 하고 있고, 에이비엔비는 객실하나 없으면서 숙박사업을 하고 있으며, 우버는 자동차 한대 보유하지 않고 운송업을 하고 있습니다. 곧 Google과 GM이 자동차 산업에서 경쟁하는 시대가 예고되고 있으며, 이미 CNN보다 페이스북은 더 큰 미디어사가 되었습니다. 업종간의 경계가 사라지면서 전혀 다른 업을 한다고 생각했던 회사와 콜라보레이션을 하면서 새로운 사업을 하기도 하고, 경쟁사라고 생각했던 회사와 신사업을 함께 하기도 합니다. 때문에 4차 산업혁명 시대에는 긴밀한 연결을 통한 사업, 기술 등 융합과 협업이 중요합니다.※관련글 : https://www.forbes.com/sites/aarontilley/2017/01/27/why-apple-joined-rivals-amazon-google-microsoft-in-ai-partnership/#4bfe1e583228이러한 시대흐름 속에서 우리는 일하는 방식도 바꾸어야 합니다. 회사 안에 서버를 두고 내부시스템으로 직원들과 이메일로 업무를 하던 방식은 벌써 수십년전 과거의 방식입니다. 보안이라는 키워드로 유기적인 협업을 가로막고 있던 구축형 시스템은 한국 소프트웨어의 글로벌 경쟁력을 떨어뜨려왔으며, 소프트웨어 산업전반을 망가뜨려왔습니다. 이제는 오히려 투명하게 공개하고 최대한 많은 직원과 파트너사, 고객이 직접 참여하며, 더 혁신적인 서비스를 만들어내야만 4차산업혁명 시대에 살아남을 수 있습니다. 팀장의 FW: (포워딩 메일)을 통해서만 사업부장에게 전달되고, 사업부장의 FW: (포워딩 메일)을 통해서만 경영자에게도 전달되던 방식은 역동성을 망가뜨리고, 변화의 속도에 뒤쳐지게 합니다. 또한 외부 파트너 협력사, 고객사와는 단절된 상태로, 전문분야의 지식이 없음에도 불구하고 회사내부의 사정을 핑계로 외부의 더 좋은 아이디어, 빠른 피드백을 수용하지 못함에 따라  정말 중요한 내용은 경영자에게 전달되지 못하고 필터링 당하기 일수입니다. ※ 사진출처 : 협업툴 플로우그럼 일하는 방식을 잘 바꾸어나가려면 무엇이 필요할까요?업무 도구입니다. 특히 플로우와 같은 협업 도구는 프로젝트를 중심으로 각 분야별 전문가들이 유기체처럼 협업할 수 있게 합니다.기존의 업무방식을 변화하기 위해서는 일부 비용이 발생하겠지만 그 비용을 감수하고 변화하는 기업과 그렇지 못한 기업의 10년 뒤는 반드시 다를 것입니다. 경영자들이 회사의 사업전반을 이해하고 판단하는 시각, 실무자들의 비효율을 줄이고, 창의적이고 생산적인 일을 하는 시간이 누적되어 기업의 운명을 달리할 것입니다.협업툴 플로우 바로가기
조회수 1095

진저티프로젝트 1년, 우리는 무엇을 위해 달려왔나?

벌써 1년이 지났습니다. 어느새 4월이 왔으니 말입니다...2014년 저희에게 지워지지 않는 두 기억을 남겼습니다. 한 가지는 우리가 '진저티프로젝트'라는 회사를 만든 것입니다. 법인 등록을 마친 4월 3일은 저희에게 또 하나의 생일이 되었습니다. 창업은 그저 회사를 하나 만드는 과정이 아니었기 때문입니다. 또 다른 우리가 태어나는 것 같은 일이었지요. 우리 안에 새로운 열정을 발견하고 또 새로운 헌신을 요구받는 일이었습니다. 새로운 변화가 버겁기도 하고 가끔씩 우리가 앞으로 잘 해 나갈 수 있을지 불안하기도 했지만, 가슴 뛰고 신나는 삶이 시작된 것 같았습니다.그런데 그때 그 사건이 벌어졌습니다. 너무나 화창했던 봄날, 거짓말처럼 어린 생명들이 깊고 푸른 바닷속으로 차갑게 꺼져 갔습니다. 뉴스를 보는 것이 무서웠고, 순간순간 무겁고 우울한 감정과 생각들이 머릿속을 떠돌아다녔습니다. 무엇이 잘못되었을까 자꾸 되뇌고 죄책감과 상실감에 젖어들곤 했습니다. 대부분의 사람들이 비슷한 감정이었겠지요. 세월호 사건은 그동안 깊게 인식하지 못한 사실을 깨닫게 해 주었습니다. 우리는 서로의 행복과 슬픔에 긴밀하게 연결되어 있다는 것을, 모든 사회의 문제들은 유기적으로 연관되어 있다는 것을 말입니다. 나는 이웃의 삶에 책임이 있는 사람이고 또한 이웃의 삶은 나에게 엄청난 영향을 미치고 있다는 인식이 선명해진 것입니다. 그 인식은 우리가 만들어 가고 있는 진저티프로젝트라는 조직이 어떡해야 하는지에 대해 더 크고 분명한 관점을 가지게 해 주었습니다, 사회를 구성하는 개인들과 조직들이 자신들이 지켜야 하는 올바른 기준과 규칙을 지키지 않았을 때 얼마나 큰 재앙이 일어날 수 있는지, 잘못된 이해관계가 얼마나 큰 희생을 강요하게 되는지, 크고 작은 잘못된 관생에 대해 용인하는 문화가 얼마나 치명적인지 분명히 알게 되었습니다. 무엇보다 권력을 부여받은 이들의 가치와 결정으로 얼마나 많은 이들의 삶이 달라지는지 생생하게 알게 되었지요. 함께 진저티프로젝트를 만들었던 세 사람에게도 깊은 공감대가 있었습니다. 비록 우리가 만드는 조직이 아주 작은 회사일 따름이고 우리의 길이 그리 순탄치 않을 수 있겠지만, 우리가 이 잔인하고 아름다운 4월의 절실한 깨달음을 잊지 말자고 다짐했습니다. 좀 더 많은 대가를 치루더라도 올바른 기준을 스스로 엄격히 지켜가고, 함께 일하는 동료와 파트너, 고개들에게 정직해야 하고 높은 수준의 책임을 가져야 한다는 마음을 새겼습니다. 진저티프로젝트의 사명은 '비영리 조직들이 더 건강하게 성장하고 더 탁월해지도록 돕는 것'입니다. 1년이 지난 지금, 이 사명은 더 무겁게 느껴집니다. 건강한 성장은 올바른 기준을 끊임없이 적용하는 수고를 할 때에만 가능한 길이고 탁월한 성과는 더 책임 있는 자에게만 주어지는 열매인 것을 알았기 때문입니다.진저티프로젝트의 1주년을 맞이하며, 4월의 아프고도 아름다운 두 가지 기억을 다시 한 번 마음에 새깁니다..그리고 저희를 돌아봅니다. 1년 동안 우리가 달려온 길이 첫 다짐에 부끄럽지 않았는지, 그리고 또 다른 1년을 달려갈 마음의 준비가 되었는지 말입니다. 좀 더 고민하고 좀 더 수고하고 좀 더 대가를 치루더라도 첫 마음을 기억하며 한 해를 달려가겠다는 작은 다짐을 해 봅니다.1년 동안 작지만 의미 있는 시도를 할 수 있도록 진저티프로젝트를 격려하고 함께 해 주신 모든 분들께 감사드립니다.#진저티프로젝트 #돌아보기 #창업1년차 #인사이트 #경험공유
조회수 1612

박문수 이야기

출근 첫날 이효진 대표님으로부터 입사 지원 메일을 하나 전달받았다. 이력서를 살펴보니 컴퓨터를 전공하지도 않았고, 현재 개발을 하고 있지도 않았지만 개발자로 일하고 싶다고 적혀 있었다. 개발을 할 수만 있다면 인턴부터 시작해도 좋다고 말했다. 남들이 부러워하는 삼성에 다니고 있는데 어떤 이유로 개발자가 되고 싶어 할까? 궁금한 마음에 한 번 만나보기로 했다. (뽑을 생각은 없었다)첫인상은 그냥 수수한 시골 청년이었다. 나도 입사한 지 얼마 안 되어 회사 주위 식당을 몰라 그냥 눈에 띄는 식당으로 들어갔다. (생각해 보니 그 식당을 그 이후로는 한 번도 가지 않았다) 지난 회사에서 어떤 일들을 했고, 왜 개발에 대한 목마름을 느꼈는지를 들었다. 개발자가 되기 위해 어떤 것들을 포기할 수 있는가에 대한 각오도 들었다.나는 앞으로 일 년 동안 인턴 월급을 받아야 할지 모른다고 이야기했다. 정말 열심히 하지 않으면 그저 그런 개발자가 되어 인생이 꼬일지도 모른다고 경고했다. 그런데도 흔쾌히 도전해보고 싶다고 말했고, 나는 배움의 기회를 제공하겠다는 약속을 했다. 좋은 대학을 나와 어렵게 얻은 직장을 포기하고 다시 새로운 길을 선택하려는 용기를 높이 샀다. 입사일은 3주 뒤로 정했다. 파이썬 책과 웹 프로그래밍 기본 책을 던져주고 모두 읽어 오라고 했다.입사 후 정신없이 3주가 지나고 문수님이 입사를 했다. 첫날 개발 환경을 셋업 하는 것을 도와주었다. 나에게는 너무나도 자연스러운 많은 것들이 그에게는 생소한 것이고 설명을 해야 했다. 문수님이 이해할 수 있는 간단한 것만 설명하고 나머지는 더 크면 알게 된다고 설명을 미루었다.(첫날 전체를 대상으로 자기소개를 하는 문수님. 우리 회사에는 입사자가 전체를 대상으로 자기소개를 하는 문화가 있다. 이 문화의 유래에 대해서는 다시 한 번 이야기해 보겠다.)내가 모든 것을 알려 줄 수는 없으니 코세라 수업을 같이 들어 보자고 이야기했다. 내 기준으로는 너무 쉬운 강의였지만 나는 회사 내에서 공부하는 분위기를 만들어 가고 싶었고 문수님께는 회사에서 필요한 기술 스택을 맛보는 기회가 될 수 있으리라 생각했다. (현재 시점으로 3달째 코세라 강의를 이어서 듣고 있다.)첫 강의인 HTML5를 들으면서 간단한 버그 수정부터 문수님께 요청을 하기 시작했다. 오자를 고치거나 박스의 위치를 조정하는 일부터 시작했다. 입사하고 3일이 지나서 첫 번째 배포를 했다. 처음이 어려웠을 뿐 간단한 수정을 하는 것에는 일주일이면 충분했다. 그때부터는 git과 git flow를 알려주기 시작했다. 착한 신입은 마음이 열려 있어서 불만 없이 모든 것을 따라 했다. 어느 정도 이해를 했는지는 알 수가 없다. 하지만 프로그래밍을 배우는 길에는 머리보다 손이 먼저 익히는 것들도 많다.3주가 지난 시점에는 첫 번째 데모를 전체 앞에서 보였다. (우리는 스크럼을 하고 있어서 매번 스크럼이 끝나는 날에 개발자가 스스로 자신이 개발한 것을 전 직원 앞에서 데모를 보인다.) 지금은 잠깐 문을 닫은 채권 거래소에서 채권 판매자가 손쉽게 채권을 팔 수 있는 기능이었다. 그것을 만들기 위해 일주일 넘게 꽁꽁 머리를 싸매고 있었고, 결국은 결과물을 내놓았다.(첫 번째 데모를 보이는 문수님. 긴장한 모습이 느껴진다. 데모를 마치고 다들 뜨거운 박수를 보내주었다)내가 만들면 2시간이면 끝났을 기능이라 일주일간 고생하는 것을 옆에서 지켜보는 것은 상당한 인내를 필요로 했다. 하지만 최대한 혼자만의 힘으로 첫 번째 과제를 해내기를 원했기에 최소한의 도움만을 주었다.이제 문수님이 입사한 지 만 3개월이 되었다. 그동안 많은 변화가 있었다. 회사에서 조그마한(점점 커지고 있다) 수정/기능들은 대부분 맡아 주고 있기에 다른 개발자들은 좀 더 어려운 문제를 풀 수 있게 되었다. 처음에는 코드 리뷰를 온라인으로 할 수가 없었다. 옆에 앉아서 어떤 부분을 어떻게 고쳐야 하는지를 구체적으로 알려 주어야 했고, 이해하지 못하면 관련된 지식을 얻을 방법을 알려 주어야 했기 때문이다. 하지만 이제 github의 PR을 보고 코멘트를 다는 것 만으로 코드를 적절히 수정할 수 있게 되었다. 얼마 전에는 하루에 1억이 넘는 이체를 하는 내부 시스템을 80% 이상 만들기도 했다. (내가 뼈대는 잡아 주기는 했다.)개발자라 부를 수 있는 기준이 따로 있겠냐만은 나는 이제 그를 개발자라 부를 수 있을 것 같다. 아마도 오늘의 문수님에게는 “개발자 박문수 님”이 가장 듣고 싶은 호칭이 아닐까 생각한다.  마지막으로 전공하지도 않았고, 첫 직장과도 관련 없는 새로운 도전을 하는 문수님의 용기에 박수를 보낸다. 내게 말하지는 않았지만 수많은 주위의 걱정과 우려를 이겨내기 위해 최선을 다하고 있으리라 생각한다. 나는 앞으로 그에게 “문수님은 지금 어디로 가고 있나요?"를 종종 물어봄으로 내 역할을 해야겠다.8퍼센트는 멋진 저희 팀과 함께 할 분들을 찾고 있습니다. 특히 저보다 개발을 잘 하시는 시니어 개발자, 그리고 3년 뒤에는 저 보다 잘하게 되실 주니어 개발자는 제가 모시러 갑니다. [email protected]로 연락 주세요.박문수 님이 이체 시스템 개발을 할 때 Toss의 이체 대행 API를 사용했습니다. 정말 간편합니다. 관련 개발을 하시는 분들은 사용해 보세요.#8퍼센트 #에잇퍼센트 #채용 #채용후기 #개발자 #개발자채용 #인턴 #인턴채용 #스타트업CTO
조회수 1552

역사뒤로 사라진 페블에게서 배우는 교훈

2012년 4월 킥스타터(Kickstarter)와 함께 역사적인 마일스톤을 만든 스타트업이 있다. 바로 페블(Pebble)이다. 10만불 목표금액을 2시간만에 달성하더니 6일만에 킥스타터의 펀딩 최고가를 경신하고 결국 69,000여명의 펀딩으로 $10.3M를 달성하면서 하드웨어 스타트업의 붐을 일으킨 장본인이기 때문이다. 하지만 이 영광도 잠시, 2016년 12월, 페블은 문을 닫고 역사속으로 사라졌다[1]. 도대체 무슨 일이 있었던 것인가?페블 킥스타터 캠페인 결과페블의 성공가도페블의 CEO Eric Migicovsky는 2011년 Y-combinator 겨울배치에 속해 있었지만 제대로 투자를 이끌어내지 못한다. 그해 애플의 스마트워치가 출시된다는 소문이 무성해지기 시작했고, Eric은 그 타이밍을 놓치지 않기 위해 크라우드펀딩을 이용하기로 마음먹는다. 2012년, 결국 킥스타터에서 잭팟을 터뜨리고 페블은 일약 하드웨어 스타트업과 스마트워치 웨어러블의 스타로 등극한다. 애플의 워치때문에 생긴 관심이 페블을 통해 발산되는 어부지리도 있었던 덕인지, 2014년 누적 백만대를 팔아치우더니 2015년 페블타임(Pebble Time)으로 다시 킥스타터에서 17분만에 목표금액 50만불을 달성하고 최종 75,000여명에게서 $20.3M를 달성하는 기염을 토했다.쇠락의 길하지만 연이어 2016년 5월 킥스타터에 런칭된 페블 TIME2와 페블 CORE는 펀딩에 성공했음에도 불구하고 그 해 말까지 배송이 진행되지 않았다. 이미 자금은 바닥 나 있었고 재정은 계속 적자상태였다. 결국 2016년 12월 회사의 문을 닫고 핏빗(Fitbit)에 인수되게 된다. 2015년 시티즌이 제안한 인수금액 $740M과 인텔의 $70M에도 무산되었던 페블인수가 핏빗에 간신히 부채를 청산할 $40M도 채 안되는 금액에 인수된 것이다. 웨어러블 하드웨어의 신화에 어떤 문제가 있었기에 4년만에 천당과 지옥을 오가는 롤러코스터 같은 궤적을 그리게 된 것인가?페블이전 춘추전국시대핏빗(Fitbit)은 2007년 5월에 한국계 James Park이 창업한 웨어러블 회사이다. 2008년 9월 첫 액티비티 트래커인 핏빗 트래커(Fitbit Tracker)를 출시하여 2006년 나이키+가 만들어 낸 시장을 함께 키우면서 성장을 한다. 2011. 10월 Fitbit Ultra가 출시되기전 3년간 한가지 제품으로 시장을 공략하며 규모에 맞는 내실을 만드는데 주력을 한다.2011년은 액티비티트래커 시장의 춘추전국시대가 열리는데 1999년부터 블루투스 해드셋과 스피커를 만들던 조본(Jawbone)이 조본업(Jawbone UP)을 출시하면서 신규사업을 전개하고, 애플의 CEO였던 존스컬리는 아이폰용 의료기기를 만들던 AgaMatrix의 멤버들과 미스핏(Misfit)이란 회사를 설립하고 샤인(Shine)이란 제품을 출시한다. 2012년에는 나이키가 퓨얼밴드(Fuel band)를 출시하며 가세한다. 이때만해도 단순한 액티비티 트래커들이 10~20만원에 팔리던 시기였으며 아이폰의 시장 확대와 맞물리면서 건강을 위한 최고의 악세서리이자 유망한 장미빛 시장이었다.  웨어러블 시장의 변화1. 초기 웨어러블 시장은 소비자에게도 생소한 시장이었다. 그래서 공급자와 소비자가 모두 경험이 없는 상태에서 제품을 만들고 구매 해 사용했다. 시장조사기관들은 웨어러블 시장에 대해서 스마트폰과 함께 낙관적인 전망들을 쏟아냈고 소비자는 신기한 앱들과 디바이스들을 구매하며 새로운 패러다임을 즐겼다. 하지만 경험이 쌓이기 시작하면서 소비자들은 웨어러블에 대해 학습효과가 축적되기 시작한다. 불편한 착용감, 배터리, 생각보다 불편한 UX, 기대이하의 유용함들이 경험을 통해 쌓이면서 진성소비자와 지나쳐가는 소비자로 분리되기 시작한다. 결국 웨어러블 마켓의 시장전망은 계속 축소 수정되고 있으며 특별한 티핑이 오기전까지는 지리한 성장을 이어 나갈 것 이다.2. 웨어러블 마켓이 진화하기 시작한다. 페블이 주도하던 스마트워치와 핏빗이나 미스핏, 나이키+등이 주도하던 액티비티트래커 시장에 두 강자가 나타난다. 2014년 7월에는 샤오미의 미밴드가 13불대 초저가 액티비티트래커로 시장에 진입을 한다. 2015년 4월 소문만 많았던 애플워치가 아이폰과 심리스(seamless)하게 연동되는 프리미엄 스마트워치로 출시가 되고, 첫 2사분기에만 420만대를 판매한다. 시장은 급속도로 양극화가 되며 샤오미는 더 개선된 미밴드 펄스를 출시하고 삼성은 흥행참패에도 불구하고 기어시리즈를 계속 출시한다. 이렇게 웨어러블 시장은 자본력과 스마트폰과의 연계성을 무기로 애플이 장악한 스마트워치 시장과 저가의 중국산 트래커들, 그리고 핏빗의 체제로 양극화가 심화된다.   3. 2014년 애플워치 출시이후, 시장을 관망하던 기존 시계 업계들이 변화가 불가피함을 깨닫기 시작한다. 소프트웨어라는 새로운 도구에 미숙하다는 한계를 인지한 전통 워치업계들이 2015년 웨어러블 소프트웨어를 위해 러브콜을 보내기 시작하고 자체적으로도 투자를 시작한다. 본격적으로 브랜드를 가진 전통 시계업계와 스마트워치의 경쟁구도도 만들어지기 시작한다.         웨어러블 시장의 정체이렇게 웨어러블 시장은 변했고, 시련기가 다가온다. 양극화와 함께 시장은 정체되고 사람들은 있던 웨어러블 기기들도 서랍에 넣고 꺼내지 않기 시작한다. 먼저 시장의 변화을 읽은 Misfit은 2015년, $260M을 받고 Fossil에 인수된다. 페블이 시티즌의 제안을 거절한 것과는 대비되는 선택이었다. 2016년말, 자금이 떨어지고 사업여력이 없어진 Jawbone은 피트니스트래커 시장의 포기를 선언하고 헬스케어 서비스업체들을 위한 디바이스 업체로 피보팅을 시도한다[2]. 기존 스포츠웨어 강자인 언더아머가 HTC와 손을 잡고 디바이스를 출시하고, 중국은 정체된 시장에도 아랑곳하지 않고 샤오미뿐만 아니라 화웨이 같은 업체들이 수많은 저가 트래커들을 출시한다. 시장 정체와 함께 프리미엄은 에코시스템의 경쟁을, Low-end에서는 가격 경쟁을 통해 시장점유율을 놓고 싸워야 하는 시장이 된것이다.          페블의 선택: 페블과 핏빗의 엇갈린 과정에게 배우는 교훈 1. 시장의 왜곡된 이해와 판단 미스: 핏빗은 오랫동안 사업을 해오면서 시장이 급변함을 느꼈다. 그래서 다양한 제품군들을 통해 시장의 반응을 끊임없이 센싱하였고, 2016년 10월 급기야는 소비자가전회사(Consumer Electronics Company)에서 디지털헬스케어회사(Digital Healthcare Company)로의 변화를 선언한다. 페블은 스마트워치의 달콤한 승리에 취해있었다. 애플워치 출시이후 급격하게 변하는 시장의 기류를 다른 페블워치 모델로 대응하려는 시도를 한다. 페블OS와 함께 앱스토어안에 있는 15,000개의 앱은 페블의 경쟁력이었지만, 반면에 시장을 왜곡하여 이해하게 만들 충성스런 고객들과의 채널이기도 했다. 또한 개발시 고려하여할 요소들의 과도함과 함께 늘어난 비용과 개발기간에 대한 새로운 전략이 부족했다.2. 판매채널의 견고함과 다양함 부족: 핏빗은 오랜시간 다양한 채널을 통해 제품을 판매해왔다. 그래서 초기 시장을 선점하면서 생긴 포지셔닝의 이점은 분명히 가지고 있었겠지만, 더해서 리테일에 대한 투자와 함께 파트너들과 밀착된 관계를 유지하기 위해 애를 썼고, 한대 한대를 판매하며 발생하는 현금의 흐름을 통해 지속가능성에 대한 시야를 확보했다. 반면에 페블은 킥스타터의 성공에서 재미를 본 탓에 후속모델의 펀딩을 자주 킥스타터를 통해 진행했다. 큰 자금을 일시적으로 확보할 수 있었고, 마케팅의 효과도 훌륭했으나 매달 체계적으로 흘러야 할 자금의 유동성을 만드는 데는 독약이 되었을 것이다. 하드웨어를 개발해 생산하고 유통하는 과정은 결국 제조업의 속성을 가지기에 지속가능한 현금의 흐름을 만들지 못했을 때 가지는 리스크는 절대 작을 수 없다.3. 제품자체의 경쟁력 상실: 가격을 제외하고라도, 피트니스트래커는 건강과 운동의 본질적기능에, 스마트워치는 시계로써의 본질적 속성에 충실해야 한다.[6] 핏빗은 이를 유지하기위한 선택을 견지한 반면, 페블은 정체성을 소구할 브랜드로 진화하지도 못했고, 기능적 완성도에서도 거리가 멀어졌다. 많은 소비자들이 이미 알고 있었다.핏빗의 미래와 숙제핏빗도 시장상황이 좋지 않음을 알고 있다. 그래서 연말에는 6%의 직원들을 레이오프하기도 했다[3]. 하지만 변화해야 하는 방향을 알고 있고, 실행하고 있다. 코인(Coin)을 인수하여 모바일결제와 페이먼트의 경쟁력을 이식하기 위한 청사진을 실행하고 있고[4], 페블의 인수를 통해 IP확보와 함께 페블OS와 앱스토어의 생태계를 재구성하고자 할 것이다. 최근 유럽의 스마트워치 업체인 벡터(Vector)를 인수한 것 역시 IP확보를 넘어 시계의 본질을 소구하고자 하는 전략의 일환일 것이다[5]. 언제든 페블같은 위기가 다가올 것이라는 것을 알기에 핏빗에게 2017년은 매우 중요한 전략적 변곡점이 될 것이다. 늘 그랬듯 미래는 변화하지 않는 플레이어에게 가장 큰 위기를 안겨 줄 것이니 말이다.페블이 남긴 유산페블을 실패다 말하기엔 성급하다. 오히려 소비자를 지키고 개발자들을 지키기위해 늦었지만 포기를 통한 Exit이라는 바람직한 선택을 했기 때문이다. 비슷한 웨어러블 업체 조본도 피봇팅(Pivoting)을 선택했고, 인기를 한몸에 받았던 코인(Coin)이나 네러티브클립(Narrative Clip)같은 하드웨어 스타트업들도 문을 닫는 선택을 했기에 우리는 하드웨어 스타트업이 쉽지 않은 길임을 이제서야 공감하고 있다. 하지만 실리콘밸리가 늘 그랬듯, 이들의 시도가 남긴 유산들은 다른 기업들에 자양분이 될 것이고, 또 다른 시도로 이어질 것이다. 실패할까봐 아무것도 시도하지 못하는 것과 실패를 인정하기 어려워 제때 포기하지 못하고 썪은 밭에 계속 물을 주고 있는 것이 오히려 더 어리석지 않은가. IoT라는 연결의 큰 그림은 아직도 진화중이다. 웨어러블은 그 중 하나의 구성요소일 뿐이다. 이 큰 그림에 웨어러블의 본질[6]이 진정으로 연결 될 때 우리는 다시 제2의 페블이 탄생하는 것을 목격하게 될 것이다.[1] The Inside Story Behind Pebble’s Demise[2] Jawbone Bails Out of Consumer Fitness Tracker Market[3] Fitbit to cut 6 percent of its staff following a disappointing Q4[4] The Failure of Coin[5] Fitbit continues to beef up smartwatch efforts with acquisition of Vector[6] 웨어러블의 본질이미지 출처: https://blog.getpebble.com#라이프스퀘어 #스타트업 #창업자 #창업가 #마인드셋 #조언
조회수 2543

타다 시스템 아키텍처 - VCNC Engineering Blog

2018년에는 VCNC에 큰 변화가 있었습니다. 오랫동안 비트윈 기반의 서비스들을 개발하고 운영했지만 2018년 10월에 기사 포함 렌터카 서비스를 포함한 종합 모빌리티 플랫폼인 타다를 기획하고 출시하였습니다. 변화가 많은 모빌리티 시장에서 신규 서비스를 성공적으로 출시하기 위해 많은 고민을 하였습니다. 이번 글에서는 타다의 시스템 구성과 이를 위해 사용한 여러 기술을 소개하면서, 타다 개발팀의 기술적 결정을 공유해보고자 합니다.타다에서 사용하는 기술들의 로고. 왼쪽부터 Kotlin, Spring Boot, Kubernetes, Terraform, gRPC, Redis.기존과 다른 선택비트윈의 경우 Netty를 이용해 인하우스 네트워크 라이브러리를 만들기도 하였고, 메인 데이터베이스로 NoSQL인 HBase를 사용하는 등 남들이 통상적으로 사용하지 않는 기술 스택을 선택한 경우가 많았습니다. 그 배경에는 나름대로 이유가 있었지만, 서비스 초기에는 안정성에 어려움을 겪기도 하였고 서버 배포 과정이 느리고 복잡하여 쉬운 길은 아니었습니다. 여러 문제를 해결하기 위해 Haeinsa 등 라이브러리와 소프트웨어를 직접 만들기도 하였습니다.타다는 이슈가 많은 모빌리티 시장을 타겟으로 하고 있기 때문에 Time to Market이 특히 중요했습니다. 개발하는 기간 동안 시장 상황에 따라 기능의 우선순위가 변하기도 하였습니다. 이에 따라 서비스를 빨리 출시하고 외부의 변화에 유연하게 대처할 수 있도록, 완성도 있게 만들어져 있는 프레임워크나 라이브러리를 선택하였고, AWS에서 이미 잘 관리되고 있는 서비스를 적극적으로 활용하였습니다.사용 중인 기술들Kotlin: Java는 불편한 점이 많지만, JVM에 대한 경험을 무시할 수는 없어 비교적 새로운 JVM 기반 언어인 Kotlin을 사용하기로 하였습니다. 다른 여러 JVM 기반의 대안 언어들이 있지만, Spring Boot에 쉽게 적용할 수 있고 커뮤니티에서 적극적으로 권장하고 있는 점 등 여러 이유로 Kotlin을 선택하게 되었습니다.Spring Boot: 널리 쓰는 웹 프레임워크이며 이미 지원하는 기능 또한 많기 때문에 보일러 플레이트 코드 작성을 줄이고 서비스 개발에 집중할 수 있습니다. SQS 메시지 처리, HTTP 요청 및 응답으로 Protocol Buffers 메시지 사용 등 프레임워크에서 제공하는 기능을 많이 활용하고 있습니다.Kubernetes: 컨테이너 오케스트레이션 플랫폼으로 배포 자동화와 스케일링 등 여러 가지 운영적인 편의성을 제공합니다. 처음에는 kops를 이용해 클러스터를 직접 띄웠지만, 지금은 EKS를 이용하고 있으며 직접 object를 만들기보다 helm을 이용하고 있습니다.gRPC: 실시간성이 중요한 차량 위치나 운행 상태 변화 등은 Streaming을 이용하여 전달하고 있습니다. 직접 개발할 수도 있었지만, 서비스 개발에 집중하고 앞으로의 관리 오버헤드를 줄이기 위해 gRPC를 이용하기로 하였습니다.Redis: 서버 간 메시징을 위해 Redis의 Pub/Sub 기능을 사용하고 있습니다. 메시지 브로커 기능을 제공하는 RabbitMQ, ActiveMQ, Kafka 등 여러 옵션이 있었지만, 개발을 시작하던 당시에는 Redis만이 ElastiCache를 이용하여 쉽게 띄우고 관리할 수 있어 Redis를 선택하게 되었습니다.Protocol Buffers: gRPC 뿐만 아니라 HTTP/2로 주고받는 메시지를 정의할 때도 이용하고 있습니다. 덕분에 따로 문서화 하지 않고 proto파일을 공유하여 더욱 명확하고 편리하게 API 명세를 공유할 수 있었습니다.Terraform: HCL을 이용해 인프라스트럭처 프로비저닝 및 관리를 편하게 해주는 도구입니다. AWS 서비스의 생성 및 관리를 콘솔에서 직접 하지 않고 Terraform을 이용하고 있습니다.사용 중인 AWS 서비스들AWS는 개발팀이 오랜 기간 사용하여 가장 익숙한 클라우드 플랫폼이기 때문에 큰 고민 없이 선택할 수 있었습니다.EKS: Kubernetes 클러스터의 마스터 노드들을 쉽게 띄우고 관리해주는 서비스입니다. 서울 리전에 EKS가 출시된 후에는 관리 오버헤드를 줄이기 위해 EKS로 옮겼습니다.ECR: 타다 서버를 배포할 때는 Docker Gradle Plugin을 통해 docker 이미지를 만들고 ECR에 푸시합니다. 그 후 helm 명령을 통해 Kubernetes에 배포합니다.SQS: 배차 요청을 처리하기 위해 SQS를 이용합니다. 배차 요청을 구현하는 방법에는 다양한 옵션이 있었지만 AWS 서비스를 최대한 활용하여 빠르게 개발할 수 있었습니다.RDS: 타다의 대부분 데이터는 Aurora에 저장하고 있습니다. RDS를 이용하면 DB의 배포와 관리가 쉬우며, Aurora는 MySQL과 호환될 뿐만 아니라 같은 비용이면 성능이 더 좋습니다.Kinesis: 실시간 차량 위치 정보 및 로그를 수집하기 위해 사용하고 있습니다. 다른 오픈소스 소프트웨어를 직접 이용하기보다는 AWS에서 제공하는 서비스를 최대한 이용하고 있습니다.Firehose: 비트윈에서는 KCL를 활용해 Acheron이라는 프로그램을 직접 만들어 로그들을 S3에 저장하였지만, 이제는 서울 리전에서 Firehose를 사용할 수 있으므로 큰 고민 없이 사용하기로 하였습니다.시스템 구성타다에서는 필요에 따라 서비스를 여러 종류로 분리하여 운영하고 있습니다. 일반적인 모바일 앱 API와 실시간 차량의 위치 정보를 바탕으로 사용자의 요청에 대해 적합한 차량을 배차하는 기능이 필요했습니다. 핵심적인 역할을 하는 일부 서비스와 시스템 구성에 대해 간단하게 소개합니다.라이더 앱: 아이폰은 Swift, 안드로이드는 Kotlin으로 작성하였으며 여러 오픈소스 라이브러리를 적극적으로 활용하였습니다. 서비스 특성상 RIBs라는 아키텍처를 사용하여 개발하였습니다.드라이버 앱: 아이폰과 안드로이드를 모두 지원하려면 기술적, UX적으로 고려해야 할 점들이 많고 불특정 다수의 유저를 대상으로 하는 앱도 아니었기 때문에 안드로이드 버전으로만 개발하게 되었습니다.서버: 모바일 앱의 요청을 대부분 처리하며 Spring Boot로 작성된 HTTP/2 API 서버입니다. Protocol Buffers로 정의된 메시지를 JSON 형태로 주고받습니다.gRPC 서버: 서버에서 발생하는 이벤트를 실시간으로 전달하기 위한 서버입니다. Redis Pub/Sub을 통해 받은 이벤트 메시지들을 클라이언트들에게 전달합니다.Dispatcher: 배차 요청을 처리하는 서버입니다. 주변 차들의 ETA 계산을 위해 외부 API를 이용하는데, Reactor를 이용해 비동기적, 동시적으로 요청하여 쓰레드 점유 없이 효율적으로 처리되도록 구현하였습니다.Tracker: 차량 위치 정보 수집 서버입니다. KCL를 이용해 위치 정보 레코드를 읽어 들여 TrackerDB에 기록합니다.Redis: 서비스 초기에는 차량의 최신 위치 등을 저장하기도 했지만, 지금은 주로 서버 간 메시징을 위해 Pub/Sub 기능을 이용하고 있습니다.DB: 운행 기록, 사용자 데이터 등 대부분 데이터를 기록합니다. 비트윈에서는 HBase를 이용했지만 타다의 경우 아직 절대적인 트래픽이 많지 않기 때문에 트랜잭션 등 다양한 편의 기능을 제공하는 RDB를 이용하고 있습니다.TrackerDB: 차량 운행 정보 및 차량의 최신 위치 등을 저장합니다. Aurora를 이용하며 대부분의 요청이 차량 위치 정보 업데이트이므로 안정성을 위해 별도의 인스턴스를 띄워 사용하고 있습니다.Kinesis Log Stream: 타다의 여러 서비스에서 로깅을 위해 이용합니다. Firehose를 통해 S3에 기록됩니다.Kinesis Tracker Stream: 드라이버의 실시간 위치 정보는 Kinesis를 통해 Tracker로 전달됩니다.서비스 플로우차량 위치 업데이트차량 위치 업데이트는 요금 계산, 차량 위치 제공 등 서비스에서 가장 많이 일어나는 요청입니다. 드라이버 앱에서 안드로이드 Foreground 서비스를 이용해 GPS 정보를 수집하고 일정 주기마다 서버로 현재 위치를 전송합니다. 이렇게 전송받은 GPS 위치 정보는 데이터 크기를 최소화하기 위해 Protocol Buffers로 직렬화되어 Kinesis 레코드로 만들어지게 됩니다. Tracker에서는 전달된 Kinesis 레코드를 읽어 간단한 처리를 한 후에 TrackerDB에 삽입합니다.서비스 초기에는 차량의 마지막 위치에 대한 정보만 Redis에 적었습니다. 그러나 차량의 이동 경로를 효율적으로 조회해야 할 일이 생겼는데, 당시 차량 이동 경로는 로그로만 저장되고 있었습니다. S3 Select나 Athena를 이용해 조회하는 방안도 고려했지만, 일단은 Aurora에 저장하기로 하였습니다. 당분간은 Aurora로도 충분했고 RDB를 쓰는 것이 가장 쉽고 편한 방법이었기 때문입니다.차량 배차차량 배차는 서비스의 가장 기본적인 기능으로 배차 요청에 가장 적절한 주변 차량을 할당하는 플로우입니다. 라이더 앱에서 유저가 배차를 요청하면 서버가 배차 요청 정보를 DB에 기록하고 배차 요청 메시지를 SQS 대기열에 집어넣습니다. Dispatcher가 배차를 처리하는 로직을 수행하여 차량이 매칭되면 드라이버 앱으로 이벤트가 전달됩니다.드라이버가 배차를 수락하면 서버로 수락 요청이 전송되고 서버에서는 DB의 배차 요청 상태를 수락 상태로 변경합니다. 배차 요청이 수락되었다는 이벤트는 결과적으로 gRPC 서버를 통해 해당 이벤트를 구독하고 있던 유저에게 전달됩니다.Dispatcher에서 배차를 처리하는 로직은 여러 옵션이 있었지만 가장 간단하고 효율적으로 개발하기 위해 SQS의 기능을 최대한 활용하였습니다. Dispatcher 수를 늘리는 것만으로도 처리량 확장이 가능하며 Dispatcher가 갑자기 종료되어도 한 대라도 살아있다면 결국에는 잘 처리가 됩니다. Dispatcher가 배차 요청을 받으면 다음과 같은 로직을 수행합니다. 종료 조건을 만족하지 않았다면 일정 시간 후 동일한 로직을 다시 반복합니다.배차가 가능한 상태라면 배차 로직을 수행합니다. 이동 경로와 교통정보를 고려하여 적합한 주변 차량을 찾습니다.만약 적합한 차량이 있다면 배차 요청을 해당 드라이버에게 할당되었다는 정보를 DB에 적고 배차 할당 이벤트를 전파합니다. 드라이버의 수락을 기다리기 위해 일정 시간 후 로직을 재시도합니다.만약 적합한 차량이 없다면 일정 시간 후에 로직을 재시도합니다.배차 요청이 드라이버의 수락을 기다려야 하거나 타임아웃이 남아있는 상태라면 적절한 시간 후 재시도합니다.배차 요청이 수락되어 완료된 상태거나 취소되었거나 타임아웃이 지난 상태라면 SQS에서 메시지를 삭제합니다.못다 한 이야기타다를 런칭하는 날, 기사 간담회에서 쏘카의 VCNC 인수 이후 짧은 기간 동안 타다를 만들 수 있었을 리 없으니, 실제 개발 기간은 어느 정도냐는 질문이 있었습니다. 짧은 기간 내 서비스를 성공적으로 런칭할 수 있었던 것은 상황에 맞는 올바른 기술적 선택들뿐만 아니라 훌륭한 팀원들이 있었기에 가능했던 일이었습니다. 타다는 개선해야 할 부분도 많고 앞으로 새로운 기술적 도전들이 많이 있을 것입니다.네 그렇습니다. 결론은 기술적 난제들을 고민하면서 좋은 팀과 서비스를 함께 만들고 키워나갈 좋은 분들을 기다리고 있다는 것입니다.
조회수 1741

타운어스 신규플랫폼을 오픈하며

안녕하세요. 타운컴퍼니 R&D 파트의 백대현입니다.타운컴퍼니는 단체들를 위한 공동구매 플랫폼인 타운어스를 운영하는 스타트업입니다. 기술블로그를 시작하며 최근 오픈한 타운어스 2.0에 대한 소개, 타운컴퍼니 기술조직인 R&D 파트에 대한 소개를 드리려 합니다.타운어스는 대학생들이 학교 내에서 자주 진행하는 공동구매가 굉장히 복잡하고 만족하기 어렵다는 문제를 해결하기 위해 시작되었습니다. 수작업으로 진행하던 공동구매를 플랫폼화 시켜 편하게 공동구매를 진행할 수 있게 만들고, 전국단위로 공동구매를 진행하여 최저가로 구매할 수 있도록 하였습니다.2014년 9월 오픈베타서비스인 캠퍼스샵을 시작하였고 이어서 2015년 6월 정식서비스 타운어스를 런칭하여 2년 넘게 폭발적으로 성장해왔습니다.사실 그 동안 타운어스 사이트에 대한 아쉬움이 많았습니다. 사이트가 초기에 린(Lean)하게 만들어진 이후에 몇차례 업데이트를 거쳐 타운어스 비즈니스를 받쳐주고 있었지만 내부 개발팀의 부재, 인력부족으로 유지보수가 잘 되지 않고 있었습니다. 그 와중에 몇 차례의 비즈니스 전략 변경(Pivot)을 거치면서 기술과 비즈니스의 괴리가 점점 벌어지게 되었습니다.타운어스 신규플랫폼타운컴퍼니에서는 여러 고민을 거쳐 한층 업그레이드 된, 이제 대학생 뿐만 아니라 모든 단체를 위한 공동구매 커머스 플랫폼으로 거듭나고자 타운어스 2.0 프로젝트를 시작하며 기획팀, 디자인팀, 개발팀으로 이루어진 R&D 파트를 출범하고 기술조직을 구성하였습니다.새로 출범한 타운컴퍼니 R&D 파트에서는 물려받은 기존 코드베이스를 유지하며 플랫폼을 개선할 것인지, 부채를 청산하고 새로운 코드베이스를 쌓을 것인지 많은 고민을 했습니다. 결론적으로 새로운 코드베이스로 프로젝트를 진행하기로 하였는데 대표적인 이유는 아래와 같았습니다.타운어스 2.0에서 변경되어야할 기획이 상당히 많아 재설계가 필요함비즈니스적 전략 변경을 서비스에 반영하기 위해 변경해야할 기획이 상당히 많고 그 동안 기술에 반영되지 않은 비즈니스 요구사항이 많아 여려 요구사항이 복합적으로 고려되어야함서비스 아키텍처가 연속성이 없음초기에 MVP로 시작된 코드베이스가 연속적인 기술조직이 발전시키지 못하고 외주 개발과 인력 변경을 거치다 보니 일관적이지 않고 누수가 많음버그 빚더미인력부족으로 인해 그 동안 유지보수가 되지 않아 해결해야할 버그가 복합적으로 존재함 (해결되지 않은 리포팅된 이슈 450여개 OMG)위 외의 여러 이유로 타운컴퍼니 R&D 파트에서는 기술부채 파산을 선택하고, 새로운 코드베이스에서 프로젝트를 시작하기로 하였습니다.신규플랫폼 간략 소개결론적으로 타운어스 신규플랫폼은 전체적인 일정과 인력을 고려하여 우선 부분적으로 오픈하게 되었습니다. 가장 많은 사용자들이 사용하는 단체의류공동구매에 대한 서비스를 먼저 개발하게 되었고 그 외 카테고리의 공동구매는 기존플랫폼에서 서비스하고 있습니다.이렇게 시작한 타운어스 신규플랫폼의 현재 오픈한 변경 사항은 크게 아래와 같습니다.전체적인 UX/UI 업데이트공동구매를 더 편하게 시작하고 진행하고 마무리할 수 있도록 개선“공동구매방”을 친숙하게 사용할 수 있도록 유도하였습니다.단체의류 커스터마이징 기능 강화커스터마이징 의류 종류 확장 : 과잠, 코치자켓, 티셔츠 (점진적으로 확대할 예정)커스터마이징 예상가격 계산 기능편하게 단체의류 디자인을 미리 해볼 수 있는 서비스를 제공합니다.최근 오픈을 시작으로 타운컴퍼니 R&D 파트에서는 지속적으로 서비스를 발전시켜 세상 모든 단체활동을 위한 공동구매, 타운어스에 걸맞는 공동구매 커머스 플랫폼으로 만들어갈 예정입니다.기술 스택과 조직 문화타운컴퍼니 R&D 파트의 기술에 대해서는 꾸준히 소개를 드리려 합니다. 때문에 오늘은 조직 문화와 기술 스택에 대해서 간단하게 소개를 드리겠습니다.프로젝트 진행협업툴로 JIRA, Confluence, Slack을 사용하고 있습니다.프로젝트는 Agile Kanban 방식으로 테스트 주도 개발, 코드 리뷰, 페어프로그래밍을 통해 진행하고 있습니다.서비스에 대한 충분한 고민 이후에 개발을 진행하려 노력합니다.기술 스택Back-End는 Django 1.11 (DRF) 기반으로 개발하며, AWS, MySQL, Vagrant, Docker 같은 기술을 사용하고 있습니다.Front-End는 Angular 5.1을 사용해서 개발하고 있으며 Less, RxJS, Webpack 등의 기술을 사용하고 있습니다.UX/UI에 Sketch와 Zeplin을 주로 사용하고 있습니다.CI(Continuous Integration)로 Travis-CI, 배포 관리로 Fabric과 AWS CLI, 버그 리포팅으로 Sentry.io, 플랫폼 모니터링으로 ELK(ElasticSearch, Logstash, Kibana)를 사용하고 있습니다.지향하는 조직 문화 및 지원자유롭고 주도적인 조직 환경시간에 쫓겨 비루한 코드를 생산하지 않도록유연한 리모트 근무지시가 아니라 스스로 할 일을 찾는 자율 속에서 책임을 다하는 문화자유롭게 의견을 제시할 수 있는 편한 분위기건강한 비판과 토론을 장려하는 커뮤니케이션 문화이상을 추구하되 비즈니스에 기반한이상적인 기획, 디자인, 개발을 지향하지만 비즈니스 영역에 기반한 의사결정회사 모든 조직들이 더 부가가치가 높은 업무에 집중할 수 있는 환경 조성을 위해 노력TOY TIME매주 금요일 4시부터 7시까지 3시간 자유로운 주제로 프로젝트 진행세미나, 컨퍼런스 참가 적극 장려 및 도서 지원저희는 아직 성장하고 있는 만큼 개선할 점도 많고 배워야하는 부분도 많이 있습니다. 그 만큼 기술블로그를 통해 저희가 고민하고 겪었던 기술을 공유하고 소통하며 서로 성장할 수 있는 기회가 되었으면 합니다.잘 부탁드립니다.#타운컴퍼니 #서비스소개 #기업문화 #사내복지 #조직문화 #원격근무 #디지털노마드 #재택근무

기업문화 엿볼 때, 더팀스

로그인

/