스토리 홈

인터뷰

피드

뉴스

조회수 2243

인스타 마케팅 성과분석은 어떻게 해야 할까?

 요 며칠 간 인스타그램 마케팅(혹은 인플루언서 마케팅이라 부르는)의 성과를 어떻게 분석해야 할 지 고민했다. 아직까지 인스타그램에선 포스팅(게시물) 본문에 텍스트와 해시태그(#)외에는 URL과 같은 구매페이지로 바로 연결되는 하이퍼링크 삽입 기능을 지원하지 않기에 협찬성 포스팅으로부터 몇명의 고객이 랜딩페이지로 이어졌는지 알 길이 없다. 물론 해결책이 없는 건 아니다. 해외 스타트업에서 개발한 '라이크투노우잇(LIKEtoKNOWit)'이란 앱은 인스타그램과 자동으로 연동돼 인플루언서가 인스타에 포스팅한 이미지를 스크린샷으로 저장하기만 하면 AI로 이를 분석, 해당 게시물에 노출된 아이템의 브랜드 및 상품명을 사용자에게 추천하는 기능을 제공한다. 라이크투노우잇은 이 과정에서 얼마의 인원이 추천 알고리즘을 통해 상품 페이지로 이동했는가를 기록하고 이는 광고주가 투자한 인플루언서 마케팅의 실익을 객관적으로 평가하는 척도가 될 수 있다. 하지만 이 역시 분석 가능한 대상이 앱이 인스톨된 디바이스에 한정되는 이유로 적확한 분석은 불가하고 국내에서는 아직 이용자가 해외보단 많이 부족한 상태로 보이기에 적어도 국내에선 현재 활용 가능한 분석 솔루션으로 미흡하단 생각이다. 그래서 아직까진 구글 애널리틱스와 같은 로그분석솔루션을 통해 트래픽 소스로 'instagram'이 찍힌 세션을 필터링하는 방법이 지금으로선 최선인 것 같다.(라이크투노우잇 사용설명 가이드 영상 출처: https://www.liketoknow.it/)그나마 근사하게 분석을 진행하려면 광고주의 인스타 계정 생성은 필수다. 인스타를 패션/라이브스타일 정보를 얻는 창구로 활용하는 이로서 본인이 브랜드 페이지까지 가는 주된 경로는 1. 맘에 드는 포스팅을 발견하면 2. 포스팅 내 해시태그를 눌러 얼마나 공신력 높은 브랜드인가 혹은 다양한 이가 게시한 착장 사진을 확인하고 3. 다시 본 포스팅으로 돌아와 태그된 브랜드 인스타 계정으로 가 프로필 상에 있는 URL을 클릭한다-이다. 포스팅을 본 뒤 네이버 같은 검색포털에서 상품을 검색하는 이용자도 많을 것으로 생각했지만 주위 인스타 열성 이용자와 이야기를 나누고 나서(그리고 나 자신의 평소 이용패턴을 돌이켜 보고 나서) 이 경로가 대부분일 것이란 확신을 얻게 됐다.  아울러 브랜드 계정이 보유한 충성도 높은 오가닉(Organic) 팬은 없을수록 좋다. 이미 활발히 홍보가 이뤄져 자연발생적으로 팔로어를 많이 모아 놓은 상태라면 특정 기간 인스타로부터 유입된 트래픽이 순수하게 마케팅을 통해 비롯된 것인지 측정키가 복잡해지기 때문이다-마케팅 이전 비슷한 시기 대비 전후 트래픽 상승을 비교하면 되지만 변인이 있다는 건 스트레스다.   지금까지 당연한 말을 늘어 놓았지만 또 한 가지 보태면 프로필 계정에 쓰인 URL에는 utm과 같은 추적코드를 심어 놓는 것이 좋다. 만약에 인스타 상에서 (페이스북 비즈니스 계정을 통한)광고를 하고 있는 광고주라면 더욱 그렇다. 이제 이렇게 트래픽 추적을 위한 코드까지 심었다면 인스타로 유입된 이의 구매전환율(유입수 대비 구매완료수 비율)을 측정하는 일만 남았다. 아직 이를 확인한 적이 없어 확언 못하지만 불특정다수에게 노출되는 포털 배너광고의 0%대 전환률보단 살짝 높지 않을까 추측한다. 다만 1개세션을 사들이는 광고비가 얼마나 합당한 수준인지는 확인해야 할 것이다.  실익에 대한 정확한 측정 없이 대세에 편승 모두가 특정 매체에 돈을 퍼붓는 건 해당 매체에 대한 버블만 만들 뿐이다. 그로 인해 장기적으론 소비자/광고주/광고매체 모두가 피해를 본다. 본인은 그 사례를 MCN 광고산업에서 목격했다. 힘겹겠지만 인스타처럼 일정수준 광고매체로서의 가능성은 검증되고 있으나 분석 솔루션이 채 갖춰지지 않은 매체의 경우 마케터는 더더욱 집요하게 분석에 파고 들어야 할 것이다. Jin Young Choi회사원사람을 잃느니 명예를 잃겠다
조회수 1938

옐로의 시조새, 옐로쇼핑미디어 '김태묵 매니저'

안녕하세요, 매력 덩어리 옐로 구성원을 발굴해 소개하는 사내기자 Y의 옐플 인터뷰, 그 11번째 이야기! 이번 주인공은 바로 옐로모바일의 시조새 혹은 화석으로 통하는 YSM 마케팅 본부 김태묵 매니저 입니다. 눈물없이 들을 수 없는 사옥 이전 이야기부터, 프로 인스타그래머가 추천하는 가로수길 맛집을 지금 확인해보세요!   Y: 안녕하세요! 옐블 독자들을 위해 간단히 소개 부탁 드립니다 김: 안녕하세요, 옐로 가족 여러분! 옐로쇼핑미디어 마케팅 본부에서 일하고 있는 김태묵입니다. 반갑습니다 Y: 마케팅본부에서는 어떤 일을 하시나요? 김: 우선 내부와 외부에서 노출되는 광고들을 운영하고 효율적으로 관리하며 YSM 서비스 ‘쿠차’등의 마케팅을 담당하고 있습니다. 또 대행사들과의 원활한 커뮤니케이션도 저희 본부 몫이죠. 현재는 9명이서 재미있게 일하고 있어요 Y: 쿠차에는 어떻게 입사하게 되었나요? 김:  제가 대학교 졸업할 때쯤 소셜커머스 붐이 일어났어요. 그때 우연히 쿠차를 알게 됐는데, 비즈니스 모델이 굉장히 매력적이더라고요. 여기서 일하면서 커리어를 쌓고 싶다는 생각에 지원했습니다. Y: 옐로모바일 시조새 중 한 명이라고 들었어요!김: 뭐…시조새, 삼엽충, 화석 등등 여러 가지로 불리고 있습니다:) 사실 쿠차에 2012년 초에 입사를 했으니,옐로모바일의 탄생과정을 지켜본 몇 안 되는 실무진 중 한 명이죠. Y: 옐로모바일 초반에 기억나는 일이 있나요?  김: 아시다시피, 옐로모바일의 첫 사무실은 순탄치 않았어요. 에어컨이 고장 나서 여름에 어찌나 고생을 했는지.. 다시 생각해도 눈물이 나려 그러네요ㅠㅠ 그러다가 신사동 건물로 이사를 오게 됐는데, 당시 함께 하고 있던 쿠차, 굿닥, 우리펜션 등에서 한 명씩 나와서 사무실 배치를 돕기로 했죠. 그런데 이삿짐 센터에서 짐들을 다 1층에 놓고 가버린 겁니다.. 그래서 현장 답사 차원에서 나온 직원 분들과 함께 그 많은 짐을 다 옮겼죠. Y: 세상에…! 사옥 이전을 직접 한 셈이네요. 김: 네.. 여기 사무실 대부분의 것들에 제 땀과 눈물이 베어 있다는 걸 기억해주세요 ㅋㅋㅋㅋㅋ농담입니다ㅋㅋ Y: 태묵님의 취미는 무엇인가요? 김: 거의 운동 중독이라고 할 수 있을 만큼 운동을 좋아해서 일주일에 적어도 여섯 번은 헬스장에 갑니다. 이렇게 거의 6년간 야근이나 회식을 해도 운동을 하고 있어요. Y: 헐…6년이라니! 자기개발 끝판왕으로 인정합니다! 김: 변화가 눈으로 보이니까 중간에 그만둘 수가 없더라고요. 그래서 유지하기 위해 꾸준히 노력하고 있습니다.Y: 그나저나 먹스타그래머로 유명하다고 들었는데, 가로수길 추천 맛집 알려주세요! 김: 프로 먹스타그래머로서 허세샷이 가능한 곳으로 추천 드리자면, ‘감성타코’와 ‘델러스바베큐’가 있습니다! 맛도 있지만 인스타에 올리기 정말 적합한 음식들이 나오죠 Y: 지금 회사와 함께 하며 좋은 점은 무엇인가요?김: 사실 스타트업에서 TV광고를 할 수 있는 기업으로 성장하는 게 흔치 않아요. 이런 흔치 않은 기회를 직접 현장에서 지켜보며 저도 함께 성장할 수 있다는 게 큰 장점이죠. 또 굿닥, 알람몬과 같이 함께 마케팅 분야에서 코웍할 수 있는 계열사들이 많아 좋습니다 Y: 옐플은 피해갈 수 없는 질문! 옐로모바일 서비스 중 가장 자주 이용하는 서비스는? 김: 지하철과 알람몬은 정말 매일매일 쓰는 앱입니다. 그리고 국내 여행 갈 때 필수 서비스는 우리펜션! 직원 할인도 많이 적용돼서 저렴한 가격에 좋은 펜션을 이용할 수 있습니다 Y: 입사 후 기억나는 에피소드가 있나요?김: 제 작년 말에 사내카페에서 송년회를 했는데, 거기서 지누션과 엄정화의 ‘말해줘’ 노래로 장기자랑을 했어요. 저는 엄정화 역할이었고요. 반응이 뜨거웠죠ㅎㅎㅎ Y: 엄정화라니! 엄청난 반전인데요? Y: 2016년이 얼마 남지 않았어요. 올해 안에 이루고 싶은 것이 있나요? 김: 쿠차에서 조만간 오픈 예정인 서비스들이 있어요. 남은 기간 동안 준비를 잘 해서 유저들이 많이 찾는 서비스가 되도록 하겠습니다!   Y: 마지막으로 앞으로는 어떤 일을 해보고 싶으신가요? 김: 마케팅 시장이 빠르게 변하고 있거든요. 그런 변화에 잘 적응해서 좋은 마케터가 되고, 더 나아가 남들이 시도하지 않았던 새로운 서비스를 론칭하고 싶어요. 쿠차와 쿠차슬라이드, 많이 이용해주시고 응원 부탁 드립니다! 감사합니다
조회수 6390

비트맵 방식과 벡터 방식

안녕하세요? 스포카에서 디자인 총괄을 맡고있는 최재형입니다. 저는 스포카 기술 블로그에서 그래픽 디자인에 대한 기본적인 내용을을 다루어 볼까 합니다.앞으로 저는 컴퓨터 그래픽 디자인의 기초적인 용어 정리 및 개념 설명부터 실무에 바로 도움이 되는 디자인의 기본 상식 및 방법론까지 스포카 기술 블로그를 통해 설명해 보고자 합니다. 일단 오늘은 컴퓨터를 이용한 그래픽 디자인의 정말 기본이 되는 이미지 형식에 대해 다루어 보겠습니다.비트맵Bitmap 방식과 벡터Vector 방식일단 컴퓨터 그래픽은 크게 비트맵Bitmap과 벡터Vector방식으로 구분됩니다. 비트맵Bitmap은 ‘비트의 지도map of bits‘란 듯으로, 각 픽셀에 저장된 일련의 비트 정보 집합이라고 보시면 됩니다. 디스플레이는 픽셀들의 배열로 구성되어 있습니다. 픽셀들의 배열 방식, 픽셀들의 총 숫자나 가로 세로의 비율이 그 디스플레이의 해상도를 결정짓습니다. 예를들어 1920 x 1080의 해상도를 가진 디스플레이는 가로 1920개, 세로 1080개의 픽셀들을 가진 다는 것을 의미합니다. 가로와 세로의 값을 곱하면 그 디스플레이가 가진 총 픽셀 수가 됩니다.하나의 픽셀은 R빨강, G초록, B파랑의 세 가지의 서브 픽셀subpixel로 이루어져 있습니다, 서브 픽셀의 배열 방식은 디스플레이의 특성에 따라 모두 다릅니다. 서브 픽셀의 배열 방식의 차이는 너무 깊은 얘기이니 본편에서는 다루지 않기로 하겠습니다. 참고로 보편적으로 가장 많이 쓰이고 있는 LCD 방식은 그림에서와 같이 RGB가 하나의 픽셀을 이루어 전체 디스플레이에 배열이 연속됩니다.각 픽셀의 R, G, B는 0~255까지의 값을 가지고 있는데, 이 셋의 조합 (R,G,B)이 그 픽셀의 색상을 정의하게 됩니다. 그리고 그 정의된 색상들의 픽셀이 모여 지도map를 만들게 되고, 하나의 이미지 파일을 만들게 됩니다. (참고로 RGB로 색을 표현하는 방식인 RGB 가산혼합의 메커니즘은 다음 문서 http://ko.wikipedia.org/wiki/RGB 를 참조하시길 바랍니다.)비트맵bitmap은 다른 표현으로 픽스맵pixmap이나 래스터raster 이미지로도 불립니다. 포토샵에서 벡터 기반의 레이어 오브젝트 - 예를 들면 벡터 오브젝트나 편집 가능한 상태의 글자 - 를 비트맵화 시키는 메뉴 이름이 ‘Rasterize Layer’인데, 아마 여기에서 많이 보셨을 단어일 겁니다.벡터Vector 방식은 비트맵과는 반대로 표현되는 그래픽의 형태shape들이 수학적 공식으로 이루어져 있습니다. 다시말해 벡터 방식의 그래픽은 고정된 비트맵을 가지고 있는 것이 아니라, 수학적 공식으로 이루어진 오브젝트들이 그때그때 디스플레이에 비트맵화 되어 스크린에 표시됩니다. 여기에서 좀 더 높은 퀄리티의 이미지를 만들기 위해 안티-앨리어싱anti-aliasing이라는 기술이 사용되는데, 이 부분은 추후에 더 다루기로 하겠습니다.벡터 방식의 그래픽은 다음과 같은 메커니즘으로 구성됩니다. 일단 두 개의 점point이 연결되면 하나의 선path이 됩니다. 그리고 그 선path이 세 개 이상이 되면 면을 만들 수 있습니다. 그리고 각각의 선은 두께 값과 색상 값, 곡률 값을, 면은 색상 값을 가질 수 있습니다. 이렇게 점과 선, 면의 기본적 벡터 그래픽 요소들이 모여 다양하고 복잡한 벡터 그래픽을 만들 수 있게 됩니다.비트맵 방식의 장단점비트맵은 최하위의 레벨에서 렌더링 된 고정된 형식의 이미지 포맷으로, 컴퓨터에서 해당 형식의 파일을 연산하는데 많은 효율성을 지니고 있습니다. 같은 형태의 벡터 포맷 그래픽이라면 컴퓨터에서 더 많은 연산을 수행하게 되어 하드웨어에 부담을 줍니다. 그래서 대부분의 웹사이트와 어플리케이션에서는 비트맵 이미지 기반으로 구성되어 있습니다. 하지만 최근 하드웨어의 발전으로 부담이 적어져 몇몇 사이트에서는 벡터 포맷의 이미지를 실험적으로 사용하기도 합니다.http://www.cambridgeincolour.com/tutorials/image-interpolation.htm비트맵은 최종적으로 렌더링 된 상태의 포맷이기 때문에 이미지 편집이 자유롭지 못 합니다. 그리고 해상도가 고정되어 있기에 업-스케일up-scale을 하면 퀄리티에 큰 훼손이 가며, 다운-스케일down-scale이나 회전 등의 변형 시에도 안티-앨리어싱 작업이 중복으로 적용되게 되어 이미지 퀄리티에 큰 손상이 갑니다.비트맵 이미지의 편집 툴로는 대표적으로 Adobe Photoshop이 쓰이고 있습니다. Photoshop은 현재 GUI 작업에 가장 많이 쓰이고 있습니다. Photoshop은 Drop Shadow나 Inner Shadow, Emboss 등의 Effect 효과의 퀄리티가 가장 좋기 때문에 애플과 같은 스큐어모프skeuomorph한 장식적인 GUI를 제작하기에 가장 효과적인 툴입니다. 스큐어모프skeuomorph (http://en.wikipedia.org/wiki/Skeuomorph)라는 개념은 나중에 한 번 기회를 내서 소개해 드리겠습니다.하지만 Photoshop은 많은 단점을 가지고 있습니다. 일단 레이어 기반의 이미지 편집 툴이기 때문에 작업하는 그래픽 오브젝트가 많아지면 레이어 관리가 정말 어려워집니다. 물론 레이어 네이밍과 컬러 태그 등을 통한 체계적인 레이어 관리로 어느정도 보완을 할 수 는 있지만, 이를 지키기는 정말 어렵습니다. 그리고 레이어를 관리하거나 찾고 편집하는 과정이 비직관적이어서 벡터 기반의 툴인 Illustrator에 비해 많은 노동 비용이 소모됩니다.또한 Photoshop은 Adobe의 프로그램 설계 의도가 그래픽 디자인 툴이 아닌 사진 편집 툴이기에 메트릭 체계를 다루기가 상대적으로 좋지 않습니다. 그래서 좌표나 크기dimension 기반의 디자인 작업을 하기에 비직관적인 면이 있습니다. 또한 Photoshop은 가이드의 기능이 부실하여 그래픽 디자인의 기본이라 할 수 있는 그리드 시스템을 운용하는데 있어서도 Illustrator에 비해 많은 단점을 가지고 있습니다.벡터 방식의 장단점벡터 포맷의 그래픽 편집 툴의 장점은 우선적으로 작업의 용이성을 들 수 있습니다. 벡터 그래픽은 점과, 점으로 이루어진 선, 면으로 모든 그래픽 요소들이 이루어져 있기에, 간단하게 점과 선을 수정하는 과정으로 그래픽 작업을 유지 관리하기가 정말 좋습니다. 즉, 벡터 포맷의 작업 파일이 보존되는 한 자유로운 수정이 가능합니다. 또한 작업된 벡터 그래픽을 바탕으로 언제든지 다양한 방식, 그리고 원하는 해상도의 비트맵 포맷으로 산출이 가능합니다.벡터 방식의 그래픽 편집 툴은 Adobe Illustrator와 InDesign이 많이 쓰이고 있습니다. 전자는 보통의 그래픽 디자인 작업이 목적일 때, 후자는 문서 편집과 간단한 프레젠테이션이 목적일 때 주로 많이 쓰이고 있습니다. 여기서는 GUI 디자인과 그래픽 디자인에 자주 쓰이는 Illustrator의 장단점에 좀 더 집중해 보겠습니다.Illustrator는 위에서 얘기한 벡터 포맷의 그래픽 편집 툴이 기본적으로 가지고 있는 장점 외에도 여러가지 추가적인 장점이 있습니다. 첫째로 Illustrator는 객체 지향의 편집 툴이라 복잡한 레이어 관리가 필요 없습니다. 디스플레이에 표시되는 오브젝트를 보이는 대로 선택하고 바로 편집을 할 수 있습니다. 그리고 오브젝트의 위계 관리는 포토샵의 레이어 판넬처럼 리스트 상에서 전역적으로 관리하기 보다는 오브젝트의 Arrange 기능을 이용해 상대적으로 위계를 손쉽게 관리할 수 있습니다. 또 Lock 기능과 Group 기능을 활용하여 가려져서 보여지지 않는 오브젝트를 적은 과정을 통해 효율적으로 관리할 수 있습니다.둘째로 밀리미터 및 픽셀기반의 좌표 체계를 기반으로 작업하기가 정말 편합니다. Illustrator는 포토샵과 달리 오브젝트를 선택하면 해당 오브젝트의 좌표와 크기dimension가 모두 바로 표시됩니다. 이러한 특성들은 디자인을 코드로 구현할 때 오브젝트를 선택하기만 해도 모든 정보가 나오기 때문에 개발 작업 시 매우 용이합니다.셋째로 가이드guide 기능을 통해 효과적으로 그리드 시스템을 운용할 수 있습니다. 기본적으로 Illustrator에서의 가이드는 오브젝트와 동일 취급이 됩니다. 그렇기 때문에 가이드를 쉽게 복제 및 이동하여 다른 캔버스 및 파일로 이동하여 사용할 수 있습니다. 또한 정확하게 가이드의 위치 좌표 값을 설정 가능하기에 보다 확실하게 그리드 시스템을 운용할 수 있습니다.Photoshop vs IllustratorPhotoshop과 Illustrator에는 각각의 장단점이 있습니다. 포토샵은 퀄리티가 높은 장식예술을 하기에 좋은 도구고, 일러스트레이터는 좀 더 본격적인 의미의 ‘디자인’을 하는데에 어울리는 도구입니다. 결국 디자인 과정에 있어 각 태스크의 성격에 맞는 적절한 툴을 그때그때 골라 쓰는게 가장 현명하다고 볼 수 있습니다.#스포카 #디자인 #디자이너 #포토샵 #Photoshop #일러스트레이터 #Illustrator #인사이트
조회수 2766

라이더소개 #13.'나무여행 전문가', 헉

[라이더소개 #13. 나무처럼 우직하고 깊은 '나무여행 전문가', 헉]헉을 소개합니다! :)Q. 헉의 간단한 자기소개 부탁해얼마 전부터 나무 관련 사진전도 시작했듯이, 나는 ‘나무여행 전문가’라고 불렸으면 좋겠어. 대학로와 우리가 자주 다니는 북촌에 나름대로의 코스를 준비하고 있어. 인력거를 타러 오듯이, 나한테는 워킹투어를 통해서 나무에 대한 이야기를 들으러 오는 거지. 그런 프로그램을 마련해서 가이드도 하고 ‘나무여행 전문가’로 불려지는. 앞으로의 내 모습은 그렇게 비춰졌으면 좋겠어. 아직 구체적으로 개시를 한 건 아니지만, 조만간 시작하지 않을까 싶어.생각보다 이야기할게 많아. 최소 1시간 이상, 2시간까지 충분히 가능해.Q. 대학로와 북촌은 '나무' 때문에 좋아하는 거야?그것도 이유 중에 일부분일 수 있는데, 일단 지리적으로 가까우니까! 내가 성균관대 명륜동에 살잖아. 그래서 어디로든 나오기가 쉽거든. 지리적인 이점이지. 산책할 때는 북촌이 주 무대가 되지. 인사동, 북촌, 대학로. 사진기 들고 돌아다니면서 나무나, 일상사진 찍으면 심심하지도 않고 좋아.Q. 아띠를 시작하게 된 계기가 뭐야?방금 이야기했듯이, 잘 돌아다니다 보니까 언젠가부터 인력거가 눈에 띄더라고. 지금은 우리가 파란색으로 통일을 했지만, 초창기 그 때는 노란색이었거든. 지금 ‘롭스’가 생긴 그 곳에 노란색 인력거가 서있더라고. 내가 기억하는 이미지는 그때 거기 서있던 그 느낌이야. 항상 ‘안녕하세요!’하면서(웃음), 행복해하면서 라이딩을 하는구나. 북촌도 잘 알고, 자전거 타는 걸 좋아하니까 나도 한 번 해보면 좋겠다 싶어서 시작한 거지.Q. 처음 시작했을 때와 2년 가까이가 지난 지금과 비교해보면 어때?한결같이 드는 생각은 부담감이 조금 있다는 거야. 아무래도 연령차이가 나니까, 솔직히 불편한 점이 있어. 물리적으로 연령 차이가 많이 난다는 것에 대해. 어떻게 생각하면 아무것도 아닐 수가 있지만, 아띠인력거 자체가 되게 ‘젊은 이미지’잖아. 밖에서 보이는 이미지도 그렇고. 실제로도 젊은 친구들이 많이 하고. 그렇게 보면 나는 그런 기준에서 살짝 비켜나있는 사람이거든.솔직히 그런 부분에서 중간 중간에 띄엄띄엄 못나오거나 그런 이유가 있었지. 포레스트나 연령대가 비슷한 친구가 없으면, 내가 혼자 남은 느낌이잖아. 근데 그건 어쩔 수 없는 부분인 것 같아. 서로가 이해해주는 부분인 것 같아.내가 조금 더 젊었다면 더 좋았을 것 같아. 더 잘 어울리고, 더 많이 함께하고. 아무튼 아띠가 가진 문화, 젊게 지내려고 하는 것 그런 건 다 좋아. Q. 가장 힘들 때도 그런 느낌을 받을 때겠네. 그렇지. 처음에 할 때는 인력거와 내가 한 몸이 안 되서 그랬는지 무릎 관절도 아프고 그랬거든. 완전히 적응이 안 된 상태에서 긴장도 한 대다가, 요령도 없어서 그런 것 같아. 힘들었었는데 요즘은 그런 느낌은 없더라고.그리고 무슨 이유에서건 만약 한 번 못나오잖아? 그럼 다시 나오기가 되게 힘들어. ‘오늘 못 나갔으니까 내일 나가야지’ 이게 잘 안 돼. 그게 일주일, 한 달 그렇게 되면 페이스도 떨어지고, 다시 나갈 용기를 내는 것도 힘들지.Q. 기억에 남는 손님이 있다면?시골에서 어떤 할머니가 아들을 찾는다고 올라왔는데, 주소도 모르고 아무 것도 모르시는 거야. 내가 그때 창경궁 언덕길 따라서 북촌으로 가던 중이었는데, 가던 길 마다하고 그 할머니 태워가지고 종묘 옆까지 데려다드렸었어. 할머니가 해주시는 말만, 설명만 듣고 재조합해서 아들이 하는 가게에 데려다드렸지. 그 때 주셨던 믹스커피. 그런 게 되게 좋았어.또 마포노인복지관인가 거기에서 단체 라이딩을 한 적이 있었는데, 그때 할머니들이 굉장히 좋아해주셨어. 우리 모든 라이더들을 손자 보듯이 대해주시고 ‘내가 이런 걸 다 해보네!’ 하시면서.그리고 작년 늦가을 쯤, 저녁에 복귀하고 있었는데 한 여성분이 너무나 간절하게 태워달라고 하셔서 태워드렸어. 라이딩을 하면서 자연스럽게 이야기를 하는데 아버지에게 학대당했던 얘기를 하시더라고. 계속 라이딩만 한 건 아니고, 빵하고 커피 사서 삼청동쯤에서 같이 이야기도 했거든. 그 친구는 그런 순간과 시간이 되게 필요했었나봐. 그런 분위기 전환. 되게 좋았다고 하더라고. 내가 전문적으로 상담을 해주는 사람도 아니고, 사실 내가 도와줄 여력도 별로 없는 거잖아. 그럼에도 이런 걸 통해서 같이 뭔가를 공감 내지는 도움을 줄 수 있었다는 게 좋았지.Q. 헉이 생각하는 인력거의 매력은 뭐야?비슷한 의미인데, '소통‘인 것 같아. 우리가 전해주려는 서비스 같은 게 있잖아. 예를 들어서 그냥 라이딩 자체의 happiness 일수도 있고, 사람들이 많이 찾는 북촌과 서촌의 설명일 수도 있고. 보는 사람과 타는 사람, 모두가 서로 행복해지는 거. 거의 대부분 내릴 때 보면 좋아하시는 편이야. 다들 또 타러 오겠다고 하시고. 이런 지역을 더 잘 알게 돼서 좋았다고 하시고. 그런 행복, 소통, 교감 그런 것들이 인력거가 가진 매력이지.Q. 헉이 특히 좋아하는 길이 있어?인력거를 끌고서는 로맨스코스를 좋아해. 히스토리코스 창덕궁까지 가려면 너무 멀어(웃음). 그리고 이야깃거리 같은 것들이 내 기준에는 로맨스가 더 많더라고. 히스토리는 로맨스코스만큼 다양성을 주고, 사람하고 섞인다는 느낌은 덜한 것 같아.개인적으로 좋아하는 길은, -사실 다분히 나무가 있어서이긴 한데- 헌법재판소에서 나와서 골목으로 들어가는 길을 좋아하거든. 사람들이 생각보다 안다니기도하고, 지금 이 시기에는 백목련이 펴서 좋아. 그리고 중간쯤에 400년 된 진짜 멋진 향나무가 있어. 향나무가 정말 너무 예쁘게 자랐어. 사람들도 이 이야기를 해주면 되게 좋아하기도 하고.그리고 계동길이라고 있어. 그 길이 개인적으로 좋더라고. 옛날 동네 느낌이 많이 사라지긴 했지만, 여전히 철물점이나 미용실, 의상실, 밥집이 몇 개라도 남아있어. 사람들이 많이 찾다보니까 카페, 피자집 같은 새로운 것들이 있고. 거기 왜, 참기름집도 있잖아. 거기 지나갈 때 기름 짤 때 고소한 향이 바람 따라 퍼지는 그런 느낌도 좋고.북촌 한옥 마을에 전형적인 이미지 그런 것도 좋지만은, 오히려 나는 계동길을 올라가면서 실제 사람들이 생활하면서 찾을 수 있는 가게들을 보는 것도 좋더라고.아 또 하나 더하자면, 로맨스코스 돌면 동십자각에서 국립현대미술관 쪽으로 더 올라가면 ‘비술나무’ 세 그루가 있거든. 내 개인적인 생각으로는 코스를 바꾸더라도 그 곳은 꼭 설명해야하는 절대적인 포인트거든. 비술나무가 주는 상징성이 굉장히 커. 그곳이 중앙 청계천이었거든. 비술나무가 물가에서 잘 자는 나무야. 예전에 그 길에 흘렀던 개천은 사라졌지만 비술나무가 있어가지고, 그 지형을 보여주고 있는 거잖아. 코스 설명에 완전히 들어가야 되는 부분이라고 생각해. 그리고 국립현대미술관이 설립된 배경에 대해서도 설명해주어야 된다고 생각해.동십자각이 지금은 섬처럼 도로 중간에 있잖아. (헉 핸드폰 속 사진자료를 보여주며) 예전에는 이렇게 담장으로 이어져있고 그 옆은 개천이 있었어. 그 담장, 개천의 물가를 따라서 비술나무가 쫙 있었던 거고 지금도 있는 거지.Q. 와, 비술나무가 살아있는 역사네!그렇지. 내 입장에선 이걸 꼭 설명해주어야지. 코스 중 일부로 적극 반영이 됐으면 좋겠어!Q. 헉 사진찍는 건 언제부터 좋아했어?내가 나무를 좋아하고 잘 보러 다니고 그러다보니까, 나무 사진을 찍고 집에 와서 도감도 뒤져보고 나무 공부를 하고 그런 것들이 반복되니 자연스럽게 사진을 좋아하게 된 것 같아. 나무를 주제로 하는 사진을 찍게 됐고, 찍는 만큼 사진을 잘 찍게 됐고, 아직은 어설프지만 사진전도 하게 되었고. 그리고 2002년쯤 나무강좌를 수강하게 되었는데, 나무를 더 좋아하는 계기가 되고, 나무를 주제로 한 사진을 찍는 걸 좋아하게 된 것도 그때쯤이라고 볼 수 있지. Q. 헉이 생각하는 나무의 매력은 뭐야?아주 어렸을 때부터 자연, 생태, 꽃 그런 것들을 너무 좋아했어. 보는 것도 좋아했고, 초등학교 다닐 때는 교정에 버려진 화분이나 풀이나 꽃들이 있으면 불쌍하고 안타까워서 집에 오는 길에 가져와서 집 꽃밭에 심어주고 그랬었거든. 그런 감수성이 다른 사람보다는 풍부했던 것 같아. 어렸을 때는 시골이었으니까 집에 마당이 있잖아. 아버지가 그 마당을 온갖 나무들로 다 채웠었어. 그리고 화분에는 선인장, 철 따라 피는 온갖 꽃들. 수를 열거할 수 없을 정도로 많았어. 그 속에서 자라났지. 그리고 아까 이야기했듯이 나무강좌를 수강하고 정기적으로 모임도 가지면서, 그런 자연에 대한 관심이 나무로 집중되었지.대부분 사람들은 야생화나 꽃을 보는 정도에 아직은 머물러있거든. 이게 나무로 옮겨오는 게 좀 힘들어. 그리고 그러려고 하지도 않고. 그런데 나무의 세계는 훨씬 우직하고 깊어. 꽃을 보는 건 순간적인 기쁨이고 한 철이지만은, 나무는 일 년 사계절의 모습이 다 달라. 겨울에서 봄이 될 때 움이 트는 느낌, 연초록으로 물들 때의 느낌, 초록이 왕성하고 단풍이 들고 다시 겨울이 될 때의 느낌. 그리고 나무는 한 자리에 머무면서 자기 분수, 자기 만족을 아는 것 같아. 나무를 보면 그런 것들을 보고 느낄 수 있지. 또 이런 것들을 사진으로 표현해보는 재미가 있어.한 자리에서 몇백년을 족히 살아내는 나무들을 보면 보통 철학자가 아닌 거지. 움직일 수 없는 단점을 장점으로 승화시킨 것이라고 해야 될까.(웃음)만약 나무가 동물처럼 이동하고 사람처럼 욕심 부리고 그렇다면, 나무끼리도 서로 상처만 내고 오히려 제명에 못 살걸, 아마. 나무는 그냥 한 자리에서 욕심내지 않고 자기가 취할 것만 취하고, 자기 페이스대로만 가니까. 그런 건 확실히 나무가 가진 다른 점이기도 하고, 좋은 점이지. 사람들이 나무를 많이 알아줬으면 좋겠어. 역사 문화를 다 가지고 있으니까.Q. 아띠인력거란 헉에게 어떤 존재야?나를 더 젊게 해주는 것. 젊은 사람들이 주로 몰려 있기도 하고, 공유하는 문화 자체도 젊은 문화잖아. 그런 가운데 내가 활동을 하게 되니까 확실히 그런 것들은 있는 것 같아. 내가 젊어지는 느낌. 어느 순간 내가 이 사람들이랑 똑같은 라이더라는 느낌이 들 때, 나이를 떠나서 나도 함께 젊은 느낌을 공유하는구나! 그런 생각이 드니까, 아띠는 나를 젊게 해주지. 그리고 반말문화가 서로가 다가가기 쉽게 만드는 연결고리가 되는 것 같아. 많은 젊은 사람들과 어울리는 기회가 된 거니까 너무 좋고.또 북촌의 분위기나 내가 아는 좋은 느낌들을 다른 사람들과 공유하고 싶었는데, 사람들을 태우고 만나고 하면서 아띠를 통해서 실현하니까 그런 매개체 역할을 해줘서 좋고. 또 거기서 소통도 되고 행복해지고. 그런 행복해하는 사름들을 보면 기쁘고 행복해지고.아띠의 상징인 파란색처럼 나를 젊게 해주는 것 같아. 그리고 내가 그렇게 되려고 노력하는 편이고.Q. 미래의 아띠라이더들에게 조언을 해준다면?젊은 사람이라면 한 번쯤은 해봤으면 좋겠다싶어. 몸을 쓰는 일이라 여름에는 덥기도 하고, 겨울에는 춥고 사람이 없어서 힘들긴 하지만, 얻어지는 것들은 충분히 보상하고도 남으니까 많이들 도전했으면 좋겠어. 청춘의 한 페이지가 아띠인력거라는 소중한 경험과 추억이 된다면 굉장히 좋을 것 같아. 자기 몸을 사용하는 데, 행복까지 전달할 수 있다면 젊었을 때 안 해보면 언제 또 해보겠어. 값진 노동이라는 것을 경험해봤으면 좋겠어.그리고 요즘 많은 사람들이 한 곳만 바라본다는 게 문제잖아. 한 가지에만 내몰리게 되는 게 사람을 불행하게 만드는 것 같거든. 꼭 아띠를 안하더라도 젊은 사람들이 좀 더 자기만이 할 수 있는 것들을 도전해보고 생각과 경험을 다양하게 해서, 자기만의 길을 만들어 나갔으면 좋겠어. 꿈을 실현시켜나가고 자기가 하고 싶은 것을 하는 게 결과적으로는 진짜 행복해지는 것 같아. 그런 선택 중에 하나가 아띠인력거가 충분히 될 수 있을 거라고 보거든. 그래서 젊은 사람들이 많이 와서 경험도 쌓고, 자기 꿈을 키워나가는 하나의 계기가 되었으면 좋겠어!자연과 나무를 사랑하는 따뜻한 마음을 가진 헉의 두번째 인터뷰였습니다.우직하고 깊은 '나무여행 전문가' 헉의 새로운 도전을 응원하며인터뷰를 마칩니다:)#아띠라이더스클럽 #팀원소개 #팀원인터뷰 #팀원자랑 #기업문화 #조직문화 #사내문화
조회수 1744

Mong 3.0과 프론트엔드개발자 쿤!, 반응형 웹에 도전하다!!

안녕하세요 크몽 개발팀입니다.작년 12월 크몽파티때 기억나시나요? 프론트엔드개발자인 저 쿤이 그날 반응형웹을 1~2월달까지 시전하겠다! 라고 호언장담했었는데요.. 저도 그때당시에는 무조건 해보자라는 생각으로 얘길했던건데.. 팀원들의 반응이...이랬었더랬죠... 그때의 저의 심정은 가슴이 바운스바운스 두근대~... 넵 그랬었습니다...하지만!!! 1월달에 잠시했던 공부와 2월달에 잠시얻은 잉여로움을 발판삼아 전부는 아니지만 메인페이지만 해내었습니다. 처음의 도전은 험난하디 험난했습니다.여러 문서들을 보던가운데 반응형웹을 잘 소화하고 계시는 기업블로그의 포스팅을보게 되었는데요..출처: S사 기업블로그한마디로 이해가 쏙쏙되는 포스팅이었습니다.여기에 감명받은 저 쿤은 바로 연습에 들어갔더랬죠..하지만.. 각각 디바이스에대해 설정값을 넣어줘야하는반응형 웹은 쉽게 다가갈 수 없는 미저리같은 그런 녀석이었습니다아..그래도.. 다시 심기일전하는 마음으로 처음부터 모크업을 진행을 하였답니다. 처음 모크업은 이러하였어요...메인화면 소개를 거치면 짠하고 크몽홈페이지가뜨는!!!!그런 이미지였답니다. 하지만 여러분들도 알다시피 계획한일들이 안될경우도 있잖아유....저도 그러하였어요..물론 처음시작할때에만 하더라두 이것들을 다끝내겠어란활활 불타오르는 열정으로 시작했었죠!!처음작업을해서 뽑아낸 아이들의 사진이에요. 상단바를 각 디바이스크기에 맞게 하는 작업을 먼저 했었는데요..이 녀석이 은근 골치 아픈 녀석이었답니다.각 위치마다 고정폭이 정해져있어고 그녀석들을 반응형에 맞출려고 얼마나 고생했는지.. 가뜩이나 수학도 못하는데 퍼센트 계산만 했엇답니다.. 저에게 퍼센트도 이러했답니다.. 하.....수학공부를 열심히해야겠어요..그래도 꿋꿋이 계산하고 넣어보고 계산하고 넣어보고 계산하고 넣어보고 즐기고~그러다 보니 점점 하나하나씩 되기 시작했어요!!머리는 점점 잘 돌아가고 재능목록들이 자기자리로 돌아가고!!!!노력의 기적이 어떤것인지 보았습니다.. 이리하여 결국에는..이러한 결과를 낳았더랬죠!! 실은 작업한지 꽤나됬고 릴리즈된지도 꽤나되었지만..아마두.. 모르시는 분들이 많을거에요지금 여러분들이 가지고 계신 폰으로 크몽의 반응형메인을 만나실 수 있답니다~!!한번 보시고 따끔한 충고를 답글에 남겨주세요. 따끔하게 맞고 고칠 수 있는부분은 한번씩 잉여로울때 작업을 하도록하겠습니다. -----------------------------------------------------------------------그럼 지금부터는..제가 이번작업을 하면서 느꼇던 몇가지를 적어볼까합니다.바로바로바로 당신이 반응형웹을 하고싶다면!!  따단!!그 첫번째 규칙!! 절대 고정폭을 주지말아라-이것이 반응형웹할때는 가장 중요한 거십니다.반응형웹이라도 픽셀은 PC와 노트북에서 여러분의 눈에 보이는것과 마찬가지로 적용된다는점!!!만약에 고정폭으로 1200px를 주게되었다면 데스크탑이나 노트북에서는 보기좋게 보이지만모바일환경에서는 엄청확대되어보인다는 사실 아셨나요??! 그럼 "고정폭대신 CSS에 뭘 줘야되는건가요?"라고 묻는 당신께 퍼센트(%)를 바칩니다.. CSS에 픽셀(px)대신 퍼센트(%)를 넣으면 여러분이 브라우저크기를 낮출때마다화면이 가변적으로 늘어난답니다. 물론 퍼센트는 백분율이라 화면의 크기에 맞게크기를 지정해주면 된답니다.그 두번째 규칙!! 미디어쿼리를 활용하랏!!!-미디어쿼리... 과연 그거슨 무엇인것인가!!!쉽게 설명해드리겠습니다. 미디어쿼리란 여러분의 브라우저크기를 컴퓨터가 인식해그 크기에맡게 보여주는 그런 녀석입니다.여러분들이 딱히 할게 별거없어요..그냥 미디어쿼리를 CSS에 설정해주고 그 크기에맡게 어떻게 보여줄것인가에 대해작성해주시면 되는겁니다. 참 쉽죠오?? 으앗!!음.. 일단 자세한 내용은 저의 스승블로그의 포스팅을 보시면 쉬울거에요..http://readme.skplanet.com/?p=9739#s5반응형 웹 기술 이해 | READMEreadme.skplanet.com그 세번째 규칙!! 같은줄에 있는 컨텐츠가 다들어가기엔 모바일화면이 너무작다면 밑으로 내리여!!!-분명 여러분들의 홈페이지를 작업할때에 보면 PC사항에서 잘 자리잡혀 있던것이 모바일환경에선 왠지 좁아 터질 것같다라고생각이 드실수 있습니다. 그렇다면.. 밑쪽으로 내리는 것을 저는 추우천을 드립니다!!그렇담 그 컨텐츠가 내려간다면 배치는 어떻게 해야 이쁜가에대한 저의 답변은 "그건 디자이너님 너의 맘이야 God bless you"입니다. 그 네번째 규칙!! 부트스트랩 같은 녀석들을 사용하랏~!!!!-아마 직접 CSS와 js를 조작하라고해도 못하시는 분들이 있으실거에요..그런분들을 위해 태나났습니다아~!!!! 바로바로바로 부트스트랩과같은 것들인데요.이 녀석들은 자기들이 설정해놓은 CSS집단인 컴포넌트로 웹개발자들을위협(?)하는 그런 녀석이랍니다.이 뇬석들을 사용하면 반응형웹이고뭐고 멋진표던뭐던 다 뚝딱뚝딱 만들어내죠..저도 애용하고있는 아이들이랍니다.(실은.. 상단바작업은 제가 CSS로했고 컨텐츠들은 부트스트랩이란 도구로 작업을 하였는데요.. 그시간차이가 우와 할정도에요..)그 정도로 좋은 녀석이랍니다. 그 녀석을 찾으실려면 구글검색창에 "부트스트랩"이라고 쳐보세요.CSS무지식개발자라도 쓰실수있게 패키지가 구성되어있답니다. 아무 클래스나 골라담아요 골라담아~!!-----------------------------------------------------------------------음음.. 뭐 별거없었지만 제가 올린 포스팅글 잘보셨는지 궁금하네요..꼭 반응형웹에 도전하시는 분들이 봤을때 좋은 내용이었으면 좋겠다는 작은 바램이 생기네요그럼 저는 크몽에서 프론트엔드 개발자를 맡고있는 Kun이었구요.다음번에 더 좋은 포스팅으로 만나뵈요. 제발~#크몽 #개발자 #개발팀 #팀원소개 #인사이트 #스택도입 #일지
조회수 1816

스타트업 창업자에게, 투자란?

스타트업을 4번 창업해보면서, 과연 투자, Funding이 갖는 의미에 대해서 이렇게 진지하게 생각해 본 적이 있었나 싶다. 어찌 보면 너무 어리고 모르기도 했었던 것 같기도 하고, 실제로 투자가 자금 그 이상도 이하도 아닌 생존을 위한 수단이었던 경험들이 더 많았던 것 같다. 그러나 이번에 핀다를 시작하고 투자를 2번 받게 되면서 이에 대해서 다시 생각해 볼 수 있는 계기가 되어 그 생각을 공유해보고 싶었다.(본격적으로 글을 쓰기 전에) 핀다(Finda) 를 시작한 지 1년도 되지 않았고, 아직은 초기 기업이기에, 다른 훌륭한 창업자들과 선배님들에 비하자면, 사실 많이 짧은 생각일 수 있다. 그래서 지극히 주관적이고 개인적인 생각임을 먼저 알리고 싶다.투자는 언제 받아야 할까?가장 많이 듣는 질문이다. 나 또한 스스로에게 그리고 초반 공동창업자인 홍민님과도 가장 많이 이야기했던 요소가 바로 '타이밍'이었다. 왜냐하면 피말리는 경험을 한 적이 있기 때문이다. 정말로 자금이 천만 원 이하로 떨어져서 두 달치 급여를 주지 못했을 만큼 투자 타이밍을 놓쳤을 때. 다시는 그런 경험을 하고 싶지 않을 만큼 힘들었다.개인적으로는 두 가지가 가장 중요하다고 생각한다. 1) 앞으로 1년 이상의 시간 동안 정말 우리 회사가 만들고 싶은 제품과 서비스 그리고 팀에 얼마나 자금이 필요할지, 2)그리고 그 자금을 어떤 방식, 즉 투자인지 매출인지 등으로 채워나갈 수 있을지가 어느 정도 자신 있게 그림 그릴 수 있을 때를 아는 것. 물론 초기에는 도화지에 스케치했던 것들을 여러 번 지우고 덧 그리기는 했었지만, 뼈대를 잘 살렸다면 계획도 잘 세우고 좋은 타이밍에 투자를 받았다고 평가해도 좋을 것 같다.하나의 부수적인 팁으로는 어느 정도 runway가 남았을 때 IR을 시작하는 것이 내게는 좋았던 것 같다. 우리 회사의 경우 약 8개월 정도 자금이 남았을 때 본격적으로 IR을 시작했는데, 그래서인지 마음이 덜 조급해지기도 했고, 결과적으로는 매우 운이 좋게도 빠르게 투자를 유치하는데 큰 도움이 되었다.투자는 누구에게 받아야 할까?창업자라면 한 번이라도 고민했을 부분이라고 생각한다. 예비창업자라도 부모님, 친구, 지인 등에게 작게라도 투자를 받고 시작할 수 있을 거라고 생각할 수 있으니 말이다. 사실 투자를 고민할 때 가장 먼저 생각이 드는 질문이기도 하다. 이에 대한 고민을 할 때마다 나는 주변에 창업 선배님들이나 예전 투자자분들 그리고 멘토분들에게 많은 조언을 구하고 있다.2014년 7월 투자자이자 스타트업멘토인 이택경대표님, 호창성대표님, 정세주대표님, Scrum Ventures 의 Tak, 류중희대표님, 임정욱센터장님 그리고 비석세스 정현욱 대표이에 대해서는 내 경험을 조심스럽지만 꼭 공유하고 싶다. 지금까지 투자자들은 적어도 내가 해결해나가는 문제에 크게 공감해 주셨던 분들이었던 것 같다. 그래서 만약 공감해주는 분들을 만난다면 그 ‘관계’가 매우 중요하다고 생각했다. 물론 투자를 받았던 ‘나의’ 투자자이든, 받지 못한 아쉬운 분들과의 관계 모두…모두에게 인정받을 수는 없지만, 하지만 관계가 없거나 안 좋다가도 다시 좋아질 수 있다. 그리고 다시 기회는 올 수 있다! 생각지도 못했지만 현재의 투자자가 된 퓨처플레이와의 첫 만남은 잊을 수가 없다. 정부 자금지원을 위한 후보자들의 IR이 있는 날인데, IR인 줄 모르고 참석해서 제대로 발표를 망쳤는데, 난 아직도 그 실망한 투자팀들의 표정을 잊을 수가 없다. 아직도 떠올리면 등에 땀이 날 정도다.그때 어떤 생각이었는지 1주일 이후에 다시 한번 기회를 달라고 사정했고, 아주 가까스로 1달 뒤 정부자금 지원에 성공했다. 그 날 이후로 주말 없이 미국과 한국팀과 함께 자료를 만들고, 최종 발표 전에는 선정릉 공원을 돌며 발표자료와 스크립트를 중얼거리며 준비했었다. 하지만 결론적으로는 본사가 미국에 있고 한국인 지분율이 크지 않아 최종 심의에서 떨어졌고, 그렇게 퓨처플레이와는 관계를 다하는 듯했다. 하지만, 생각지도 못하게 이번 창업 아이템에 대한 고민, 그리고 시작 그리고 두 번의 투자를 모두 류중희 대표님 그리고 퓨처플레이와 함께하게 되었고 그렇게 관계는 시간에 따라 바뀌어가지만 계속 이어지고 있다.그리고 두 번의 투자를 리드했던 500 스타트업, Tim Chae와 샌프란시스코, 500 Stratups, 500 Kimchi는 너무나 할 이야기가 많아, 다음 기회에 다시 하도록 하겠다.2015년 2월 500스타트업 데모데이 때 현 500 Kimchi 의 Tim Chae Partner와 Founding Partner인 Dave Mcclure와 함께 핀다는 투자를 통해 어떤 것들을 이루고자 하나?첫 번째, 제대로 된 프로덕트와 서비스의 구축이다. 현재까지 핀다는 풀어나가고 싶은 문제의 1/100 정도를 풀었다. 금융상품을 가입하고 개인의 자산을 관리하는데 개인들이 겪고 있는 문제점은 정말 너무나도 많다. 그러기 위해서는 이 문제를 함께 풀 수 있는 정말 좋은 팀이 필요하다. 프로덕트와 서비스를 기획하고 설계하고 개발하고 풀어나가는데 더 많은 사람들과 함께하고 싶다.둘째, 고객들에게 정말 유용한 콘텐츠를 많이 생산하고 전달할 예정이다. 학창 시절 소위 ‘경제’라는 과목을 배웠지만, 실제 ‘개인금융’과 직결되는 경제에 대해서는 정말 회사를 취직해서도 아무것도 아는 것이 없었다. 부모님에게로부터 독립하지 못했기에, 무지한 채로 돈을 벌게 되었고 버는 족족 나가기가 일 수였다. 엄마에게 통장과 알지 못하는 보험 등을 넘겨받았을 때 당황했던 그 순간을 아직도 잊을 수가 없는데, 그 이후로 제대로 된 교육은 아니었지만 내게 필요한 정보를 찾고 적용하는데 무려 10년이나 걸렸다. 특히 부모님과 다른 시대를 살고 있는 우리들에게 부모님과 같은 금융생활, 절약, 투자, 저축 이 모든 게 너무나 달랐기에 우리 밀레니얼들이 필요한 금융 정보는 정말 필요하다고 생각한다.       마지막으로, 우리 팀을 위해 쓰고 싶다. 늘 넉넉하지 못하더라도, 지금까지 최고의 팀원에게 주는 상, 그리고 두 번의 명절, 생일, 결혼, 돌과 같은 경조사 그리고 아주 가끔의 회식 등을 통해 격려와 축하를 나누려고 홍민 님과 노력했고 앞으로 더 노력할 예정이다.이 모든 것을 가능하게 만드는 데 우리 핀다의 선택은 투자였고, 앞으로도 투자와 그리고 매출을 통해 더 많은 꿈들을 이뤄내고 싶다. Build Things that Matter.#핀다 #스타트업 #창업자 #창업가 #투자유치 #자금유치 #자금조달
조회수 897

마케터가 알아야할 Amazon Go가 몰고올 변화

https://www.youtube.com/watch?v=NrmMk1Myrxc<iframe width="700.000000" height="394.000000" src="//www.youtube.com/embed/NrmMk1Myrxc" frameborder="0" allowfullscreen="">어제 밤부터 오늘 오전 내내 아마존고 출시 소식으로 전 세계가 떠들석 했다. 이로인해 몰고올 엄청난 파장이나, 기술적 백그라운드에 대한 글들이 쏟아졌다. 이번 글에서는 마케터의 관점에서 아마존고가 몰고올 변화를 주목해 보고자 한다. 이 글은 정근호님의 브런치 글과 함께 읽어보면 더 재밌을 것이다.1. In-Store Analytics 리서치 분야의 변혁옛날 유명했던 책이 하나 있다. 바로 파코언더힐의 쇼핑의 과학 (Science of Shopping). 1999년에 출간된 이 책으로 인해 리테일 업계에서는 In-Store Analytics가 일대 유행을 하기도 했다 (사실 그 전부터 존재하던 분야였지만 이 책으로 인해 수많은 마케팅 관리자들의 관심을 불러일으켰기 때문으로 봐야겠죠). 이 분야는 빅데이터와 센서, 페이스 디텍팅, 입자분석, 심리조사 등등 기술스텍이 매우 높은 전문분야에 해당하는데, 이미 IBM, 아마존 등에서는 솔루션화해서 컨설팅하고 있는 분야이다.아마존고에 사용된 기술은 이 방대한 영역의 리서치 툴이 무색해질 정도로 간단하게 저 In-Store Analytics가 가능해 질 것이다. 예를들면 다음과 같은 형태의 실시간 트래킹이 가능해 지는 것이다.1) 소비자 동선중에 선반에 손이 가는 지점2) 각 매대의 소비자 funnel (유동인구 대비 환기율, 환기대비 픽업율, 픽업대비 구매고려율, 최종구매율 등등) 분석3) 소비자 타겟별 행동 분석 (인구통계적으로 인기있는 품목이나 컨버젼 높은 상품들)4) 매대전환율 분석 (어떤 제품들이 빨리빨리 빠져나가는지, 객단가별로 컨버젼은 어떻게 나오는지 등등)본인이 저 분야에는 지식이 미천해서 저것밖에는 나열을 못했지만 예상하기로 수십가지의 초 고난이도의 In-Store Analytics가 아마존고에서는 초 심플하게 행해질 것이다. 이게 가능한 이유는 바로 1) 소비자가 이미 앱에 가입되어있는 아마존 프라임 멤버이기 때문에 매장 진입순간부터 그 사람이 누구인지 마크가 가능하고, 2) 소비자가 이동하는 동선이 실내측위법과 앱 데이터로 트래킹 가능할 것이며, 3) 스마트폰 센서로 소비자가 현재 어떤 행동을 하는지 (빠르게 이동중, 천천히 이동중, 멈춤, 턴, 되돌아가기 등등)가 측정 가능하며, 4) 제품이 픽업되고 카트에 담겼다가 구매 전에 취소되고, 구매 후에 취소되고, 구매가 완료되는 등등의 결과값들이 계정별로 쌓이는 구조이기 때문이다.2. 인스토어 마케팅의 자동화현재 매장 내 주요 마케팅 툴들은 다음과 같다.1) 1+1이나 가격할인, 묶음할인 등의 할인제품 태깅2) 상설 할인매대 운영3) 매대 엔드존 운영 (할인행사, 강조제품 등)4) 각종 디스플레이 광고5) 시식 등의 사람이 직접하는 세일즈 프로모션위와 같은 마케팅 툴이 소비자 반응에 의해 자동으로 변경, 최적화, 연장, 축소등등이 가능해지는 매장을 상상해 보자. 예를들면 각 제품별 전자디스플레이에 소비자 반응 및 컨버젼에 따라 할인행사가 변칙적으로 적용되고, (우리나라는 시식때문에 사람이 꼭 필요하지만 미국에는 시식행사 별로 못본것 같아요) 사람이 필요 없이 앱과 디스플레이를 통해 실시간 타임세일이나 묶음 세일등을 운영하는 등의 인스토어 마케팅 자동화를 통해서 엄청난 비용을 절감하고 소비자 반응에 맞춰 빠르게 마케팅 툴을 적용할 수 있게 되는거다. 매장을 운영해보신 분들은 알겠지만, 매장에서 행사 하나 진행하는게 얼마나 까다로운지, 스토어 VMD가 마케팅 계획에 따라 얼마나 번거롭게 적용되는지 아실거다. 이런 부분에 일대 혁신이 가능해 지지 않을까.3. 옴니채널의 유의미한 발전이건 위에 언급한 정근호님 글에도 나와있듯이, 아마존고의 시도는 옴니채널 분야에 유의미한 발전을 가져올 거다. 사실 옴니채널이 화두가 된지 벌써 5년이 넘었지만 그간 유의미하게 발전됐다 싶을 사건은 크게 많지 않았다. 대부분이 그저 오프라인 체험과 온라인 구매 사이를 연결하는데에만 초점을 맞춰오거나, 홈플러스 등과 같은 리테일러들은 재고를 모바일 쇼핑 채널과 연동시켜서 모바일 세일즈와 오프라인 세일즈를 적절히 융합시키는 정도에 그쳤었다. (물론 이게 낮은 수준의 변화라고 얘기하는건 절대로 아닙니다. 세간에 화두가 된 것에 비해 실제로 리테일 분야는 보수적이고 고난이도의 영역이라서 실용적 접근이 어려웠다는걸 얘기하는거죠)아마존고 스토어에서는 진정한 옴니채널의 발전을 가져올 다음과 같은 변화가 예상된다.1) 아마존고의 오프라인과 아마존대시의 온라인이 융합하여, 소비자는 정기상품들을 기존대로 아마존대시에 태깅해놓고 정기구독할 것이고, 퇴근길에 잠시 아마존고를 들러서 신선식품 등 아마존대시가 커버 불가능한 영역의 쇼핑을 해결할 것이며, 아마존고에서 중복 구입한 상품들은 자동적으로 정기주문건에서 정산되어 굳이 소비자가 복잡하게 온/오프라인 카트를 직접 관리하지 않아도 되는게 가능해 진다.2) 아마존고에서 측정되는 오프라인 행태와 온라인데이터가 결합하여 드디어 한 개인의 온/오프라인 연결 데이터 분석이 가능해 진다. 이 연결데이터로 지금까지와는 다른 전혀 새로운 형태의 옴니채널 마케팅 기법이 개발될텐데, 구체적으로 어떤 모습의 마케팅 기법이 될지는 좀더 고민해 봐야 겠지만, 포인트는 지금처럼 단순히 1+1, 제품할인 등에 머무르는 세일즈 프로모션은 아닐거라는거다.3) 만일 아마존고가 데이터를 오픈하거나 솔루션화해서 거래할 경우, 브랜드 및 제조사들은 기존에 리테일러를 거치지 않고서는 얻기 힘들었던 고객 접점 데이터를 쉽게, 실시간으로 접근 가능해지기 때문에 그들의 제품전략, 마케팅전략 역시 옴니채널에 기반해서 움직일 것이다. 이 부분은 솔직히 내공이 부족해서 어떤 그림일지 구체적으로 묘사는 힘들어서, 다른 분들의 다양한 의견 부탁드린다^^;;지금까지 아마존고가 불러올 다양한 변화에 대해 마케터의 관점에서 하나씩 풀어봤다. 쓰고나니 소설같은 이야기들도 많아보이지만, 어디까지나 한 개인의 의견일 뿐이니 잘 수렴해서 읽어주시고, 중요한건 아마존의 이 담대한 실험은 비단 테크업계의 일이 아니라 오히려 마케터들에게 더 직결되는 변화를 가져올거라는게 내 생각이다.글쓴이는 스팀헌트 (Steemhunt) 라는 스팀 블록체인 기반 제품 큐레이션 플랫폼의 Co-founder 및 디자이너 입니다. 비즈니스를 전공하고 대기업에서 기획자로 일하다가 스타트업을 창업하고 본업을 디자이너로 전향하게 되는 과정에서 경험한 다양한 고군분투기를 연재하고 있습니다.현재 운영중인 스팀헌트 (Steemhunt)는 전 세계 2,500개가 넘는 블록체인 기반 앱들 중에서 Top 10에 들어갈 정도로 전 세계 150개국 이상의 많은 유저들을 보유한 글로벌 디앱 (DApp - Decentralised Application) 입니다 (출처 - https://www.stateofthedapps.com/rankings).스팀헌트 웹사이트 바로가기
조회수 2275

리디북스 서버 스택 소개

2대의 서버로 시작한 리디북스는 각 기능의 요구사항에 최적인 솔루션들을 채용하고, 고가용성(High Availability)을 지향하면서 매우 복잡하고 다양한 구성으로 변모해왔습니다. 이 글에서는 리디북스가 어떤 스택에서 서비스를 제공하고 있는지 간략히 소개하려고 합니다. 각 스택의 선택 이유나 문제에 부딪히며 배운 노하우 등은 차차 포스팅하겠습니다.대략적인 구조리디북스 백엔드 구조도로드 밸런싱로드 밸런싱은 소프트웨어 로드 밸런서인 HAProxy를 이용하고 있습니다. HAProxy는 L4, L7 스위치의 기능 및 로드 밸런싱을 제공하고 구성 역시 매우 간편합니다. 리디북스는 고가용성을 위해 Active - StandBy 서버 한 쌍이 가상 IP를 공유하고, keepalived를 통해 서로의 상태를 확인하며 자동 failover 됩니다. 각 서버군이 사용하는 네트워크 트래픽에 따라 스위치와 연결되어 있는 네트워크의 속도가 다른데, 이를 효율적으로 사용하기 위해 HAProxy 서버 쌍을 2개 구성하여 DNS를 통해 HAProxy로 들어오는 트래픽도 분산하는 방식으로 네트워크 효율화를 이루었습니다.웹 서버Ubuntu 14.04 LTS 기반에 웹서버로는 Apache, Nginx를 사용하고 있습니다. 서점 용 웹 서버, 정적 파일 서버(CSS, JS 등), 통계용 서버, 책 파일에 DRM을 씌워 전송하는 다운로드 서버 등 여러 개의 웹 서버 그룹을 나누어 관리하는데, 각 서버가 하는 역할이나 테스트를 통해 확인한 병목 지점을 고려해 웹서버를 채택합니다.API 서버리디북스는 서점이나 앱에서 이용하는 수많은 API가 존재하는데 종류에 따라서는 초당 수만 개의 호출이 발생하는 경우도 있습니다. 이러한 트래픽을 감당하기 위해 비동기 처리가 필요한 경우 Node.js를 주로 이용하여 구현하고 있습니다. Node.js 프로세스는 PM2를 통해 클러스터 모드로 실행되어 요청을 처리합니다. 클러스터 모드는 프로세스에 대한 로드 밸런싱을 지원하며 프로세스를 순차적으로 재시작할 수 있어 무정지로 서비스를 재시작할 수 있습니다데이터베이스서비스 초기에 MySQL을 사용했고 현재는 MariaDB로 변경한 상태입니다. 한때 DB가 SPOF(Single Point Of Failure)였던 시기를 겪으면서 read/write의 분산을 위해 많은 노력을 들였습니다. 리디북스에서 실행하는 대부분의 데이터 연산은 읽기 동작이므로 애플리케이션 레벨에서 읽기/쓰기 접근을 구분하여 1차적으로 부하를 분산하고, HAProxy를 통해 여러 대의 slave로 분배해 2차적으로 부하를 분산합니다. 쓰기 동작이 빈번하거나 데이터 성격상 NoSQL이 필요한 경우 Couchbase와 Redis를 적극적으로 사용하고 있으며, MariaDB 상에서도 쓰기 동작의 분산 필요성이 대두됨에 따라 상반기에 샤딩을 준비하고 있습니다. 사용자 행동, 트랜잭션 로그 등 하루에도 방대한 양이 쏟아지는 데이터의 경우 Azure 내에 구성한 Hadoop 클러스터에 보관하며, Hive 저장소를 BI(Business Intelligence) 시스템 기반으로 활용하고 있습니다.파일 시스템리디북스에서 다루는 책 파일은 매우 방대하고 중요한 데이터입니다. 어떠한 일이 있어도 데이터 유실이 발생해서는 안되며, 일부 하드웨어 혹은 노드에 장애가 발생하더라도 서비스 장애 없이 파일을 서빙할 수 있어야 합니다. 저희는 GlusterFS로 6대의 노드를 클러스터를 구성하고 이를 파일 접근이 필요한 서버에서 NFS-like 형태로 마운트하여 사용하고 있습니다. 동일 데이터는 여러 노드(3 replica)에 분산 저장되며, 각 노드에도 RAID 구성을 하여 빠른 장애 대응 및 데이터 유실 방지에 노력하고 있습니다.검색리디북스의 책/저자 검색 등은 ElasticSearch를 통해 이루어집니다. 형태소 분석기는 오픈소스인 은전한닢에 따로 정의한 dictionary를 조합해 사용하고 있고, 2대의 노드로 클러스터가 구성되어 있습니다. 추가/변경되는 도서 정보는 증분 색인을 통해 실시간으로 검색 서버에 반영됩니다.작업큐이메일 발송, PUSH 발송 등의 작업들은 웹 애플리케이션이 직접 실행할 경우 페이지 응답속도를 떨어뜨리고, 진행상황 파악이나 실패 시 재시도하는 등의 실행 관리가 어렵습니다. 이런 문제를 해결하기 위해 Beanstalk라는 Work Queue에 작업을 일단 쌓아두고, 여러 대의 서버에서 실행되고 있는 컨슈머들이 작업을 가져와 순차적으로 진행하는 형태로 구성되어 있습니다.모니터링장애 발생 포인트와 시점을 예측할 수 없는 만큼 장애 발생의 빠른 인지를 위해 모니터링은 매우 중요합니다. 리디북스는 99.999%의 고가용성(High Availability)을 목표로, 버그와 장애 없는 안전한 운영을 위해 아래와 같이 다양한 오픈소스 및 유료 솔루션을 도입하여 활용하고 있습니다.30+ 이상의 서버 리소스를 모니터링하기 위한 Munin(On-Premise) 및 NewRelic(SaaS)서버에서 발생하는 각종 오류와 예외를 모니터링하기 위한 Sentry로그인, 결제 등 서점의 핵심적인 기능의 정상 여부를 모니터링하는 Pingdom각종 배치작업과 주기적으로 실행되는 스크립트를 모니터링하기 위한 PushMonNode.js 프로세스나 Redis 상태 모니터링을 위한 Keymetrics(SaaS)데이터의 무결성을 주기적으로 감지하는 각종 In-house 스크립트#리디북스 #서버 #서버개발 #스택 #백엔드 #node.js #개발자 #개발언어 #스킬스택 #소개
조회수 942

아마존에서 실제로 팔릴만한 상품(군)을 찾는 법

인사말안녕하세요 대한민국 셀러들의 아마존 진출을 도와주는 컨설팅 회사이자 업무 대행사인 컨택틱의 이이삭 대표입니다.오늘 제가 알려드리고 싶은 이야기는 '잘못된 상품 선정으로 인해 미판매 재고가 발생하는 것을 방지하는 방법'입니다.전자상거래 시장에 뛰어든 판매자라면 누구나 알고 있으며 한 번쯤은 겪었을만한 문제인 '미판매 재고'에 대해 항상 고민을 할 수 밖에 없습니다. 실제 통계에 따르면 판매자들이 유통하는 재고의 20% 정도는 미판매 재고로 남거나 폐기 처분 하게 된다고 합니다. 이걸 영어로 overstock 또는 dead stock라고도 표현합니다.INTRO - 1. 왜 이런 미판매 재고 문제가 발생하는가?이런 문제를 해결하는 방법에 대해 말씀 드리기 전에 우선 이런 미판매 재고 문제가 '왜' 발생하는지부터 말씀드리겠습니다. 크게 두 가지 원인이 있는데, (1) 제대로 된 조사 없이 상품을 선정/소싱 했거나 (2) 올바르지 않은 정보로 시장 조사를 했기 때문입니다.1번의 경우에는 성실하게 시장 조사를 하지 않은 내 자신을 탓할 수 밖에 없습니다. 하지만 2번의 경우에는 굉장히 억울할 수 밖에 없습니다. 숫자로 입증한 데이터를 기반으로 모든 결정을 내렸는데, 놓친 부분이 있었을 수도 있고, 내가 조사한 데이터가 오차 범위가 넓은 데이터일 수도 있고, 아니면 아예 wrong data를 참고한 것일 수도 있습니다 (예를 들면 관련이 없거나 오히려 연관성을 지으면 안되는 데이터).INTRO - 2. 미판매 재고 문제가 얼마나 심각한 문제인가?상품을 제조/사입 한 순간부터 일단 지출입니다. 여기에 쓰인 돈이 만약 미판매 재고가 된다면, 이 상품들을 제조/사입하면서 사용한 돈은 영원히 회수하지 못할 수도 있습니다. 제조/사입에만 사용한 돈만 날리는 거라면 그렇게 큰 문제가 아닐 수도 있습니다. 하지만 이 재고를 FBA 창고에 입고한 데에 사용한 물류비도 감안해야 하며, FBA 창고에 보관되면서 매월 발생하는 monthly storage fee, 그리고 6개월 이상 미판매된 재고에 대한 long term storage fee, 그리고 마지못해 폐기처리할 결정을 내렸다면 폐기를 하는 데에도 드는 FBA removal fee, 만약 한국으로 귀환 시킨다면 발생할 retrieval fee... 정말 예상했던 것보다 훨씬 큰 손해가 날 수 있는 것이 바로 미판매 재고 문제입니다.이런 비용 하나하나가 결국 '실제로 가능성이 있는' 상품들을 새로 발굴하고 소싱하고 마케팅하는 데에 사용할 돈이 되어야하는데, 잘못된 상품 선정이라는 우범 하나 때문에, 한정된 자금으로 사업을 운영해야 하는 사업주들의 입장에서는 심지어 잠재성을 가지고 있는 potentially profitable 상품들에 대한 기회조차 잃어버리게 되는 것이니, 그런 의미에서 미판매 재고가 가져오는 손해는 막심합니다.THE SOLUTION - 1. 미판매 재고 발생을 방지할 수 있는 기본팁 3가지세상에 그 어떤 것도 정해진 답은 없다고 생각합니다. 하지만 아래 3가지 팁을 통해 여러분들이 위에 언급된 '미판매 재고' 발생의 가능성을 최대한 낮추시길 희망합니다:1. 주관적인 생각을 배제하라 (오직 숫자만 믿어라)너무 당연한 얘기가 될 수도 있지만 실제로 많은 셀러들이 이 실수를 반복합니다. 단순히 '잘 팔릴 것 같다고 느끼기 때문에' 또는 주변에서, 세간에서 이런저런 상품이 요즘 인기있더라 라는 '카더라' 말을 듣고 제조/사입 결정을 내리는 것은 치명적인 실수라는 것을 반드시 항상 인지하고 이런 '감'을 통한 상품 결정을 해선 안됩니다. 그 외에도, 과거에 성공했다고 해서, 주변에 동일한 상품(군)을 판매한 지인이 잘됐다고 해서, 등등 이 모든 것들이 전부 결국 주관적인 input입니다. 후회하지 않으려면 이런 주관적인 생각이 아닌, 오직 올바른 데이터를 기반으로 한, 숫자로 입증된 데이터를 통해 결정을 내리시기 바랍니다.2. 과거 데이터에만 의지하지 말아라그렇지 않은 상품도 있지만, 특정 상품은 seasonal 시즌성 상품일 수도 있으며, fad 유행성 상품일 수도 있습니다. 물론, 과거 데이터가 향후 데이터를 예측할 수 있는 좋은 자료가 될 수도 있기도 하고, 저희가 지금 말하고 있는 data-driven 리서치 방법은 어쨌거나 지난 과거 기록을 살필 수 밖에 없는 것이지만, 과거 데이터 하나에만 온전히 결정의 기반을 두는 것은 각 상품의 특성상 다소 부정확하거나 위험할 수 있다는 것을 인지해야 합니다.3. '추천' 제품은 두 번 세 번 검토하라OEM/ODM 제조유통업자(PL 셀러)들에게 특히나 해당되는 이야기지만, 결국 제조사(공장)은 최대한 많은 제품을 판매하는 게 주 목적입니다. 그 제품을 소싱한 여러분이 재고를 팔 수 있을지 말지는 그들의 고민이 아닙니다. 따라서 제조사가 추천하는 신상품이나 그 제품에 대한 시장 동향도 너무 일방적으로 신뢰해서도 안되고, 이 공장이 여러분 뿐만 아니라 몇 명의 셀러들에게 브랜드명이랑 포장지만 바꾸고 풀어놨는지도 잘 파악해서 시장 포화도를 잘 분석하고 제조/사입을 해야합니다.THE SOLUTION - 2. 시장 조사는 이렇게 하세요답은 결국 올바른 시장 조사입니다. 하지만 올바른 시장 조사를 하려면 어떻게 해야하는지가 궁금하실겁니다. 올바른 시장 조사를 하려면 아래의 3가지를 반드시 고려하시기 바랍니다.1. 시장 크기 (수요) 분석내가 판매할 상품의 시장 크기가 '너무' 작으면 아무리 좋은 상품이어도, 아무리 가격 경쟁력이 있어도, 아무리 마케팅에 예산을 쏟아부어도 당연히 다 무의미한 것입니다. 아마존에 내 상품과 유사하거나 동일한 연관 상품의 목록을 수백, 수천개를 직접 하나하나 조사하고 그 상품들의 스텟(stats)를 분석해서 정녕 내가 진입할 이 시장의 크기가 적당한지를 우선 살펴봐야합니다.2. 경쟁/진입장벽 (공급) 분석시장 크기가 아무리 큰 시장이어도, 그만큼 공급이 많아서 경쟁이 심하면, 이것 또한 문제입니다. 매출이 발생하는 niche 틈새에 끼기 위해서 가격도 낮춰야하고, 이미지도 예쁘게 꾸며야하며, 마케팅을 통해 상위에 노출해야하는 등 여러가지 비용이 많이 들어가게 됩니다. 배보다 배꼽이 커지는 경우가 바로 이런 경우입니다.3. 트렌드 분석위에도 언급했듯이, historical data가 항상 답이 아닙니다. 하지만 그로 인해 알 수 있는 것은 '동향' 즉 trend입니다. 예를 들어 fidget spinner처럼 한 때 극적인 인기를 달리던 상품은 1년이 채 안되어서 인기가 증발했습니다. 소비성 상품이 아니기 때문에 이 수요가다시 올라가거나 현 상태를 유지될 확률은 전무하며, 거의 십중팔구는 아마 시간이 지날수록 이런 fad 상품은 점점 수요가 없어지게 됩니다. 트렌드를 잘 분석해서, (1) 연중 내내 수요가 밸런스 잡힌 시장 또는 시즌마다 일정 수요를 보이는 시즌성 제품을 선정하거나 (2) 라이징 트렌드를 보이는 선정하거나 (3) Fad 상품을 굳이 하겠다면 단타성으로 언제 치고 들어가서 언제 빠질지를 잘 결정해야 합니다.4. 비용 분석아마존에서 판매한다는 것은 굉장히 다양한 수수료가 발생할 것을 고려해야 합니다. 아마존 판매 수수료, FBA 입고를 위한 물류비, FBA 배송대행 수수료, FBA 창고 보관료, PPC 광고, 적절한 할인의 제공, 월 계정 유지비, 교환/반품/환불, 등등... 내가 소싱할 제품은 어느 판매가 구간에 속할지 (저가/중가/고가 상품) 분명히 알아야 하며, 그 안에서 내가 볼 마진의 폭이 정확히 얼마인지도 알아야 합니다.THE SOLUTION - 3. 전문가의 도움을 받으세요위에 언급한 모든 것들을 해결해주는 것이 컨택틱의 아마존 시장 조사 서비스입니다 (다른 말로, '아마존 진출 성공 가능성 분석 서비스'). 저희 회사 서비스를 홍보하려고 하는 것은 아니지만, 실제로 저희가 해드리는 이 시장 조사 서비스는 위에 언급한 모든 항목들을 고려해서 최대한 객관적인 데이터로 입증된 결론들을 의뢰자가 informed decision을 낼 수 있도록 도와주고 있습니다. 특정 상품에 대한 시장 조사를 의뢰하게 되면 그와 유사한 아마존에 존재하는 거의 모든 리스팅들을 뜯어보고 분석해서 그 시장에 대한 정확한 분석을 여러분들이 이해하기 쉬운 말로 설명해드립니다.컨택틱의 아마존 시장 조사 서비스는 20만원에 (부가세 별도) 시장 조사 결과 요약 보고서 1개와 화면 공유를 통한 1시간의 유선 컨설팅이 제공됩니다. 관심 있으신 분들은 연락 주세요!그럼 오늘도 즐거운 글로벌 셀링 되세요!컨택틱서울특별시 강남구 강남대로62길 11, 8층 (역삼동, 유타워)대표 전화: 02-538-3939해외 부서: 070-7771-1727영업 부서: 070-7771-1728이메일: [email protected]유튜브: https://www.youtube.com/channel/UC8OxbQGAnMqWGpGj5weLcZA홈페이지: https://www.kontactic.com
조회수 4971

Gradle Dependency 분리하기

본 포스팅은 아래 코드를 보시면 좀 더 이해하기 쉽습니다.build.gradledependencies-variable.gradledependencies-classpath.gradledependencies-app.gradleGradle 의 역할Gradle 은 이제 안드로이드 개발에 있어서 그 중심이 되는 빌드 환경입니다. 안드로이드 빌드에 대한 기본 설정 뿐만 아니라 빌드에 필요한 Task 를 지정하거나 의존성을 추가할 수 있습니다.특히 의존성에서 일반적인 서비스들은 다양한 오픈소스를 활용하게 됩니다. 네트워크 라이브러리, 이미지 라이브러리, DI 라이브러리, Support 라이브러리,Play-Service 라이브러리 등등 이젠 프로젝트를 시작함에 있어서 기본적으로 10개 이상의 라이브러리를 추가하게 됩니다. 이러한 라이브러리들이 많아질수록 필연적으로 빌드 스크립트가 길어지게 됩니다. 이는 나중에 빌드에 관련된 코드를 추가/수정할 때 유지보수에 영향을 끼치게 됩니다.Gradle 의존성 분리하기토스랩에서는 꽤 많은 숫자의 라이브러릴 사용하고 있습니다. 테스트용 라이브러리들까지 포함해서 60여개의 라이브러리를 쓰고 있습니다. 이러한 라이브러리 코드들이 1개의 빌드 스크립트 안에 포함되어 진다면 라이브러리의 버전을 변경하거나 수정하는 작업을 할 때에는 불가피하게 시간이 소요될 수 밖에 없습니다.그에 따라 Gradle 에서 라이브러리들을 변수화 해서 분리하는 작업을 하였습니다.1. 라이브러리 변수화 하기ext { retrofit = 'com.squareup.retrofit2:retrofit:2.1.0' retrofit2_gson = 'com.squareup.retrofit2:converter-gson:2.1.0' retrofit2_rxjava2 = 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:2.1.0' } 가장 간단한 변수화였습니다. 하지만 Retrofit 은 관련 라이브러리들이 함께 수반되기 때문에 버전명을 다시 분리하였습니다.2. 라이브러리 버전 변수화 하기ext { retrofit_version = '2.1.0' retrofit = "com.squareup.retrofit2:retrofit:$retrofit_version" retrofit2_gson = "com.squareup.retrofit2:converter-gson:$retrofit_version" retrofit2_rxjava2 = "com.jakewharton.retrofit:retrofit2-rxjava2-adapter:$retrofit_version" } 하지만 버전명과 라이브러리이름이 함께 있는 것이 깔끔해보이진 않습니다. 그래서 아래와 같이 바꿨습니다.3. 라이브러리 이름과 버전의 분리ext { retrofit = '2.1.0' } ext.dependencies = [ retrofit2 : "com.squareup.retrofit2:retrofit:$ext.retrofit", retrofit2_gson : "com.squareup.retrofit2:converter-gson:$ext.retrofit", retrofit2_rxjava2 : "com.jakewharton.retrofit:retrofit2-rxjava2-adapter:$ext.retrofit_rxjava2", ] 실제에는 다음과 같이 사용하면 됩니다.dependencies { compile rootProject.ext.dependencies.retrofit2 compile rootProject.ext.dependencies.retrofit2_gson compile rootProject.ext.dependencies.retrofit2_rxjava2 } 이제 라이브러리를 변수화 해서 분리를 하였습니다.이제 변수로 지정한 라이브러리들은 build.gradle 파일안에 존재하게 됩니다.// build.gradle ext { retrofit = '2.1.0' } ext.dependencies = [ retrofit2 : "com.squareup.retrofit2:retrofit:$ext.retrofit", retrofit2_gson : "com.squareup.retrofit2:converter-gson:$ext.retrofit", retrofit2_rxjava2 : "com.jakewharton.retrofit:retrofit2-rxjava2-adapter:$ext.retrofit_rxjava2", ] buildscript { // blah blah } 라이브러리가 3개뿐이니 깔끔해보이는군요. 하지만 토스랩의 라이브러리는 60여개 입니다. 변수명도 60여개라는 말이죠. 그래서 라이브러리 변수들만 파일을 분리하기로 했습니다.4. 라이브러리 변수를 파일로 분리하기// dependencies-variable.gradle ext { retrofit = '2.1.0' } ext.dependencies = [ retrofit2 : "com.squareup.retrofit2:retrofit:$ext.retrofit", retrofit2_gson : "com.squareup.retrofit2:converter-gson:$ext.retrofit", retrofit2_rxjava2 : "com.jakewharton.retrofit:retrofit2-rxjava2-adapter:$ext.retrofit_rxjava2", ] // build.gradle apply from :'dependencies-variable.gradle' buildscript { // blah blah } 이제 좀 교통정리가 되어가는 기분이네요.하지만 app 의 build.gradle 을 보았습니다.// app 의 build.gradle apply plugin: 'com.android.application' dependencies { // 라이브러리 60개 compile rootProject.ext.dependencies.library.retrofit2 compile rootProject.ext.dependencies.library.retrofit2_gson compile rootProject.ext.dependencies.library.retrofit2_rxjava2 } android { // 중략 } 뭔가 잘못되어 가고 있습니다. 여전히 dependencies 가 큰 부분을 차지하고 있습니다.5. app.dependencies 분리하기이제 dependencies 를 분리할 차례입니다.// dependencies-app.gradle repositories { jcenter() } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile rootProject.ext.dependencies.library.retrofit2 compile rootProject.ext.dependencies.library.retrofit2_gson compile rootProject.ext.dependencies.library.retrofit2_rxjava2 compile rootProject.ext.dependencies.library.okhttp3 compile rootProject.ext.dependencies.library.okhttp3_logging compile rootProject.ext.dependencies.library.stetho_okhttp3 } // app 의 build.gradle apply from: 'dependencies-app.gradle' 이제 dependencies 와 관련된 스크립트가 분리되었습니다.하지만 저 apply from 이 항상 app 의 build.gradle 에 따라 붙어야 하는 것이 아쉽습니다. 그래서 buildscript 에 아예 추가하기로 하엿습니다.6. 빌드 스크립트에 dependencies 추가 동작하기먼저 빌드 스크립트용 스크립트를 만들겠습니다.// dependencies-classpath.gradle rootProject.buildscript.repositories { jcenter() } rootProject.buildscript.dependencies { classpath rootProject.ext.dependencies.classpath.android } 그리고 buildscript 가 시작될 때 모든 dependencies 스크립트가 인식할 수 있게 하겠습니다. 인식할 스크립트는 다음과 같습니다.dependencies-variable.gradle - 라이브러리 변수 저장dependencies-classpath.gradle - 빌드용 스크립트 저장dependencies-app.gradle - 라이브러리 추가 스크립트 저장rootProject 의 build.gradle 를 아래와 같이 변경합니다.// rootProject 의 build.gradle buildscript { apply from: "dependencies-variable.gradle" apply from: "dependencies-classpath.gradle" } apply from: 'dependencies-app.gradle' 위와 같이 변경을 하면 빌드스크립트가 동작하는 시점에 변수를 인식하고 빌드용 스크립트를 인식합니다.하지만 앱용 라이브러리 추가 스크립트는 아직 준비가 덜 되었습니다. “app” 프로젝트가 인식이 된 시점에 라이브러리가 추가되어야 하기때문에 처음 만들었던 스크립트로는 한계가 있습니다.그래서 아래와 같이 변경하겠습니다.// dependencies-app.gradle rootProject.allprojects { project -> if (project.name == 'app') { project.afterEvaluate { repositories { jcenter() } dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile rootProject.ext.dependencies.library.retrofit2 compile rootProject.ext.dependencies.library.retrofit2_gson compile rootProject.ext.dependencies.library.retrofit2_rxjava2 } } } } afterEvaluate 는 프로젝트의 인식이 완료되면 동작이 되는 함수이기 때문에 모든 것이 끝나고 dependencies 가 추가되는 것으로 이해하시면 됩니다.정리위의 과정을 거침으로써 gradle 파일은 좀 더 나뉘었지만 app 의 build.gradle 은 안드로이드 프로젝트 그 자체에 집중 할 수 있도록 하였습니다.이렇게 나누었던 본래의 목적은 의존성 라이브러리와 코드 품질 관리용 스크립트가 1개의 스크립트 파일에 담겨지면서 관리하는 데 있어서 큰 문제가 발생하게 되었습니다. 그에 따라 각각을 나누고 그 목적에 맞도록 각가의 파일 만들었습니다.라이브러리의 변수용 파일buildscript 용 classpath 를 관리하는 파일본 프로젝트의 라이브러리 의존성 관리 파일참고 소스Github : https://github.com/ZeroBrain/DataBind-MVVM-Sample#토스랩 #잔디 #JANDI #개발 #개발후기 #인사이트
조회수 774

최고급 인재채용은 업무 몰입의 환경을 제공하는지 여부다

어떤 기업을 바라보고, 어떤 선택을 해야할까기업의 비전은 무엇이며, 인재들에게 요구하는 역량은 무엇일까?빠르고 안정적인 성장을 추구하는 기업이라면 AAA급 인재의 합류는 필수불가결최고급 인재들이 과연 워라벨에 흥미를 느낄까?최고급 인재들은 그럼 일만 주구장창하려고 할까?인재(사람)에 대한 연구는 끝이 없어야 한다.하지만 확실한 것은 최고급 인재들은 업무와 프로젝트, 회사의 비전을 보고 움직일 것이다."회사가 완벽한 업무몰입을 위한 완벽한 밸런스를 맞춰줘야 한다"는 것도 진리다.아래는 블랭크코퍼레이션의 기업문화를 소개하는, 다양한 인재들에게 건네는 편지글이다.  블랭크코퍼레이션 로고 디자인우리는 '융합'에 주목합니다.이것과 저것, 기존에 있던 것과 없던 것 등등을 융합해 더 큰 가치 만들기를 좋아합니다.   현재 우리가 진행하는 비즈니스는 ‘커머스’와 ‘콘텐츠’의 융합입니다.  ‘디지털’이라는 키워드만으로는 설명이 부족할 만큼 고도화된 사회를 살아가고 있습니다.  여기서 얻은 비즈니스적 단서는, “모바일로 영상을 쉽게, 완벽하게 보는 시대가 도래했다”는 것입니다. 영상을 쉽게 볼 수 있는 플랫폼이 늘어났고, 덩달아 다양한 제작자들이 모습을 드러내는   그러한 영상 콘텐츠의 부흥기가 왔습니다.  이에 우리는 “모두가 아끼고 즐기고 모이는 채널에 우리의 콘텐츠를 싣자”  그리고 “우리의 콘텐츠로 참신하고 이로운 경험을 선사하자”고 마음 먹었습니다.  참신하고 이로운 경험은 그럼 무엇일까? 고민했고,  사람과 라이프스타일을 연구하면서 한 가지 사실을 얻었습니다.  "사람은 삶을 살아가면서 계속해서 문제를 만들어내고, 또 계속 해결해 나간다”는 것이었습니다.  여기서의 ‘문제’는 ‘빈 곳(blank, 맹점)’입니다.  일상에서 쉽게 지나치거나 너무나 당연해서 인지하지 못하는 부분들이죠.  "우리는 그러한 빈 곳을 채워주자"  이에, 솔루션을 제공하자는 모토를 창출하게 됐습니다.  Lifestyle needs solution우리는 우리의 옷을 깨끗하게 빨아주는 세탁기, 그 자체는 깨끗할지 궁금했습니다.  분석에 들어갔고, 과연 세탁조의 오염도와 위생상태는 심각했습니다.  우리는 세탁기의 통(세탁조)을 간편하게 씻어내는 ‘세탁조크리너’를 세상에 공개했습니다.  노후화된 수도관에서 발생하는 수질 오염물질은 ‘샤워기 필터’로 걸렀습니다.  야식을 마음 편히 즐기는 동시에 소소한 식습관을 익힐 수 있게끔 ‘곤약 간편식’도 만들었습니다.  이렇게 삶의 빈 곳을 메우는 기특한 브랜드가 20개, 제품 가짓수는 약 200여 개에 달합니다.  아직 탐구하지 못한 영역이 많은 만큼, 브랜드와 제품, 솔루션은 계속 늘어날 전망입니다.  또, 좋은 솔루션은 더 넓은 세상으로 들고 나갈 생각도 하고 있습니다.  솔루션을 제공하는 상품을 기획하고, 이를 콘텐츠와 융합하기 위해  우리는 정말 빡세게 ‘사고(Thinking)’ 합니다.  상품기획부터 콘텐츠제작, 촬영, 마케팅, 유통, 생산, 물류, 혁신, 수학, 과학, 철학까지,  논리적으로 사고하기 위해 온 힘을 다합니다. 치열하게 싸웁니다.  우리는 가설검증을 사랑합니다.  적당한 것을 취하고 유지하지 않습니다. 효율을 높이기 위한 방법을 계속 고민합니다.한 번도 가지 않았던 길을 찾아보고 실험하고 끝내 성취감을 맛봅니다.블랭크코퍼레이션 전체회의, 매주 월요일 오후 5시(프로 전원 참석)더 치열하게 빡세게 사고하라고, 밥, 집, 임신, 출산, 육아 등 모든 '걱정거리'는 블랭크가 해결합니다.  더 속도 높여 사고하고 결정할 수 있도록 사내에서 모두 ‘세그웨이’를 타고 날아다닙니다.  간식 사러 나가는 시간이 아까우니, 그냥 '편의점'도 회사 한 켠에 사 놓았습니다.  주어진 시간에만 빡세게 일하라고 ‘정시퇴근’을 철저한 원칙으로 합니다  시간을 쪼개어, 업무에 더 유용하게 사용하라고 ‘반반차’ 휴가도 제공합니다.  심지어 종잣돈 걱정, 리프레시, 여행 걱정까지 블랭크가 책임집니다.  진짜 마음 놓고 일에 몰입하도록 말입니다.  블랭코퍼레이션 사내 마켓현재의 사업인 제1단계 ‘콘텐츠+커머스’의 융합을 함께 경험하며 가시적인 성과를 내고 싶은 분.  논리 있고 빠른 사고와 화끈한 결정으로, 자유의 고통을 느끼고 싶은 분.  그리고 제2단계, 제3단계를 함께 찾아, 뚫고, 오르고 싶은 분.  블랭크는 언제나 환영합니다.Jason KH커뮤니케이션    기획자
조회수 4311

크몽 검색 기능 개선기

안녕하세요? 크몽의 백엔드 개발자로 활동하고 있는 에이든입니다. :)오늘은 크몽에 입사하고 한 달 동안 UX팀에서 진행한 검색 기능 개선에 대한 이야기를 해보려고 합니다.배경크몽에는 재능을 판매하는 프리랜서의 서비스 정보가 많이 저장되어있습니다. 판매하는 서비스 정보가 많을수록 검색 기능이 잘 되어있다면 사용자는 원하는 서비스를 빨리 찾을 수 있고, 프리랜서는 다양한 서비스를 의뢰인에게 판매할 수 있습니다.크몽에서는 사용자에게 정확한 검색으로 다양한 서비스를 제공하기 위해 노력하고 있습니다. 이번 글에서는 크몽 UX팀에서 보다 나은 검색 기능을 위해 어떠한 노력을 했는지 공유하고자 합니다.기존의 검색 기능기존의 검색 기능은 기본적인 키워드 검색 외에 별다른 기능을 제공하지 않았습니다. 그리고 스핑크스 검색엔진으로 구성되었습니다. 스핑크스는 전문 텍스트 검색 기능을 제공하며 데이터베이스와 잘 통합될 뿐만 아니라 스크립트 언어에 쉽게 접근할 수 있도록 설계되었습니다. 스핑크스의 동작 구조는 다음과 같습니다.스핑크스의 동작 구조Searchd는 클라이언트로부터 요청을 받고 스핑크스 인덱스에 대해 검색을 실행하는 역할을 합니다. 그리고 스핑크스 인덱서는 스핑크스 인덱스로 데이터를 가져오는 역할을 합니다.크몽은 이를 통해 사용자에게 검색 기능을 제공했습니다. 하지만 기존의 검색 기능은 불편한 점이 있었습니다.기존의 검색 기능의 불편한 점기존의 검색 기능은 의뢰인이 어떤 서비스를 필요로 하는지 본인이 정확하게 정의할 수 있어야 했습니다. 그게 아니라면 여러 키워드를 검색해보거나 원하는 서비스를 찾기 위해 해당 카테고리에서 서비스 전체를 둘러봐야 했습니다. 또한 많은 유료광고로 인해 사용자는 일반 서비스를 찾기가 힘든 문제가 있었습니다.기능상의 불편한 점뿐만 아니라 구현상에도 불편한 점이 있었습니다. 스핑크스에서 한글 검색을 구현하기 위해서는 복잡한 설정을 거쳐야 했으며 ngram analyzer를 통해서만 한글 형태소 분석이 가능했습니다. ngram analyzer는 음절 단위의 한국어 형태소 분석을 하므로 인덱스의 양이 많아질 뿐만 아니라 불필요한 정보까지 검색에 노출이 됩니다. 불필요한 정보가 노출되면서 종료율은 높아지고 서비스 상세페이지의 전환율이 낮아졌습니다. 또한 스핑크스는 데이터의 저장이 되지 않기 때문에 분석을 위해서는 별도의 과정이 필요했습니다.이에 크몽 개발팀은 사용자를 위한 검색 기능 보강뿐만 아니라 검색 엔진 변경이라는 결론을 내립니다.새로운 검색 기능새로운 검색 기능을 개발하기에 앞서 요구사항을 파악하고 새로운 검색 엔진에 대한 기술 탐색을 선행했습니다.프로젝트 진행 목적 및 요구사항정확한 검색 결과 제공광고 상품 제거를 통한 서비스 상세페이지로의 전환율 증대서비스 검색에 최적화된 검색 플로우무엇을 검색해야 할지 모르는 사용자를 위한 검색 가이드검색 엔진 및 한글 형태소 분석기 변경을 통해 사용자에게 정확한 검색 결과를 제공하는 게 우선순위였습니다. 그리고 광고 상품을 제거하고 사용자가 다양한 서비스를 찾을 수 있게 도와주는 기능을(자동완성검색, 연관검색어, 인기검색어) 추가했습니다. 그뿐만 아니라 서비스 검색에 최적화된 검색 플로우를 위해 UI 개선도 진행했습니다.새로운 검색 엔진새로운 검색엔진을 찾던 중 은전한닢 한글 형태소 분석기를 공식으로 지원하는 엘라스틱서치를 찾았습니다.17개 검색 엔진 순위 (출처: DB-ENGINES)17개 검색 엔진의 순위를 살펴보면 아파치 루씬 기반의 엘라스틱서치가 다른 검색 엔진보다 100점 넘게 차이 나는 압도적인 점수를 기록하고 있습니다. 위의 점수는 구글이나 빙에서 언급 횟수, 구글 트렌드, 기술적 논의 횟수, 채용 공고, 소셜 네트워크에서 언급 횟수 등으로 측정한 점수입니다. 점수 산정 방법이 객관적이지 못하지만 엘라스틱서치가 핫하다는 것에는 이견이 없었습니다. 이에 본격적으로 엘라스틱서치에 대해서 기술 탐색을 시작했으며 스핑크스와 비교도 해봤습니다.엘라스틱서치엘라스틱서치는 확장성이 뛰어난 RESTful 검색 및 분석 엔진입니다. 대용량 데이터를 빠르고 실시간으로 저장, 검색 및 분석할 수 있습니다. 기술 탐색 결과 엘라스틱서치에 저장한 데이터를 키바나를 통해서 분석하고 시각화할 수 있다는 점이 매력적이었고, 공식으로 한글 형태소 분석기를 지원하기 때문에 검색 정확도를 높일 수 있다고 생각했습니다. 한글 형태소 분석기를 이용한 엘라스틱서치의 분석 과정은 다음과 같습니다.한글 형태소 분석기를 이용한 엘라스틱서치의 분석 과정필드의 title에 블로그 검색에 엘라스틱서치를 적용해보려고 합니다. 라는 문장이 있다면 지정한 analyzer를 통해서 분석을 진행합니다. 먼저 문자 필터를 거치고 은전한닢으로 한글 형태소 분석을 수행합니다. 형태소 분석이 완료되면 [블로그, 검색, 엘라스틱, 서치, 적용, 보, 하]로 나누어집니다. 그리고 토큰 필터를 통해 [블로그, 검색, 엘라스틱, 일래스틱, elasticsearch, es, 서치, 적용, 보, 하]로 term이 만들어집니다. 이 term은 elasticsearch index에 문서 id와 함께 저장됩니다.다음은 엘라스틱서치와 스핑크스를 비교해봤습니다.엘라스틱서치 vs 스핑크스엘라스틱서치 vs 스핑크스엘라스틱서치와 스핑크스를 비교해보면 스핑크스도 충분히 좋은 검색엔진이지만 한글형태소 분석기와 키바나의 시각화, 데이터 분석 같은 장점을 활용하기 위해 엘라스틱서치를 도입하기로 했습니다.도입을 결정하고 엘라스틱서치를 구축하는 방법을 알아봤습니다.  1. 엘라스틱 클라우드를 사용하는 방법  2. AWS Elasticsearch Service를 이용해서 구축하는 방법3. EC2 인스턴스에 오픈소스 엘라스틱서치를 직접 설치해서 구축하는 방법   엘라스틱서치를 구축하는 방법에는 보통 3가지 방법이 있고 아래의 특징을 가지고 있습니다.1번은 엘라스틱에서 관리 및 교육, 컨설팅을 지원해줍니다. 그리고 한글 형태소 분석기 은전한닢을 지원합니다. 최신 버전의 엘라스틱 스택을 바로 사용할 수 있으며 모니터링 기능도 지원합니다. 라이선스 별 지원은 링크를 통해서 확인할 수 있습니다.2번은 AWS에서 제공하는 Elasticsearch Service이며, 관리형 서비스입니다. 같은 VPC에 묶여있는 인스턴스를 통해서만 접근할 수 있게 되어있으며 외부에서는 접근할 수 없습니다.(퍼블릭 액세스도 있으나 AWS에서 권장하지 않습니다.) 키바나를 사용하기 위해서는 같은 VPC의 인스턴스 웹 서버 프록시나 AWS 코그니토로 접근해야 합니다. 한글 형태소 분석기 은전한닢을 지원하지만 다른 플러그인은 지원하지 않는 경우가 많이 있습니다. AWS Elasticsearch Service에서 지원하는 플러그인 리스트는 여기에서 확인할 수 있습니다.3번은 EC2 인스턴스에 오픈소스 엘라스틱서치를 설치해서 사용하는 방법입니다. 직접 서버를 구축하는 방법이기 때문에 사용자가 어떻게 사용하느냐에 따라 달라집니다.크몽 개발팀은 가격, 관리적 측면을 고려한 결과 2번 AWS Elasticsearch Service로 구축을 진행했습니다.구현구현은 엘라스틱에서 라라벨 프레임워크에서 사용할 수 있는 엘라스틱서치 관련 라이브러리를 정리해둔 링크를 참고했습니다. 3개의 라이브러리 중 스타가 제일 많은 Plastic 라이브러리를 사용해서 구현을 시도한 적이 있었는데 몇 가지 장점이 있었지만 엘라스틱서치 5까지만 지원을 하므로 field type에 text, keyword가 존재하지 않아 매핑하는데 문제가 있었습니다. 그리고 아직 지원하지 않는 쿼리도 존재하기 때문에 결국에는 PHP 공식 엘라스틱서치 클라이언트 라이브러리인 Elasticsearch-PHP를 사용해야 되는 상황도 발생했습니다. 위에서 말한 점 때문에 Plastic 라이브러리를 걷어내고 Elasticsearch-PHP만 이용해서 개발을 진행했습니다. 엘라스틱에서 제공하는 Elasticsearch-PHP 가이드도 잘 정리되어있습니다. 더욱 자세한 구축, 구현 방법을 알고 싶으신 분들은 아래의 글에서 확인하실 수 있습니다.라라벨 프레임워크 - 엘라스틱서치 사용 경험기 : 초기 작업 수행라라벨 프레임워크 - 엘라스틱서치 사용 경험기 : 문서 관리 작업 수행결과검색 기능 개선 결과는 아래와 같습니다,1.자동완성검색자동완성검색 기능2. 연관검색어 + 검색 결과 광고 제거연관검색어 및 검색결과 광고 제거3. 키워드와 관련된 카테고리 추천키워드와 관련된 카테고리 추천4. 검색 결과가 없는 키워드에는 인기검색어 추천검색 결과가 없는 키워드에는 인기검색어 추천무엇을 검색해야 할지 모르는 사용자를 위한 검색 가이드를 만들기 위해 노력했으며, 기능 추가로 사용자의 검색 만족도와 정확도를 높이려고 노력했습니다.또한 엘라스틱서치와 한글 형태소 분석기 은전한닢을 이용해 검색 기능 개선을 통한 결과 평균 체류 시간은 20초 정도 증가했으며 종료율은 최대 22.4%, 평균 1% 정도 떨어졌습니다. 또한 서비스 상세페이지 전환율은 최대 78.3%, 평균 3% 이상 증가했습니다. 서비스 상세페이지 전환율의 상승은 사용자의 검색 만족과 검색 정확도가 상승했다고 볼 수 있습니다.정리이번 글에서는 엘라스틱서치와 한글 형태소 분석기 은전한닢을 이용해 검색 기능을 개선한 이야기를 정리해봤습니다. 검색 기능 개선 이후 서비스 상세페이지 전환율이 조금씩 상승 중입니다. 릴리즈한지 두 달 정도밖에 되지 않아 조금 더 지켜봐야 하겠지만 전환율이 조금씩 상승하고 있다는 건 좋은 신호인 거 같습니다. 다만 짧은 글을 통해서 경험을 전달하려고 하니 많은 내용을 담지 못한 것 같아 아쉽습니다. 다음에는 더욱더 깊이 있는 글을 전달할 수 있는 에이든이 되겠습니다. 감사합니다.#크몽 #개발팀 #개발자 #개발문화 #경험공유 #인사이트

기업문화 엿볼 때, 더팀스

로그인

/