스토리 홈

인터뷰

피드

뉴스

조회수 3252

콜드 네트워킹이 어떻게 한 사람의 인생을 바꿔놓는가?

일반적으로 콜드 네트워킹이라는 용어보다 콜드콜이라는 용어를 많이 쓰는 듯 하다.근데 필자는 네트워킹이라는 말을 더 좋아해서 낯선 사람에게 도움을 요청하는 모든 것들을 콜드 네트워킹으로 그냥 부른다.현재 필자는 지난 몇년 사이 정말 많은 부분에서 성장을 했다.실무적인 면에서 인간적인 면에서 굉장히 많이 성장을 해왔다고 생각한다.그러나 이 성장은 온전히 나의 열정만으로 나의 노력만으로 이루어진 것은 절대 아니다. 항상 정체되었을 때 슬럼프일 때 해매고 있을 때 항상 누군가의 도움이 있었다. 근데 그 도움은 누가 갑자기 우연히 도와준 것이 아니라 "이 낯선 사람이 나에게 해답을 줄지도 몰라"라는 생각에 무작정 도움을 요청했다. 정중하게 내 상황과 고민을 밝히고 원하는 답에 대해서 조언을 해줄 수 있냐는 식의 요청이였다.나는 이러한 방식의 도움 요청이 인생을 살아가는데 있어서 굉장히 굉장히 중요하다고 생각한다.스티브 잡스도 콜드 네트워킹에 대해 굉장히 강조한 바 있다.필자는 3년전 22살때 굉장히 고민에 빠져 있었다.열정은 충만했고 목숨을 걸어서 무엇인가 하고 싶었다. 근데 내가 좋아하는 것이 무엇인지 사실 잘 모르겠고 내가 잘하는 것이 무엇인지도 몰랐고 어떤 일이 나에게 어울릴지 고민이 많았었다.우연히 IT칼럼을 보다가 인사이트 있는 글이라고 생각했고 그 글의 작성자에게 무작정 진로에 대한 고민을 털어놓았다.돈 한푼 들지 않았던 갑작스러운 이메일 요청으로 내가 어떤 미래를 그려야될지 꽤 명확해졌다.그리고 그것이 현재 나를 만드는 것에 크나큰 기여를 했다.이런 식의 콜드 네트워킹은 굉장히 많았고 그 순간 순간마다 나는 엄청난 성장을 했었다. 그리고 꿈과 열정이 가득했던 한 청년의 이메일에 정성스럽게 답변주신 전혜경님에게 다시 감사의 말을 전하며 식사한 끼 대접할 수 있는 시간을 마련해달라고 메일을 드렸다.필자의 콜드네트워킹 방식은 다음과 같다.1.전화를 하거나( 메세지나 , 메일로 전화번호를 받은 뒤) - ex12.직접 만나거나 & 그 오프라인에서 질문을 직접 한다거나 - ex13.페이스북이나 인스타로 메세지를 한다거나 - ex14.메일로 요청을 한다거나 - ex1 ex2 ex3 ex4(부끄러운 사례들이 정말 많지만.... 공유하기로.....ㅠㅠ)(참 저때 어렸구나 그런 생각.......)사실 콜드 네트워킹 요청했을 때 거절 당한 경우도 꽤나 있었다. 그러나 그런 걸로 상처받을 필요는 없다.그리고 거절 당할 것 같으니깐 안할 필요도 없다.낯선 사람이 도움을 요청하는데 무응답을 하는 것은 어찌보면 당연한 것일 수도 있고 그런데도 불구하고 도와주는 것은 정말 고마우신 분들이기도 하다.콜드하기에 앞서서 상대방을 배려하고 있다는 느낌을 줘야된다. 무작정 요청하기보다 현재 내 상황을 잘 설명하고 원하고자 하는 결과가 무엇인지를 깔끔하고도 명료하게 상대방에게 알려주는 것이 중요하다. 상대방은 어쨌든 답장을 하는데에 시간을 써야하기 때문이다. 그 요령은 한국인으로 구글에서 최연소 상무를 하셨던 김현유님의 팁들을 참조하면 될 듯 하다. 1)콜드콜 노하우  2)네트워킹 이야기누군가에게는 낯선 사람에게 도움을 요청하는 것이 사실 용기를 필요로 한다.그러나 그것도 잠시라고 생각하자.유명한 심리학자 중 프로이트만큼의 명성이 있는 벤듀라는 자기 효험 이론을 내놓았다. 사람들은 어떤 것을 추측할 때 두려운 감정을 느끼지만 실질적으로 그것을 마주하고 나면 두려웠던 경험을 극복하는 것은 물론이며 더 다양한 경험들도 두려움 없이 마주할 수 있다는 것을 실험을 통해 밝힌 바 있다.사실 이러한 것은 virgin의 회장 리처드 브랜슨이 말한 "한가지의 분야에서만 사업을 성공시키면 다른 분야에서 사업도 성공시킬 수 있다고 확신했다." 라고 말하는 것처럼 한번 콜드 네트워킹을 실제로 해보면 그리고 인사이트까지 얻는다면 앞으로 자기가 힘들 때 고민하고 있을 때 슬럼프일 때 정말 잘 헤쳐나갈 수 있는 하나의 유니크한 기술을 가지게 되는 것과 같다고 생각한다.운과 기회, 사람을 기다리지 말고 직접 행동하고 도움을 요청하고 낯선 사람에게도 조언을 충분히 구해보자.앞으로 필자도 이런 것에 대한 두려움과 망설임을 더욱 없애고 자신있고 당당한 삶을 살아갈려고 한다. 단 잊지 말아야할 것은 우리가 그렇게 누군가에게 낯선 도움을 구하듯이 누군가가 나에게 낯선 도움을 요청한다면 정말 감사한 것으로 느끼고 그 사람에게 다시 베풀자.pay it forward !#페오펫 #peopet #인사이트 #꿀팁 #경험공유 #조언
조회수 1065

아띠 #22. 매일 새로운 삶을 사는 라이더, 저스틴

Story #22. 매일 새로운 삶을 사는 라이더라이더 '저스틴'을 소개합니다.간단한 자기소개를 해줘!음... 한국에서는 주관식이 어렵다니까;;나는 30살 늦각지에 독립해서 자유를 만낀하며 살고있는! “저스틴” 이라고해저스틴이란 사람은 굉장한 열정을 가지고 항상 새로운 분야에 도전하려하고 많이 부딪치고어려움을 겪기도 하지만 많은 어려움속에서 경험을 통해 새로운것을 하고자 하는 사람이야.아띠는 어떻게 알게 되었어?아띠 인력거는 2013년. 10월 kbs파노라마에서 방영된 김난도 교수 내일이라는 프로그램에서 아띠인력거가 소개되면서 처음 알게 되었어. 언젠가 한번은 꼭 인력거를 타봐야겠다는 생각에 손님으로 인력거를 체험한 이후 손님이 아닌 직접 라이더가 되서 북촌 방문하는 사람에게 북촌 곳곳 숨은 명소와 재미난 이야기를 소개하고 싶어서 라이더를 지원하게 되었어왜? 손님으로  먼저 인력거를 탔어? 바로 지원해도 되잖아?간접적으로 느끼는거랑 직접적으로 느끼는거에 차이가 있었어! 경험했을때 생각보다 훨씬더 인력거의 매력에 매료되더라고. 매력이 무엇이었어? 내가 강남사람이라 그런지 모르겠는데 종로라는 공간이 너무 매력적이었어.서울이란 곳이 도시화되어 옛 정취를 느끼기 어려운지만 도시화된 사회속에서 새로운 역사와 . 한옥을 느낄 수 있고. 옛것을 느낄 수 있는곳으로 많이 놀러왔었어손님으로 탔을때 어떘어?아띠 라이더랑 북촌을 둘러보니 평소에 그냥 지나갔던 곳도 다시 보게 되었고, 정말 숨은 명소가 많다는 걸 알게되었어. 그래서 나같은 사람들에게 소개해 주고 싶어서 라이더가 되게 되었지저스틴을 손님으로 태웠던 라이더가 포레스트였다는데?응 포레였어. 그때 너무 궁금한게 많아서 포레에게 질문을 많이 했었지. 나중에 안 이야기지만 내가 혼자와서 혼자타서. 코치코치 많은걸 물어봐서 내가 스파이인줄알고 조심스럽게 이야기 했다고 하더라구포레랑은 언제 탔던거야? 2014년 2월~3월 정도 되었던거 같은데.  전화로 예약을 했을때 전화로 ij에게 인력거를 타고 싶다고 했어. 근데 ij가 지방출장중이라 새로지정된 포레로 타게 되었지. 면접은 누가 봤어?IJ랑 1:1로 면접을 봤어. IJ가 이러더라구 “잠깐 나가실까요? 걸으면서 면접 보시죠”IJ의 첫인상은 어땠어?이사람 뭐지? 뭘까? 티비에서 보던 그분이구나. 그 사람이구나.인터뷰를 이어가면 이어갈 수록 일반적인 사람이랑 다른 생각을 가지고 있구나. 상식을 깨는 사람이구나.면접은 어땠어?보통 인터뷰 볼때에는 지원사유 여러가지를 물어보지만. IJ의 인터뷰 내용은 자기가 추구하는 인생의 가치를 집중적으로 물어보았던거 같아.직장은 아니지만. 우리가 같이 일했을때 어떤 역할을 하고 기여가치에 대해 집중적인 질문을 받는데. 각 개인이 추구하는 인생의 목표나. 가치에 대해서 많이 물어보았던거 같아.그런것들을 물어봐서 정말 다르구나 느끼게 되었지.  첫 라이딩 어떘어?첫 라이딩은 사실 기억이 잘 안나. 처음에 북촌을 많이 소개시켜주고 싶었는데. 시작하고 나니까. 사람과 사람이 만나는거. 그런것 접점. 사람을 만나면서. 사람들에게 긍정적인 영향을 전파한다 생각했는데. 얻어가는게 많고. 사람들 사는 방식이 매우 다양하구나. 라이딩 하면서 기억에 남는 에피소드는 뭐가 있어?내가 R-3인데 R-3 등급이 되려면 100번 라이딩을 해야 되잔아. 생각해보면 100번 라이딩은 하루를 1번당 평균으로 7팀을 태웠으니 700팀을 태운거야. 1400명을 만난거지.근데 그중에서 기억에 남는 라이딩은대전 여자 태워서 돈 대신 스팸 받았던 이야기인데재작년 추석 연휴 시작되는 날이였어. 잭슨이랑. 야간 라이딩을 하던 중이였는데 지나가는 여성 한분이 짐을 많이 들고 있어서 태워줬어. 그런데 그분이. 고맙다면서 추석 선물 세트. 스팸 3호. 스팸 2개를 꺼내서 팁으로 주셔서 돈 대신 스팸을 받은 적이 있었지 그리고 예전에 아줌마 2분은 태웠었는데  그런데 그 후에 또 다시오셨는데  혼자 오셔서는 1시간 인생 푸념을 하셔서 듣어 드린 적도 있었구그리고 이 인력거가 한국분이 많이 타시지만  해외 이민가신지 20-30년 되신 분들이 오랜만에 고국을 방문하셔서 북촌에 오셔서 한국의 옛 모습을 보시고 감동받고 돌아가시는 모습이 너무 좋았어.마지막으로 북촌 사시는 할머니였는데. 인력거 타고 가는데 할머니가 짐을 무겁게 짊어지고 가시길래. 행선지를 물었는데. 북촌 근처였어. 그 분이 한사코 사양하셨는데. 모셔다 드렸어. 1주일인가. 뒤에 딸을 통해서 할머니가 이런 고마움을 받았다 해서. 음료수 한잔을 전달해 달라해서. 전달 받았던 경험이 이었지저스틴! 몸도 좋고 얼굴도 잘생겼는데 라이딩 하면서 로맨스는 없었어?(그게 쉽지가 않은게.) 많은 사람을 만나며 사사로운 감정을 가질 수 있지만 아띠라는 이름을 달고 하는것이기 때문에 사람들을 만나며 개인적인 감정을 가질 수 있는것을 만들지 않았던거 같아 아띠에 피해를 끼치고 싶지 않고 사람들을 아띠를 통해 만나지만 사람들은 아띠를 만나는 것이기 때문에 아띠에 영향을 끼치고 싶지 않았던거 같아. 나의 오지랖이지. 잡생각이 많았지. 본인은 어떤 라이더인거 같아? 인력거를 타는 동안. 본인이 느낄 수 잇는 가장 편안함? 안좋은 감정, 스트레스를 모두 날려버리고, 인력거를 타는 동안은 가장 편안한 상태가 되는 것 같아아띠가 변화되는 과정을 보았잖아. 어때? 어땠어?뭔가 젊은 친구들이 모여서 열정과 에너지를 쏟는 것을 보면서 감동도 받았지만. 성장하면서. 어려운 부분도 많고. 어려운 점도 많았을텐데. 50명이라는 라이더로 성장한게. 아띠인력거라는 회사가 사람들에게 좋은 인식과 윤리적인 행동을 하고 있다는 것을 느꼈어. 하지만 앞으로 가야할 길이 많다는 거. 노력해야 할게 많아.변화되는 모습에 항상 놀라워. 2년. 3년 시간에 많은 라이더가 일하고 있고. 무엇보다도 라이딩하는 친구들이회사 정규인원으로 속해 일하는게 아님에도 불구하고. 라이더 한명 한명이 아띠에 대한 애정과 애착을 가지고 있는 것을 보면 더 많은 성장을 할 수 있는 아띠라고 생각해.  아띠가 어떤 영향을 준거 같아?사회생활 하면서. 되게. 로직한. 제너럴한 삶을 살뻔 했는데. 아띠를 만나면서. 정말 내가 인생에 있어서 추구해야할 가치가 무엇인지 되돌아 보게 한. 단순히 내가 돈을 벌며 일을 하는 것 이상으로 내가 무엇을 해야 행복할 수 있고. 가치 있는 삶인지 일깨워 주는 곳. 저스틴에게 아띠란?1.o2. 산소다. 일상생활 속에 지쳐있을 때 숨 쉴수 있는 공간. 활력소가 되는.인력거를 타는 순간 원 없이 즐기고, 한 없이 웃고, 행복할 수 있는.2. 행복한 놀이터다. 원없이 즐기고 갈 수 있는. 무언가. 힐링과 재미를 느낄 수 있는. 마지막으로 아띠에게 바라는 점?사람들한테 앞으로도 계속 좋은 인상과 좋은 경험을 전달할 수 있는 아띠의 처음 모습 그대로 끝까지 남아있었으면 좋겠어. 아띠 화이팅이야!!아띠의 원년멤버로써 아직도 힘차게 페달을 밟고 있는  매일매일 새로운 삶을 사는 라이더, 저스틴의 스토리였습니다:)아띠를 직장이 아니라 행복한 놀이터라고 생각하는 저스틴이검은 머리 파뿌리 될때까지 힐링과 재미를 느낄 수 있는 아띠는 그런 공간이 되고 싶습니다!!
조회수 1221

투데잇메이커, ‘투데잇당’을 소개합니다!

투데잇‘당’은 어떤 정당의 개념이 아닙니다. 화려한 캐미가 돋보여서 ‘화학물질’에 속하는 그들은, 서로에게 에너지원이 되자는 의미의 ‘당’(sugar) 입니다.두 번의 스타트업 실패 경험으로, 다신 못하겠다 싶었던 절망의 나날이 있었지만 현재는, 언젠가 ‘아 이거 나한테 필요한데..’ 하고 만들었던 서비스, 투데잇의 CEO이다. 학교 다닐 때에도 읽지도 않았던 논문 섭렵에 푹 빠져있다. (역시 인생이란 아이러니!)그렇게 ‘공부 잘 하는 법’ 에 대해 오늘도 내일도 공부 중인 그는그 누구보다도 더욱 더 '효과적인 학습법' 에 대해 심/층/탐/구 중이다.“오늘 해야 될 일을 오늘 하는 사람이, 지금 이 순간에 집중하는 사람이 ‘진짜’ 잘하는 사람”이라고 생각한다.소프트웨어 개발은 항상 마법이라고 여기는 그는, SCV한테 코딩 못한다고 가루가루 분말가루가 되도록 까이면서도(!!) 절대 코딩을 놓지 않는다.(!!!)아무도 본적이 없지만, 한때는 체지방 5% 미만의 복근남이었었었다고.‘태초에 나모웹에디터를 접하사, 눈떠보니 CTO의자에 앉아있더라’는 그는, 올 해로 안드로이드며 서버며 iOS며 두루두루 섭렵중인 전설적인 남자다.소유와 나눔의 미덕을 아는 그는 Open Source Contributor로도 활동 중이다. 역시 이 시대의 잔트가르!최근엔 Java, Ruby, Kotlin, Swift를 넘어 Go, Rust, Clojure, Scala까지 넘보고 있다고 한다. (당신은 욕씸쟁이! 우후훗!)본인이 진정 뭘 원하는지 아는 그는, 대입 수시를 버리고 정시를 택할 만큼 모험에 대한 도전 의식이 매우 강하다.주업(晝業)은 CTO, 야업(夜業)은 SCV.. 꿈은 세상사를 담는 다큐사진작가 라고. 그래서일까, 그가 입을 열면 왠지 슬픈 브금이 깔린다는 전설이..투데잇의 학습 효과를 극대화할 교육학 이론 융합 전문가이다.영어교육 전공이라 투데잇의 글로벌 진출을 이끄는데 한 몫 두몫… 하는 그의 하루는 이렇게 시작한다. “(뚜르르)안녕하세요! 투데잇 이기홉니다! 하하항” 못 해본 일은 있어도, 안 해본 일은 없다는 그는 운영과 영업 특화형 인재다.그의 업무는 한 글자로 정리하자면 "다".그가 유일하게 못하는건 개발. 이었는데 요샌 개발개그도 듣고 폭소할 정도로 발전 중이다. 과거 창업했다가 권리금 받고 팔아먹은 경력도 있음.(엑☆싯!)캐면 캘 수록 무궁무진한 그 남자의 과거 이력! 투데잇에 합류 3개월 차에 첫 투자 유치, 4개월 차에 투자유치 또 성공! 그의 손에 닿는 즉시, 모든 것은 ★이루어진다! 취미는 브금따라 흥얼거리기.푸우처럼 푸근한 인상으로 한 때 안드로이드 해킹과 보안이 주특기이자 필살기였던 그는, 투데잇과 함께 하면서 부터는 안드로이드 앱 개발을 전담하고 있다. (끼이익)(새로운 차원의 문 열리는 소리)박사님 비주얼값처럼 실제 국내 논문은 물론, 해외 저널과 논문 출판까지 한 어마어마한 사람!투데잇팀 모두가 탐내는 ‘드립 아카이브’를 가지고 있는 그는, 투데잇의 잠금기능과 통계 기능의 아버지로 ‘잠달’·’통달’ 로 통한다. 그의 특기인 회고를 한번이라도 들어본 사람은 헤어나올 수가 없다고.취미는 시도 때도 없이 드립 투척해서 투데잇당원들 홀리기 와 콩 굴리기.만성편두통er인 그녀에게 믹스커피는 거의 만병통치약 수준으로 ‘믹스커피 신봉자’ 이다.관광 전공자로 대외활동도 관광 범벅이었지만, “현재 그녀의 종착지는 IT” 라는 매우 과감한 선택을 했다. 하루의 시작과 끝을 신세계의 용어를 접하며 보내는 그녀는, 대학생활을 PPT 그 자체로 지낸 덕분에 웬만한 작업들은 웬만큼 헤쳐나가고 있다.(업무 중에도 쏠쏠하게 쓸모빛을 발하고 있는 것 같아 기쁘다고.)커뮤니케이션매니저로 시작해, 투데잇 유저를 ‘투데잇러버’라고 여긴다. 그들에겐 끊임없이 ‘페이지터너’ 가 되고 싶다는 그녀는 투데잇팀 중 유일하게 팬아트도 수두룩하게 받은 궁극의 커뮤니케이션의 달인이다. 인생 모토는 원래 “잔잔하게 그러나 열정적으로”였지만, 사회에 뛰어들면서 인생모토는 “과감하게 그리고 열정적으로” 이라고 한다.이 곳의 無경지를 맡고 있다. 어떠한 상황에도 개의치 않고 무무(굳셀 무, 없을 무)력을 뽐내는 그는,“예술가는 사람들이 가질 필요가 없는 물건을 만들어내는 사람(앤디워홀), 디자이너는 사람들이 가질 필요가 있는 물건을 만들어내는 사람!” 이란 생각으로 “예술”보단 진정한 “디자인”의 본질을 투데잇에 녹여내는 중이다.실은 유저들에게 관심을 받기 위해 디자인적으로 집착 중이라는 소문이..! 이런 고민과 질문의 과정을 계속 하는게 그의 바람이라고. 사랑하는 유저들에게 웃음이 되고자 하는 그는 디자인의 경계가 ‘없다!’ 인테리어면 인테리어, 제품이면 제품, 앱이면 앱! 디자인계의 풀스택인 그는 하늘 아래 같은 색조가 없듯, 오늘도 색감과 영감의 늪에서 고군분투 중!#투데잇 #팀소개 #투데잇당 #팀원 #조직문화 #기업문화 #사내문화 #팀원소개
조회수 3196

eventlet을 활용한 비동기 I/O 프로그래밍

안녕하세요. 스포카 크리에이터팀 문성원입니다. 현대적인 프로그래밍 환경에서 네트워크는 더는 특정 직군의 개발자만 접하는 분야가 아닙니다. 그런 만큼 대량의 요청을 네트워크를 통해 송수신하는 프로그램이 생각보다 성능이 나오지 않는 경우를 경험하신 분들도 많으실 겁니다. 물론 스포카 개발팀도 예외는 아니었습니다. 그래서 오늘은 저희의 이러한 경험과 그 해결책-eventlet을 통한 비동기 I/O(Asynchronous I/O)-에 대해 소개합니다.Why우선 스포카 개발팀에서 겪었던 문제부터 시작하죠. 얼마 전 페이스북(facebook)의 FQL(Facebook Query Language)를 통해 정보를 수집해서 이를 활용하는 기능을 작성해야 했습니다. 기존의 함수들은 필요할 때마다 FQL을 요청하는 방식이었고 당연히 이건 너무 느렸죠. 그래서 생각한 것이 “하루의 일정 시간마다 대량의 FQL 요청을 보내서 필요한 정보를 미리 갱신시켜놓자.”였습니다. 여기까진 좋았죠. 이때 제가 작성한 코드의 얼개를 살펴보면 대강 이렇습니다.# 페이스북 계정들을 가져와서 반복하면서for account in FacebookAccount.query:    account.update() #FQL을 보내자.view rawgistfile1.py hosted with ❤ by GitHub그런데 문제가 있었습니다. 기존의 FQL을 보내는 FacebookAccount.update()는 FQL요청이 완료될때까지 멈추고 기다립니다. 대부분의 FQL요청이 2, 3초 정도 걸린다고 했을 때 이러한 지연은 매우 치명적입니다. 대안이 필요했고 자연스레 떠오른 것이 서두에 소개한 비동기 I/O(Asynchronous I/O)였습니다.Asynchronous과거 일부 고급 서버 개발자만 알고 있는(혹은 알아야 하는) 기술로 치부되던 ‘비동기(Asynchronous)’란 개념은 2000년대 들어 등장한 Ajax(Asynchronous JavaScript and XML)의 성공 이후 많은 개발자에게 강한 인상을 줬습니다. 사용자는 HTTP 요청이 끝날 때까지 멈추어 있는 하얀 화면으로부터 해방되었고, 다양하고 많은 요청과 응답들이 자연스럽게 서버로 흘러들어 가서 나왔습니다. 개발자들의 이러한 경험과 통찰은 이후 node.js와 같은 플랫폼의 등장에도 많은 영향을 끼쳤습니다.다시 문제로 돌아가죠. 그렇다면 이러한 비동기에 관한 개념은 위의 상황을 어떻게 해결할 수 있을까요? 문제의 원인부터 다시 살펴봅시다. 2, 3초 정도씩 걸리는 FQL 요청이 문제일까요? 물론 요청이 매우 빨리 처리된다면 별도의 처리 없이도 저 코드는 문제없이 동작합니다. 하지만 현실적으로 이런 I/O의 속도를 빠르게 하는데에는 물리적으로 한계가 있습니다. 오히려 여기에서 주목해야 할 점은 ‘2, 3초’ 보다 ‘기다린다’라는 점입니다. FacebookAccount.update() 같은 경우, I/O가 처리되는 동안 CPU는 하던 일을 멈추고 문자 그대로 기다리게 됩니다. 만약 CPU가 멈추지 않고 다른 요청을 보낸다면 어떨까요? 이렇게 말이죠.비동기만으로는 부족하다?이러한 아이디어는 그동안 많은 개발자가 대량의 I/O를 다루는 올바른 방식으로 여겨왔습니다. 하지만 보통 이러한 비동기 I/O를 통한 구현은 동기식 I/O와는 좀 다른 형태를 띠게 됩니다. 이렇게 말이죠.# http://docs.python.org/library/asyncore.html#asyncore-example-basic-http-clientimport asyncore, socketclass HTTPClient(asyncore.dispatcher):    def __init__(self, host, path):        asyncore.dispatcher.__init__(self)        self.create_socket(socket.AF_INET, socket.SOCK_STREAM)        self.connect( (host, 80) )        self.buffer = 'GET %s HTTP/1.0\r\n\r\n' % path    def handle_connect(self):        pass    def handle_close(self):        self.close()    def handle_read(self):        print self.recv(8192)    def writable(self):        return (len(self.buffer) > 0)    def handle_write(self):        sent = self.send(self.buffer)        self.buffer = self.buffer[sent:]client = HTTPClient('www.python.org', '/')asyncore.loop()view rawgistfile1.py hosted with ❤ by GitHub불행하게도, 이 경우 기존에 사용하던 urllib2대신 HTTP 요청을 처리하는 핸들러를 이처럼 재작성 해야합니다. 거기에 FacebookAccount.update()의 호출 방식마저 바뀔 수 있죠. 더군다나 콜백(Callback) 투성이의 코드는 유지보수가 쉬어 보이지도 않습니다. 여러모로 손이 많이 가는 상황이죠.결국, 기존 코드를 최대한 수정하지 않으면서도, 어느 정도 성능은 보장되는 그런 해결책이 필요했습니다. 그런 해결책이 있을까요? 다행히도 그렇습니다.What저희가 해결책으로 택한 eventlet은 Python(정확히는 CPython)에서 코루틴(Coroutine)을 지원하기 위해 만들어진 greenlet을 이용해 작성된 네트워크 관련 라이브러리입니다. 생소한 용어가 갑자기 튀어나와서 놀라셨을지도 모르니 우선 eventlet에 대해 설명하기 전에 앞에 나온 용어들을 찬찬히 한번 살펴보죠.코루틴과 greenlet먼저 코루틴(Coroutine)부터 살펴보죠. 전산학도라면 누구나 그 이름을 한번은 들어봤을 도널드 카누쓰(Donald Knuth)는 자신의 저서 The Art of Computer Programming에서 코루틴을 다음과 같이 설명합니다.Subroutines are special cases of more general program components, called “coroutines.” In contrast to the unsymmetric relationship between a main routine and a subroutine, there is complete symmetry between coroutines, which call on each other.코루틴은 우리가 잘 알고 있는 서브루틴(Subroutine)과 달리 진입점(Entry Point)이 여러 개일 수 있습니다. 쉽게 이야기하면 실행을 멈췄다가(Suspend) 재개(Resume)할 수 있다는 점인데요. 이 특성을 살리면 우리가 익히 아는 스레드(Thread)처럼 쓸 수 있게 됩니다. 다만 스레드와 달리 코루틴은 비선점적(Non-Preemptive)이기때문에 코드의 흐름을 전적으로 사용자가 제어할 수 있습니다.하지만 불행히도 모든 언어에서 이런 코루틴이 지원되진 않습니다. greenlet은 이런 코루틴을 CPython에서 지원하기 위해 작성된 라이브러리입니다.eventlet코루틴을 통해 스레드를 대체할 수 있다는 점에 주목한 사람들은 greenlet을 통해 유용한 네트워크 라이브러리를 만들어냈습니다. eventlet도 그 중 하나죠. 잠시 eventlet의 소갯글을 봅시다.Eventlet is a concurrent networking library for Python that allows you to change how you run your code, not how you write it.위에서 볼 수 있듯이 eventlet은 사용성에 중점을 두었습니다. 기존의 블로킹 I/O 스타일의 프로그래밍에 익숙한 개발자들도 쉽게 비동기 I/O의 장점을 얻을 수 있게끔 하는 게 목적이죠.특히 저희가 주목한 점은 eventlet의 멍키패치 기능입니다. 멍키패치는 본래 동적 언어에서 런타임에 코드를 고쳐서 별도의 파일 변경 없이 본래 소스의 기능을 변경하는 것을 말합니다. eventlet은 eventlet.monkey_patch 메서드를 통해 표준 라이브러리의 I/O 라이브러리를 논블러킹으로 동작하게끔 변경해서 코루틴에 적합하게 만듭니다.How앞서 소개한 eventlet.monkey_patch를 이용하면 실제로 고칠 부분은 정말로 적어집니다. 다음 코드가 eventlet을 이용해 변경한 전부입니다.import eventleteventlet.monkey_patch() #표준 라이브러리를 변환# 여러가지 import를 하고...pool = eventlet.GreenPool()# 페이스북 계정들을 가져와서 반복하면서for account in FacebookAccount.query:    # 코루틴들에게 떠넘기자.    pool.spawn_n(FacebookAccount.update, account)        pool.waitall()view rawgistfile1.py hosted with ❤ by GitHub정말 적죠? 조금만 구체적으로 살펴보죠. 우선 eventlet.monkey_patch는 socket이나 select등의 Python 표준 라이브러리를 eventlet.green 패키지안에 정의된 코루틴 친화적인 모듈들로 바꿔치기 합니다.# from eventlet/pathcer.pydef monkey_patch(**on):    """Globally patches certain system modules to be greenthread-friendly.    The keyword arguments afford some control over which modules are patched.    If no keyword arguments are supplied, all possible modules are patched.    If keywords are set to True, only the specified modules are patched.  E.g.,    ``monkey_patch(socket=True, select=True)`` patches only the select and     socket modules.  Most arguments patch the single module of the same name     (os, time, select).  The exceptions are socket, which also patches the ssl     module if present; and thread, which patches thread, threading, and Queue.    It's safe to call monkey_patch multiple times.    """        accepted_args = set(('os', 'select', 'socket',                          'thread', 'time', 'psycopg', 'MySQLdb'))    default_on = on.pop("all",None)    for k in on.iterkeys():        if k not in accepted_args:            raise TypeError("monkey_patch() got an unexpected "\                                "keyword argument %r" % k)    if default_on is None:        default_on = not (True in on.values())    for modname in accepted_args:        if modname == 'MySQLdb':            # MySQLdb is only on when explicitly patched for the moment            on.setdefault(modname, False)        on.setdefault(modname, default_on)            modules_to_patch = []    patched_thread = False    if on['os'] and not already_patched.get('os'):        modules_to_patch += _green_os_modules()        already_patched['os'] = True    if on['select'] and not already_patched.get('select'):        modules_to_patch += _green_select_modules()        already_patched['select'] = True    if on['socket'] and not already_patched.get('socket'):        modules_to_patch += _green_socket_modules()        already_patched['socket'] = True    if on['thread'] and not already_patched.get('thread'):        patched_thread = True        modules_to_patch += _green_thread_modules()        already_patched['thread'] = True    if on['time'] and not already_patched.get('time'):        modules_to_patch += _green_time_modules()        already_patched['time'] = True    if on.get('MySQLdb') and not already_patched.get('MySQLdb'):        modules_to_patch += _green_MySQLdb()        already_patched['MySQLdb'] = True    if on['psycopg'] and not already_patched.get('psycopg'):        try:            from eventlet.support import psycopg2_patcher            psycopg2_patcher.make_psycopg_green()            already_patched['psycopg'] = True        except ImportError:            # note that if we get an importerror from trying to            # monkeypatch psycopg, we will continually retry it            # whenever monkey_patch is called; this should not be a            # performance problem but it allows is_monkey_patched to            # tell us whether or not we succeeded            pass    imp.acquire_lock()    try:        for name, mod in modules_to_patch:            orig_mod = sys.modules.get(name)            if orig_mod is None:                orig_mod = __import__(name)            for attr_name in mod.__patched__:                patched_attr = getattr(mod, attr_name, None)                if patched_attr is not None:                    setattr(orig_mod, attr_name, patched_attr)        # hacks ahead; this is necessary to prevent a KeyError on program exit        if patched_thread:            _patch_main_thread(sys.modules['threading'])    finally:        imp.release_lock()view rawgistfile1.py hosted with ❤ by GitHub이렇게 바꿔치기된 eventlet.green안의 모듈들은 I/O에 의해 블럭되는 경우 다른 코루틴에 제어권을 넘기는 식으로 지연을 방지합니다.다른 대안들사실 이러한 목적으로 사용되는 라이브러리는 eventlet만 있는 것은 아닙니다. gevent는 eventlet에서 영향을 받았지만, libevent를 기반으로 하여 더욱 나은 성능과 성숙한 인터페이스를 갖추고 있습니다. 저희처럼 libevent의 설치에 제한이 있는 환경이 아니라면 이쪽을 살펴보셔도 좋습니다.만약 이벤트 주도적 프로그래밍(Event-Driven Programming)에 흥미가 있으신 분은 Twisted역시 좋은 대안이 될 수 있습니다.#스포카 #개발 #개발자 #인사이트 #꿀팁
조회수 1296

Customization이면 다 될까요?

요즘 cusotomization이라는 단어는 엄청나게 많이 등장하는데, 이 단어의 의미를 해석하면 이보다 더 좋을 수가 없다.Customization : 주인이 원하는 대로 만들다. 주문 제작하다원하는 대로 만들어서 전달한다면, 즉 only for me라는 제품을 만들어준다고 한다면 잠재 고객 누구나 환영할 제품이 아닐까? 하지만, 나를 잘 기억해주는 바텐더가 내가 원하는 대로 칵테일 한잔을 customize 하여 주는 것과는 달리, 제품을 생산해야 하는 사람들에게는 엄연한 차이가 있으니...첫 번째로 Customization을 위해서는 고객에 대한 정보를 파악해야 한다는 것이다.예를 들어 맞춤 정장이라고 한다면.. size를 측정하는 사람이 방문하거나 혹은 고객이 매장에 방문해야 하고.. 고객의 피부에 맞춰 만드는 화장품이라고 한다면 고객의 피부 상태 측정을 위해 고객을 한번 방문해야 한다.즉, 이러한 cost를 기술과 Data로 해결하여 customize 작업이 가능한 startup이 유망하다는 예상을 해볼 수 있는데, Fashion styling에서는 stitch fix 가 여성용 브라 시장에서는 True&Co 가 돌풍을 일으키고 있다. 두 회사 모두 샘플을 보내주어 맘에 들면 구매, 아니면 반납하는 형태를 취하고 있으며... Big data를 통해서 고객에게 정확한 제품을 추천하는 것으로 유명하다. 별명이 모두 XX계의 NETFLIX라는 점도 나름의 재미 True&Co는 1억 3천 명의 여성 가슴에 대한 데이터를 모았고, 브라 착용감에 대한 퀴즈를 내어 customize algorithm에 활용하는데 그 참여자만도 500만 명이 넘었다고... 이런 데이터를 기초로 여성의 가슴을 6천 가지 카테고리로 나눠 제품을 디자인하고 있다고 한다.자, 저런 퀴즈 혹은 survey에 500만 명의 정보를 모았다는 것은 어떤 의미 일까? 과연 광고를 해서 퀴즈에 참여할 사람을 하나하나 모았을까? 저런 정보를 저렇게 대규모로 모으기 위해서는...1) 소비자 자신이 재미가 있어서 제공하거나, 혹은 2) 어떤 결과가 나올지에 대한 호기심이거나, 아니면 3) 특별한 혜택을 제공하는 데서 만들어질 수 있다.그러한 설계를 해 나가는 것이 쉽지 않다는 사실! 첫 번째 난관이다. 게다가 6천 가지 카테고리가 놀랍기도 하지만, 그것보다 그 카테고리에 맞춰 생산할 수 있다는 것이 더욱 놀라운데... 그것이 얼마나 어려운 일인지에 대해서는 생각해보자두 번째로는, Customization을 위해서는 flexible 한 생산이 뒷받침되어야 한다.  Customization & 알고리즘이라는 단어로 도배가 된 기획서를 기획과 마케팅에서 열심히 만들고서 제조 담당자를 만나게 된다면 어떤 일이 벌어질지 생각해 보셨는지? 아니면, OEM 공장에 찾아가게 된다면? 말 그대로 그렇게 쉽게 Customization 이 가능할까?그 이전에 공장이라는 곳의 특성을 한번 생각해 볼 필요가 있다. 공장이라는 곳은 "상품을 제조하면서 효율성을 높여 생산 비용을 절감하는 목적을 가지고 있는 곳"이다. 즉, 효율성을 높이기 위해서는 가급적 동일한 제품을 계속 생산하는 것이 유리하기 때문에, 공장 운영자 입장에서는 작업에 변동이 생기는 것을 싫어할 수밖에 없다. 입장 바꿔 생각해봐도.. A라는 제품을 몇 개 만들고는, 다시 B라는 제품을 위해 기계 스위치를 끈 후에, 이것 저것 변경을 바꿔준 후에 다시 기계의 스위치를 켜고서 만들어 달라고? 하면.... 명치나 한 대 맞지 않으면 다행이렇다 보니, 아직까지 많은 공장들은 낮은 flexibility를 보이는데, 새로운 시도들 예를 들어 Adidas의 Speed Factory와 같은 브랜드들이 이제야 상당 부분 자동화와 더불어, 다양한 고객의 발에 customized 제품을 생산하는 Future Factory의 개념을 적용하고 있다. 이렇게 세세한 cusomize가 가능한 공장과 그렇지 않은 공장이 앞으로 공장을 운영하는 분들에게는 성장/도태의 갈림길에서 중요한 factor가 될 것이다.암튼 결론은 Flexible 한 공장 지원이 필수 가결!조금 다른 접근을 하자면 Semi-Customization이라고 할 수 있는데, 즉... 모든 제품을 고객에게 하나하나 맞추는 것이 아니라, 우리가 가지고 있는 제품 portfolio 중에서 그 고객에게 가장 맞는 제품을 추천하는 방법이다. 이 방법은 알고리즘을 통한 정확한 추천과, 다양한 소비자의 needs를 반영할 수 있는 portfolio가 필수!세 번째로, Customization으로 인한 barrier를 스스로 만들 수도 있다는 것이다.일반적으로 mass로 만든 제품의 경우는 다양한 유통 채널에서 고객 접점을 만들 수 있다. 샴푸 제품을 만들었다면, 대형마트, 백화점, 편의점 등등의 multi 채널 들에서 모두 제품을 제공할 수 있겠지만, Customization은 자체 채널을 이용해야 한다는 제약이 생긴다. 즉, 처음에 스스로를 알리는 작업 - marketing 능력이 뛰어나야 한다는 것이다.Warby Parker의 경우.. 초반에 GQ라는 잡지에서 안경계의 NETFLIX가 나타났다!!라는 기사를 통해서 J curve를 탈 수 있었다. 즉 본인들을 잘 알릴 수 있는 확실한 계기가 필요하다.또한, Customization을 제공하는 서비스에서는 대부분의 고객이 그 과정을 거치지 않고서는 그 제품을 구매/사용하지 않을 수 있다. Mass 제품의 경우, 특정 제품이 좋다는 viral이 되면 사람들이 쉽게 그 제품을 구매할 수 있지만(그래서 유통 채널을 넓게 운영하는 것이 중요한), customized 된 제품의 경우는 그렇지 않은 경우가 발생한다. 하나하나 구매할 때마다, 계속해서 추천 알고리즘을 돌리는 작업이 진행되어야 하는데, 그 과정에서 비용이 발생하지 않는다면 다행이지만.. 대부분의 경우 배송비와 같은 기본적인 비용이 발생하게 된다. 와비 파커도 5개의 안경을 보내주고 고객이 마음에 들지 않으면 무료 반송을 시킨다.즉,  최소한의 구매 전환율을 보장하지 못한다면 이러한 customization 작업은 오히려 엄청난 비용만 발생시키는 작업으로 마무리될 risk도 있다는 것이다.네 번째로는, Customization에 대해서 고객이 어느 정도의 value를 느끼느냐의 차이에서 발생한다. 이렇게 customization의 콘셉트가 반영된 제품에 대해 brand에서는 당연히 더 고생했으니, 더 비싼 가격을 받아야 하는 것이 마땅하다 라는 것이 일반적인 생각이겠지만... 과연 소비자 입장에서도 그렇게 생각할까?  나에게 딱 맞추고 비싼 것보다는,  그냥 조금 더 저렴한 mass 제품을 선호하는 사람들이 더 많을 수도 있다. 즉, 경우에 따라서는 큰 시장이 없을 수도 있다는 것이다.따라서.. 큰 시장을 만들어내기 위해서는 조금 무리한 조건이 발생할 수도 있는데...즉 Customize를 해주면서도 Quality 좋고, 가격은 mass 제품보다 낮은 제품을 제공할 수 있을까?라는 문제이다.가능하다고 생각하시는지?이렇다 보니, Customize Service가 발생할 수 있는 영역들이.. a) Premium Brand들이 시장에서 dominant 하며(즉 사람들이 브랜드 의존도가 높고), b) 제품들이 image 중심으로 제작되어, 기능적인 영역에서 발전이 더뎠고.. c) 취향의 문제이기 때문에 DB화가 어려웠던 영역들이 아닐까?라는 생각이 든다.이런 영역에서는 지금까지 평화롭게 특별한 개발 없이 고 마진을 유지하던 업체들이 깨져나가기 시작할 것이라는 예상.main 사진 출처 : http://thecamdenstudio.com/clever-old-netflix/#파펨 #스타트업 #창업가 #창업자 #마인드셋 #인사이트
조회수 1670

2018 Facebook 광고전략 13가지!

출처 : 구글 이미지많은 사람들이 예상해왔던 디지털 광고시장의 규모를 이젠 데이터를 통해 확인할 수 있습니다.2017년은 디지털 광고 지출이 최종적으로 전 세계적으로 2,800 억달러(41%)에서 1,780 억달러(35%)를 상회하는 해였습니다.하지만 온라인 광고시장이 모두에게 공평한 기회를 주는 민주주의의 세상은 아닙니다. 대부분의 광고시장은 구글과 페이스북이라는 두 가지의 거대한 플랫폼에 집중되어 있기 때문입니다. 안타깝게도, 구글 광고를 공부하기 위한 ebook이나 책은 다양하게 있지만, 페이스북의 경우에는 아무리 찾아봐도 완벽한 마스터 가이드를 찾기가 쉽지 않습니다. 왜그럴까요?두가지 이유가 있습니다…첫번째는 어디에나 거짓말이 있다는 점입니다. 페이스북 전문가가 되고 싶은 마음에 한두가지 성공적인 캠페인가지고 모든 상황에 적용 가능하듯이 얘기를 합니다. 두번째는, 대체로 진짜 전문가들은 침묵을 지키고 조용히 비밀리에 자신들의 지식을 클라이언트에게 적용하고, 밖으로 공유하지 않습니다.저는 온전히 다른 자료들을 참조하지 않고, 2년 동안 페이스북 광고를 진행하면서 느낀것들을 바탕으로 이 글을 써보았습니다. 물론 제가 정리한 내용들이 정답이 아닐 수 있습니다 ㅎㅎ페이스북 광고 퍼널 모델을 만들고 최적화하기 위한 데이터 기반의 상세 가이드를 써보겠습니다.앞으로도 몇 주 동안 이 상세가이드를 계속 정리하여 게재할 예정입니다.- Top of the Funnel Model 전략 : 적절한 대상에 대한 목표를 설정하고, 광고를 생성하고, 메신저 채팅을 통해 참여를 자동화하기 위한 최고의 방법입니다.- Middle of the Funnel Model 전략 : 목표 재설정, 광고 및 랜딩 페이지 수정, 캠페인 확장을 위한 중간 단계 전략입니다.- Bottom of the Funnel Model 전략 : 물론 현재의 고객들이 평생 가치를 높일 수 있도록 유지하는 업셀링, 교차 판매, 그리고 채널에 대한 접근 방식들을 다루는 방법론입니다.이번 글에서는, 여러분의 퍼널 모델에서 가장 상단에 있는(Top of the Funnel Model 전략) 고객들에 대한 캠페인을 만드는 데 초점을 맞춘 페이스북 광고 전략을 13개 보여 드리겠습니다.1. 우리의 잠재고객을 정리하고, "전환 온도"와 함께 제공하라 !페이스북 광고를 통해 고객을 확보하는 데는 두가지 주요한 방법이 있습니다.AudienceOffer만일 우리가 우리들의 잠재고객과 우리의 제품을 함께 활용하는 방법을 알고 있다면 광고 자체는 중요하지 않습니다.잠재고객도 우선순위가 있습니다. 일단 첫번째로 페이스북에서 광고를 집행할 때, [맞춤 타겟]을 가장 우선순위로 설정해두셔야 합니다. 웹사이트 또는 랜딩페이지에 방문한 사람들 , 이메일 구독자들이 맞춤 타겟의 가장 대표적인 예가 될 수 있겠지요. 이 잠재고객들이 전환할 확률이 가장 높습니다.두번째로 중요한 고객은 [유사 타겟]입니다. [유사 타겟]이란 [맞춤 타겟]을 생성하면 페이스북에서 맞춤 타겟과 유사한 사람들을 기반으로 타겟 모수를 확보하기 위해 더욱 생성해주는 세그먼트를 의미합니다. 예를들어보겠습니다.[맞춤 타겟] : 구독 버튼을 누른 사람[유사 타겟] : 구독 버튼을 누른 사람과 유사한 사람이 될 것입니다.마지막으로 일반 타겟팅 고객군(인구 통계학적, 관심사 및 동작으로 구성되는 타겟)을 배포할 수 있습니다. 이 잠재고객들이 가장 많을 것이고, 그들은 전환을 할 가능성이 가장 낮은 고객군이지요.자, 이제 우리가 우리 고객들을 우선순위에 맞게 나누어 놓았으면, 1차 우선순위 고객, 2차 우선순위 고객, 3차 우선순위 고객별로 '어느 정도를 제공해주어야 그들이 전환할까' 라는 개념의 고객군별 '전환 온도' 를 매치시켜야합니다. 출처 : 구글 이미지우리가 가장 우선순위로 지정해두었던 [맞춤 타겟]이 화산과 같이 가장 뜨거운 전환온도를 가지고 있는데, 그들이 일반적으로 우리 제품의 데모버젼이나, 시험 버젼, 할인 프로모션등을 실시했을때, 전환할 확률이 가장 높기 때문입니다. [유사 타겟]은 위의 이미지에서 중간 단계에 속하고 전환 온도는 따뜻한 정도겠지요. 이 유사타겟에서 여러분은 이들의 전환온도를 높이는데 집중해야 하고, 1:1 문의나 ebook 제공과 같은 call to action을 가볍게 불러일으킬 만한 것들을 제공해야합니다. 마지막으로 3번째 우선순위인 [일반 저장 타겟]은 얼음과 같은 차가운 전환온도를 가지고 있겠지요. 아마도 우리 광고 컨텐츠를 클릭해보거나, 영상을 시청하거나, 우리 게시글에 좋아요를 누르는 수준의 행위를 취할 것입니다.2. 고객 추천 광고(Social Proof)로 차가운 전환온도를 높여라!차가운 전환온도를 가지고 있는 사람들(3차 저장된 타겟)의 경우, 실제로 우리들의 제품을 사용해본 다른 사람들의 후기를 광고 컨텐츠로 제작하여 그들에게 노출시키는 것이 효과적입니다. 실제 광고와 관련하여 고객의 실제 견적과 함께 고객 후기 스타일을 컨텐츠 기획에 사용하면 아직 브랜드에 익숙하지 않은 잠재 고객과의 신뢰를 구축하는 데 가장 적합합니다. 실제 고객들이 구매한 제품 사진이나 제품 사용 영상도 차가운 온도의 전환온도를 가지고 있는 고객들에게는 훌륭하게 작동합니다.출처 : 구글 이미지구매 대신 장바구니에 추가하기 이벤트에 대한 전환 온도가 낮은 잠재 고객 광고를 최적화하는 것으로 시작하십시오. 이렇게하면 Facebook에서 많은 양의 전환 데이터를 확보 할 수 있습니다. 어떤 광고 세트를 일시 중지하거나 확장할지 결정하는 것은 일반적으로 구매 당 비용 및 전반적인 ROAS (광고 지출 수익)에 근거해야합니다.Top of the Funnel Model 전략에서 마케터가 저지르는 한 가지 공통적인 실수 중 하나는 단순히 잠재고객을 확보하기 위하여 수익성이 낮은 광고를 너무도 오래 집행한다는 사실입니다. 첫 광고 단계에서 조금의 수익이라도 발생하게 된다면, 여러분은 타겟과 광고를 확장할 수 있습니다. 또한,  Funnel Model의 아랫단계로 갈수록 광고 수익에 훨씬 더 영향을 미칠 수 있습니다.3. 정확한 타겟팅 광고로 판매하라!정말 당연한 얘기겠지만, 적절한 잠재 고객을 타겟팅하는 것은 굉장히 중요합니다. 크리에이티브 광고는 이 단계에서 끝이 나버려도 좋습니다. 예를 들어 블록버스터 영화 제품을 제작하는 동안 CPA가 매우 높고 비용에 큰 차이가없는 광고 소재를 여러 개 만들었습니다. 특정 잠재 고객을 유럽이나 여성 및 젊은 층 인구로 살짝 틀어지게 만들었을 때에는 CPA가 크게 감소했습니다. 즉, 몇 가지 연령 및 위치 인구 통계 (기존 소비자 기반 및 설문 조사를 중심으로)를 테스트하여이 사실을 파악했습니다. 저는 젊은 층이 특정 영화가 낭만적이고 실용적이라고 느꼈던 제품을 소비하기가 훨씬 더 쉽다는 것을 깨달았습니다. 나이가 많은 인구층은 향수라는 감정이 들었을 때 제품을 소비 할 가능성이 더 많았다는 사실을 찾아냈습니다.이로 인해 영화 프랜차이즈의 티켓 판매량이 전반적으로 증가했습니다. 우리가 이 사실을 깨달았을 때 우리는 홍보했던 영화를 더 많이 소비 할 가능성이 큰 잠재 고객을 타겟팅 할 수있었습니다.4. 광고제목을 명확하게 최적화하라!광고의 가장 중요한 구성 요소 중 하나로서, 유료 고객을 성공적으로 유치하려는 경우 잠재 고객에게 명확하고 간결하며 흥미롭고 관련성있는 광고제목을 만들어야합니다. 항상 고객들의 발자취를 따라가는 것이 중요합니다. 여러분의 광고제목 또한 여러분이 광고하고자 하는 영상또는 이미지 컨텐츠와 완벽하게 일치해야합니다.저는 몇 가지 잘못 셋팅 된 광고를 본적이 있습니다. 테스트, 테스트 및 테스트. 약간 변형 된 여러 버전을 실행하고 최고의 실적을 지속적으로 최적화하셔야 합니다. 광고제목과 컨텐츠가 조화를 이루어 높은 전환율을 이끄는 것이 중요합니다. 그러나 여러분이 특정 전환율이 높은 광고제목과 컨텐츠를 찾았다고 생각할 때조차도 실험을 중단하지 마세요.단순히 클릭수를 높이는 주목을 위한 광고카피를 사용하지마세요. 이러한 클릭 수가 전환되지 않는다면 클릭 수를 얻는 데는 아무런 인사이트가 없습니다! 즉, 광고 소재를 CPC ,CTR로 측정하지 마시고, 항상 CPA나 ROAS를 기준으로 커뮤니케이션 할 필요가 있습니다. CPC는 의미없습니다.아래 이미지에 있는 광고제목에서는 좀 더 창의적인 카피보다 41.14 % 높은 전환율을 나타 냈습니다.굉장히 단순하고 직관적인 광고제목이지요?5. 비주얼 하나가 수천개의 클릭을 좌우한다.저는 광고제목이 중요하다고 강조했고, 적절한 타겟팅 역시 중요하다고 얘기를 했고, 고객군별로 어떤 CTA를 제공할지에 대한 것도 중요하다고 했습니다. 그러나 모든 사람들이 페이스북에서 광고를 누르지 않고 스크롤해버리면 이때까지 제가 중요하다고 했던 것들은 더 이상 중요하지 않습니다. 광고에서 사용하는 이미지 또는 비디오는 관심을 끌 수 있는 가장 중요한 요소입니다. 일단 시각적으로 광고를 주목한 다음 광고제목이나 내용을 읽고 우리들이 제공하는 것을 얻기 위해 클릭 할 것입니다. 다행히도, 여러분은 좋은 이미지를 내놓을 그래픽 디자이너나 창조적인 천재가 될 필요는 없습니다. 세 가지가 알면 되니까요. Canva AdEspresso Psychology 아마도 Canva에 대해서는 많이들 알고 계실것입니다. 디자인 된 이미지를 공짜로 사용할 수 있는 것이지요.AdEspresso의 경우 사이트에 거의 모든 업계의 인기있는 Facebook 광고 사례와 상상할 수있는 틈새 시장을 보여주는 검색 엔진입니다.이 세 가지 중 가장 활용도가 적은 것은 Psychology 입니다. 우스운 것이든, 이상한 것이든, 진절머리 나는것이든, 충격적인 비주얼은 사람들을 그 길에서 막습니다. 아래 그림은 이상하지만 제품과 브랜드가 완벽하게 일치합니다. 카피 라이팅은 의도적으로 더 기괴하게 해두는 것이지요. 그리고 그게 핵심입니다.출처 : 구글 이미지다음으로 이미지에 20 %의 텍스트 리밋이 페이스북 정책에 있지요. 그걸 효과적으로 써야 합니다!페이스북 광고의 제목과 설명은 너무 작습니다. 이미지를 먼저 보지 않으면 사람들은 그것을 읽지 않을 것입니다. 그러나 이미지안에 있는 20%의 텍스트는 엄청날 수 있습니다. 주어진 공간을 최대한 활용하셔야 합니다. 특히 동영상 광고의 스크립트 오버레이에 있어서는 더욱 그렇습니다.마지막으로, 시각적인 것(이미지나 영상)과 단어, 광고제목을 우리가 의도하는 고객들의 행동을 목표로하여 초점을 맞춥니다. 한국에도 좋은 예가 있군요.https://www.youtube.com/watch?v=b47648Buy-E     <iframe width="700.000000" height="394.000000" src="//www.youtube.com/embed/b47648Buy-E" frameborder="0" allowfullscreen="">6. 자연 검색 Funnel Model 을 제가공하라 !가능한 가장 좋은 Facebook 마케팅 퍼널 모델을 만드는 방법을 알고 싶으시죠?가장 좋은 자연 검색을 통한 구매자를 볼까요? 이들은 여러분의 비즈니스를 사랑하고, 판매중인 모든 단일 제품을 구매하는 사람들입니다. 그들이 어떻게 우리를 처음으로 발견했는지, 그들이 우리들에 대해 어떻게 배웠는지를 분석할 필요가 있습니다. 무엇이 그들을 우리 브랜드에 사랑에 빠지게 만들었을까요?그런 다음, 그 과정을 재현하셔야 합니다! 예를 들어, 저는 아이들을 위해 30만원짜리 제품을 판매했던 클라이언트와 함께 일했습니다. 그들은 대부분의 부모가 유기적으로 구매하게 된 원인을 알고있었습니다.1. 부모 중 한 명이 Facebook 에서 우리 서비스에 관한 기사를 발견했습니다.2. 그들은 웹 사이트에 와서 홈페이지를 스크롤하여 몇 가지 리뷰를 읽었습니다.3. 가격을 알아 낸 뒤, 제품에 대한 게시물에서 남편 이름을 태깅했습니다.이 프로세스를 염두에 두고 유입 경로를 구축했습니다. 저는는 제품에 대한 짧은 30 초짜리 비디오를 특징으로하는 타겟팅 페이스북 영상 광고를 집행했습니다.  페이스북 영상에 달려있는 링크를 통해, 기사를 읽은 후 사람들을 홈페이지로 유도하였습니다. 원래 저의 계획은 배우자를 태그한 고객들에게 리타겟팅을 실시하는 것이었습니다. 제가 발견 한 것은 원래 광고가 너무 잘되어 사람들이 그 게시물을 공유하고 배우자에게 태그를 붙였으며 결국 많은 사람들이 제품을 장바구니에 추가했다는 사실입니다. 제품 가격은 30만원인데 비해 평균 거래당 단가가 3천원 정도였습니다.자연 유입 경로를 정리해보니 구매를 이끈 것은 낮은 전환온도의 고객들이었습니다. 1) 제품에 대한 영상 광고 시청. 2) 제품에 대한 기사 클릭3) 홈페이지로 이동 4) 배우자와 제품 공유 5) 장바구니에 상품 추가유기적인 퍼널 모델을 재현함으로써, 우리를 들어 본 적이없는 사람들로 하여금 훌륭한 충성고객으로 만들 수 있었습니다. 이 동일한 성공 방정식을 사용하여 여러분의 비즈니스에도 완벽한 퍼널을 구축 할 수 있습니다.7. 고정된 요소와 유연한 요소를 적용하라 !가장 좋은 팁은 문화적 고정 관념과 유연성을 교차적으로 사용해야 하는 것입니다. 예를 들어서, 제가 샌프란시스코에서 광고를 한다면, 나는 제 카피에 "테크 브라더스"를 사용할 것이다. 만약 내가 로스 엔젤레스에서 광고를 한다면, 저는 "모델이 되고 싶어"를 사용할 것입니다.유연성의 경우 저는 가장 높은 감정적인 반응을 이끌어 내는 이미지를 사용합니다. 예를 들어, 만약 제가 뉴욕시의 사람들에게 지역 스타트업 이벤트를 마케팅한다면, 저는 스타트 업 이벤트가 아니라 뉴욕의 사진을 사용해서 광고를 할 것입니다. 그 이유는, 평균적으로, 사람들이 그들의 도시에 대해 더 강한 정서적 연결을 갖기 때문이지요.여기서 얻을 수 있는 교훈은 가장 낮은 CPL[Cost Per Like]을 생성하기 위해 사용해야 하는 사진이 흔히 처음에 예상했던 것과 많이 다르다는 것입니다.만약 여러분이 문화적인 고정 관념을 가지고 유연성과 함께 결합할 수 있다면, 여러분은 낮은 CPL을 생성하게 될 것입니다. 두가지 요소 사이에 균형을 잡는것만은 잊지 마세요.출처 : 구글 이미지8. 3단계에 걸쳐 영상 시퀀스 광고를 집행하라!우리는 아까처럼 잠재고객들의 브랜드 인지도, 페이스북 게시물 참여도, 전환에 따라 맞춤 고객을 정의하고, 전환온도 별로 고객들의 우선순위를 매길 수 있었습니다.영상광고도 마찬가지로, 브랜드인지도로 노출에 중심을 둔 영상 광고를 집행한 뒤, 나중에 10초 이상 영상을 시청한 고객만 묶어서 그들에게 참여를 권장하는 참여형 영상광고를 집행하고, 또 다시 그들이 10초 정도 광고 영상을 시청하면 , 전환을 목적으로 한 영상 캠페인 광고를 다시 집행하시면 됩니다.대부분의 사람들은 그들이 제공하는 제품이나 서비스에 대한 영상 광고는 집행하지만, 왜 이 제품을 사용해야 하는지, 어떻게 이 제품을 사용해야 하는지에 대한 영상 컨텐츠를 만들지는 않습니다.이 방법을 사용하면 잠재 고객에게 관심을 보이면서 왜 그렇게 하는지, 어떻게 하는지를 알려 줄 수 있습니다.출처 : 구글 이미지9. 사용자 기반의 컨텐츠, Social Proof , 인플루언서 마케팅을 결합하라!자료와 페이스북 광고를 통해 완벽한 고객을 공략하는 것과 관련해서는 많은 정보가 있지만, 이런 사람들을 겨냥해야 할 실제 To Do List 에 대해서는 충분한 논의가 없었던 것이 사실입니다.종종, 마케팅 담당자들은 분석에 너무 몰두하여 그들이 페이스북 광고를 사용하는 이유를 잊어 버립니다.성공적인 마케팅 캠페인은 훌륭한 타겟 외에도 훌륭한 창의력을 지녀야 합니다(사진이든 영상이든). 이는 여러분이 핵심 고객과 잠재 고객의 인구 통계에 대해 잘 알고 있어야 한다는 것을 의미합니다. 잘 알고 집행하는 광고에 사람들이 더 많이 반응하는 것은 당연하니까요.더구나, 목표로 삼은 이러한 창의성을 달성하기 위한 가장 좋은 방법은 UGC(User-Generated contents)를 통해 만들어진 것입니다.  UGC 기반 광고는 캠페인 타겟 또는 웹 사이트가없는 캠페인보다 29% 높은 웹 전환율로 전환시킬뿐만 아니라 Facebook 광고 입찰 시스템에서 더 저렴하게 운용할 수 있습니다. UGC 기반 광고는 클릭률이 4 배 높고 클릭당 비용 (CPC)이 평균보다 50 % 하락했습니다.여기 UGC의 멋진 예가 있습니다.아시다시피 좋아요, 댓글 및 공유의 형태로 된 사회적 증거의 정도가 높을수록 광고는 규모가 커지고 더 저렴한 클릭을 받고 더 저렴한 전환을 얻을 수 있습니다. 또한 UGC와 영향력있는 마케팅을 결합한 유명인의 이야기를 통해 빅토리아 팬을 대상으로 광고 타겟을 나눴습니다. 목표로 한 팬을 통해 충분한 Social Proof가 만들어지면 새로운 인구 통계에서 광고를 탐색하는 데 사용되었습니다. 제가 직접 테스트해서 얻은 놀라은 데이터입니다. UGC 컨텐츠를 집행했을 때의 광고 성과클릭률(CTR) : 13.2 % CPC : 35원 CPM : 4천원 비교해 보면, 전통적인 미디어로 최고의 실적을내는 광고는 ... 클릭률 (CTR) : 2.81 % CPC : 200원 CPM : 6천원UGC는 본질적으로 여러분의 영상 광고를 제작하는 데 수천 달러를 지출하는 대신 굉장히 자유롭게 만들 수 있습니다. 실제 고객이 컨텐츠를 만드는 형식이기 때문에 따로 인구통계를 파악하여 타겟팅을 할 필요도 없지요.10. 메신저 봇을 통하여, 퀴즈 컨텐츠 만들기 !메신저 봇에서 실행할 수있는 훌륭한 워크 플로는 Facebook 게시글 댓글에 대한 자동 응답입니다.질문이있는 게시물을 만들 수 있으며, 사람들이 의견에 답변을 제공하고 타겟 고객에게 홍보하도록 권장 할 수 있습니다. 사람들이 소식에 댓글을 남기면 봇이 메신저에서 자동으로 응답하도록 설정하여 메신저 채널에서 잠재 고객을 확보 할 수 있습니다.즉, 나중에 메신저에서 브로드 캐스트를 보내거나 순서대로 정렬된 메시지 등을 구독하여 직접 이 모든 사람들과 다시 참여할 수 있습니다. 그리고 모든 사용자가 직접 우리 브랜드에 대해 케어를 받게됩니다.페이스북 알고리즘에 의존하여 메신저 광고를 하는 것 보다 페이스북 페이지 팔로잉을 하여 게시물을 노출시키는 것이 훨씬 더 정확합니다.이 페이지의 고정 된 게시물을 살펴보세요. Lifetime Bulb는이 기술을 통해 높은 수준의 리드를 확보하고 있습니다. 또한이 워크 플로우를 통한 잠재고객당 비용은 다른 채널보다 약 80 % 정도 낮을 수 있습니다.출처 : 구글 이미지11. 컨텐츠를 통해 'Context'를 만들어라 !이제 우리가 Mofu(Middle of the Funnel Model) , Bofu(Bottom of the Funnel Model)에 대한 프레임워크가 구축되었다면, 신규고객 전략(Top of the Funnel Model)을 위한 컨텐츠 배포가 비즈니스 성장의 모든 것이 될 것입니다. 핵심은 우리 비즈니스의 특징이나 신뢰도, 연결고리를 다양한 컨텐츠를 통해 지속적으로 노출시키면서 고객들과 끈끈한 관계를 유지하는 것입니다.예를 들어 한달에 한번 고객들을 위한 컨텐츠를 정기적으로 배포하여 Top of the Funnel Model에 속해있는 고객들의 트래픽을 우리 웹사이트로 정기적으로 유입시키는 방법이 있습니다.Facebook이 점점 더 광고 플랫폼으로 진화하게 되면서, 클릭당 비용도 점점 더 비싸지고 있습니다. 이러한 트렌드 때문에, 마케터가 더이상 비효율적인 광고를 집행하는 일을 방지하기 위해 지속적인 관계유지를 위한 컨텐츠 배포를 페이스북에서 진행하는 것은 매우 중요합니다. 12. 경쟁사 타겟을 사용하라!제가 새로운 클라이언트나 고객들을 얻기위해 가장 중요시하게 생각하는 관점은  '많은 사람들이 내 브랜드를 알고 있지만, 더 많은 사람들은 그렇지 않을것이다' 라는 사실입니다.이러한 관점을 가지고 저는 처음으로 저의 경쟁사를 좋아하는 타겟들에게 광고집행을 했습니다. 예를들어서, 만약에 여러분이 Tony Robbins' 라는 브랜드의 고객들에게 무언가를 호소하고자 한다면 그 브랜드를 좋아하는 사람들을 타겟팅하면 되는 것이지요.페이스북은 모든 데이터를 공짜로 제공합니다. 그 중에서도 단연 최고인 것은 경쟁사 타겟이 일반적인 인구통계 타겟팅 보다 훨씬 더 광고와 관련성이 높다는 사실이지요.이 전략은 기존에 우리가 광고 집행을 할때 쓰였던 타겟팅의 인구 통계 정보와 함께 사용하면 더욱 효과적인 성과를 얻을 수 있습니다. 이 전략은 단순히 인구통계만으로 타겟팅을 진행했던 유저들에게 필터링 작용을 사용할 수 있다는 거지요. 그런 다음 우리는 이 두가지 필터를 사용하여, 메세지를 전달할 수 있습니다.출처 : 구글 이미지13. 라이브 영상과 유료 캠페인 광고를 구축하라사람들이 여러분의 비즈니스에 엄청난 참여도와 데이터를 기술적으로 묶어서 페이스북 광고에 사용하는 것은 절대적으로 중요한 일입니다. 여러분은 이미지 컨텐츠를 사용하던, 영상 컨텐츠를 사용한던, 이러한 것들을 다양한 방식으로 셋팅할 수 있습니다. 제가 가장 좋아하는 타겟팅 기술은 매일매일 라이브 영상을 페이스북에서 진행한 이후에, 영상을 시청한 사람들과 라이브 영상에 참여한 사람들을 타겟으로 지정하여 저의 웹사이트에 방문하게끔하는 전략입니다.물론 여러분은 좀 더 다르고 세밀한 방식으로 리타겟팅을 진행해도 괜찮습니다. 이러한 방식을 이용한 리타겟팅은 우리들에게 좀 더 낮은 CPA를 제공할 가능성이 높으니까요. 아래쪽 예시를 참조해주세요.출처 : 구글 이미지여기 까지 다양한 페이스북 광고의 전략론들을 공유해보았습니다.아직은 정리가 제대로 안된 것 같다는 느낌이 들지만 조만간 ebook으로 정리하여 배포할 예정이니 많은 관심 가져주세요.퍼포먼스 마케팅 에이전시, 오피노 바로가기
조회수 1321

[앵커리어랩]연구보고서 대표 '박수상'

IT기술로 '취업'을 새롭게 코딩하겠다는 사람들.그리고 무려 취업시장의 패러다임을 바꿔보겠다는 사람들.어떤 생각을 하고 사는 사람들일까요?오늘부터 자소설닷컴을 운영하는 앵커리어의 팀원을한.명.한.명.차.례.로파헤쳐 보겠습니다. 그 첫 번째 주인공은대표이자 개발자를 맡고계신 박수상 대표님(a.k.a HOGOO )입니다.워후. 능력자INTRO. 인사밍케터) 간단한 자기소개 부탁드립니다.HOGOO님) 안녕하세요. 서울대학교 컴공과 석사과정 중에 있습니다. 아, 그리고 '멋쟁이 사자처럼' 동아리 활동을 했었습니다. 밍케터) 앵커리어랩 첫 번째 연구보고서 주제로 선정되신 소감 말씀해주세요.HOGOO님) 마케터들이 블로그를 만들 때마다 인터뷰를 하는 것 같은데 재활용 안 될까요? 아... 아닙니다.좋은 프로젝트의 성공을 기원하겠습니다. (웃음)밍케터)(왠지 이번 블로그를 반드시 성공시켜야 할 것만 같다...)제1장. 머리_경영인의 냉철한 두뇌 밍케터) 경영자와 개발자를 겸하고 계시는데 구체적으로 하시는 일이 궁금합니다.HOGOO님) 경영자로서는 기업운영의 전반적인 부분을 담당하고 있습니다. 개발자로서는 아시다시피 '자소설닷컴'사이트를 개발하고 있습니다.밍케터) 앵커리어는 어떤 회사인지 소개해주세요.HOGOO님) IT기술로 이루어진 닻.취업준비라는 바다에서 취업준비생들이 자기의 일을 찾고 정착할 수 있는 닻 같은 존재입니다.밍케터) 경영자로서 생각하는 앵커리어의 이상적인 모습이 무엇인가요?HOGOO님) 100만 취준생 여러분들이 자소서 작성할 때 워드 한글 안 쓰시고, 자소설닷컴을 쓰시는 거요!밍케터) 외적인것은 없을까요? 예를 들어 구내식당이 있는 회사라던가...(사심 전달☞☜)HOGOO님) 아...아!....음....... 수면실 이불이 매일 빨려있었으면 좋겠네요. 사무실은 매우 마음에 듭니다. (웃음) 그리고... 직원들 돈 많이 줄 수 있는 회사요!(자나깨나 직원생각. 5959)밍케터) 전공과 경영이 관련이 없으신대, 어려움은 없으신가요!HOGOO님) 학생회, 동아리 회장 등의 대외활동을 하면서 사람들을 이끌고 모아봤던 경험이 크게 도움이 되고 있습니다. 밍케터) IT 스타트업 창업의 핵심 키워드 세가지만 집어주세요!HOGOO님) 첫째.열정,열심,성실이요. 이것들이 없으면 개인의 발전도 회사의 발전도 없을거에요.둘째, 팀원이요. 본인이 열심히 하고 같이 열심히 할 수 있는 팀원을 만나세요.  좋은 팀원과 일을 같이 할 수 있다는 것은 福입니다.제2장. 오른손과 왼손_실수없는 완벽한 코딩을 위하여 밍케터) 요즘 하루에 몇 시간씩 개발하시나요?HOGOO님) 음..어제는 4시까지 코딩하고...(손가락 계산 중) 흐어. 어제는 13시간 했네요.밍케터) 끝도없는 개발개발개발,.. 질리지 않으신지!HOGOO님) 질리지 않습니다. 개발할 때는 참 기분이 좋고 열심히 하고 싶다는 생각만 들어요. 제 취미가 개발하면서 노래 듣기, 개발 커뮤니티 댓글 달기, 동영상 개발 강의 듣기 등등 전부 개발과 관련되어 있어서요. 참 즐겁습니다!다만 회사 운영에 신경을 못 써서 부담감이 있습니다. (HOGOO무룩..)밍케터) 코딩에 관심을 갖게 된 계기가 궁금합니다!HOGOO님) 초등학교 5학년 때 컴퓨터 수업에서 접하고 자격증 따고, 대회 나가고 하면서 쭉 코딩을 해왔습니다. 학부 전공이 아니어서 잠시 멀어졌지만 '멋쟁이 사자처럼'을 만나서 다시 시작했습니다.개발을 하다 보면 초집중의 단계가 오는 순간이 있습니다. 그때의 쾌감이 참 좋아요. (대표님 최소 개발더쿠!!)밍케터) 리뉴얼 된 자소설닷컴의 베스트 오브 베스트 기능을 꼽는다면?!HOGOO님) [제출하기]입니다. 개발의 화룡점정이라고 표현하고 싶네요. 생소한 기능이라 사용률이 높진 않지만 잘 되면 정말 좋을 것 같습니다.제3장. 가슴_연극,랩,노래를 향한 뜨거운 열정 밍케터) 스타마케팅에 대해서 어떻게 생각하세요? HOGOO님) 스타성이 있는 사람으로 해야죠(단호)밍케터) 대표님에게서 스타성을 많이 보고 있습니다.HOGOO님) 대표가 스타가 되기보다, 자소설닷컴이 먼저 스타가 되는 게 좋을 것 같네요.(웃음)밍케터) (밍무룩...) 연극동아리 당시의 사진이 공개되어 굉장한 이슈가 되었었습니다.연극동아리를 시작한 이유가 무엇인가요?HOGOO님) 선배님들이 술 많이 사주셔서요. ㅎㅎ 밍케터) 가장 기억에 남는 역할은요?HOGOO님) 멀티맨이었어서... 꽃보다남자 구준표, 왕비호, 유치원생, 옆집 아주머니를 했었네요.의상 갈아입을 시간이 없어서 스타킹을 못 신어서 다리털 강.제.오.픈 당한 기억이 있습니다.. [열정적으로 연극에 임하시는 박수상 대표님 ]밍케터) 랩에도 재능이 있으시다고 하던ㄷ...HOGOO님) 없구요(단호) 듣는거 좋아합니다. 양동근 어릴 때부터 무척 좋아했구요.노래방 가서 랩 하면 2점 혹은 4점 혹은 6점 정도 나옵니다.제4장. 손_나의 BEST OF BEST 부위밍케터) 인터뷰 컨셉이 연구보고서, 설계도, 해부도 뭐 이런 겁니다.그래서 말씀해주세요. 가장 자신 있는 부위를HOGOO님)음.....아 이거 어렵네요...(30초 정도 고민의 시간)....손으로 할까요? 손이 커서...결론. 앵커리어 공식질문1. 나에게 앵커리어란?소중한 시작.시간이 빠르게 가는 것이 아까울 정도로 20대에 이런 시간을 가질 수 있을까라고 생각해봅니다.저는 이 창업이 마지막이라고 생각하지 않기 때문에 "창업의 시작"이라는 의미를 두고 있습니다. 행운입니다.2.자소설닷컴을 한 마디로 표현하면?취업준비를 가장 빠르고 편하게 할 수 있는 온라인 서비스입니다.  #앵커리어 #팀원소개 #인터뷰 #팀원자랑 #기업문화 #조직문화
조회수 1060

팀 리더로서 성장하기

 처음 이 회사에 면접을 보던 날이었습니다. 이날 2차 면접을 보러 왔었는데 어머니는 무슨 중소기업이 2차 면접을 보냐며 그렇게 인재를 못 알아보는(?) 회사는 보러 가지 말라고 하실 때였죠. 여하튼 저는 깔끔하게 옷을 입고 2014년 5월에 이 회사에 면접을 보려 왔습니다. 저녁 7시에 면접이 시작되었기 때문에 1시간여를 함께 얘기하다가(4대 1로 시작한 면접은 개발자분들까지 합류하여 6대 1 면접이 되어버렸습니다) 서로 배가 고픈 나머지 주린 배를 쥐어 잡고 식당으로 갔던 기억이 나는군요. 함께 밥을 먹고 빠이빠이 하려는 찰나 저에게 말을 걸어오시는 대표님, "시간 괜찮으시면 술 한잔 하시죠?" 지금도 그렇지만 술을 거절하는 성격은 아니기에 "좋습니다"하며 바로 따라나섰고 그렇게 3차 술 면접이 시작되었습니다. 그때까지만 해도 술을 그렇게 많이 먹을 줄을 몰랐습니다. 제가 이전까지는 소맥을 절대 먹지 않았는데 좌중 분위기가 소맥을 먹는 분위기였고 부어라 마셔라 분위기어서 어쩔 수 없이 먹다 보니 기분이 좋아지고 또 그렇게 어느 순간부터 목구멍에 술을 들이붓고 있더군요. 그 와중에 한 친구는 어제 여자친구랑 헤어졌다며 울고 있었습니다. 정신 차려보니 이사님의 친동생분과 친동생의 여자친구분도 술자리에 참석해있더군요.(다음날 정신 차리고 곰곰이 생각해보니 사실 참석해있던 게 아니라 저희가 그 자리로 찾아간 것이었지만요) 바람을 쐬려고 밖에 나와 담배를 물고 있는데 면접 볼 때 개발자로 참석했었던 친구가 같이 나와서 함께 담배를 피우게 되었습니다. 저는 사실 술을 너무 많이 먹어서 다시 포장마차 안으로 들어가지 않으려는 요량으로 그 친구과 이야기를 좀 길게 하려고 회사에 대한 질문을 던졌는데 그것이 점차 심화되어 팀원에 대한 얘기까지 나오더군요. 그 친구의 말에 따르면 현재 회사 자체는 굉장히 맘에 들지만 한 가지 정말 싫은 점이 있다고 했습니다. 그 점은 바로 의사소통에 관련된 것이었는데요. 사업 개발하시는 분이 기획도 같이 하시는데 개발도 모르고 UI/UX도 모르며 심지어 디자인 감각도 없다는 것이었습니다. 그리고 회의할 때마다 자꾸 서로 다른 얘기를 하는데 이야기가 도무지 이해가 안 되고 자신의 이야기도 이해를 하려 하지 않는다는 말을 거침없이 뿜어내더군요. 심지어 같은 개발자끼리도 말이 안 통한다고 한탄하기도 했어요. 그 당시에는 개발자가 두 명밖에 없었는데도 말이죠. 저는 그 이야기를 듣자마자 제가 이 팀에서 해야 할 일은 의사소통을 중재하는 일이다라고 직감하게 되었습니다. 그 당시에는 2차 면접이라 내가 이 팀의 리더가 되어야겠다는 생각을 할 수 없었습니다. 단지 이 팀이 원활하게 돌아가려면 의사소통이 원활하게 되어야 한다라는 생각만 있었을 뿐입니다. 저는 그렇게 개발자와 기획자(사업개발) 간에 커뮤니케이션의 다리로써 회사생활을 시작하게 되었습니다. 물론 개발에도 한몫 하긴 했지만 서비스를 운영했던 경험도 있고 영업 경험도 조금은 있어서 그나마 다른 개발자분보다는 굉장히 수월하게 역할을 수행해낸 것 같았습니다. 다른 분들이 저를 조금씩 신뢰하게 되면서 일거리가 엄청나게 늘어났기 때문에 그것을 더욱 잘 실감할 수 있었지요. 그렇게 저는 처음으로 회사에서 리더라는 포지션에서 역할 수행을 할 수 있었습니다. 입사 순서는 가장 늦었지만 중간자의 위치에서 양쪽 입장을 그나마 객관적으로 관찰하고 수행하는 역할을 맡았지요. 저를 제외한 팀원이 2명일 때에는 이렇게 팀이 운영될 수 있었습니다. 팀에 1명의 개발자가 늘어나자 문제는 또 180도 달라졌습니다. 저는 단순히 팀원이 2명일 때의 공식과 별반 다르지 않다고 생각했는데 2차 함수에서 3차 함수로 변한 것이 아니고 처음 보는 그래프가 떡하니 등장해버린 것입니다. 새로 들어온 친구는 굉장히 자부심이 커서 이것저것 많은 것을 해보려는 욕심이 많았습니다. 우리 같은 스타트업에서는 뭐든 자유롭게 할 수 있었지만 인프라가 부족했기 때문에 바닥부터 해야 한다는 엄청난 벽이 있었는데요, 그 친구는 그 벽을 항상 탓했습니다. 그렇게 주변 사람들에게 불만을 토로하고 다니는 그 친구 때문에 저는 많은 스트레스를 받았을 뿐만 아니라 바쁜 일정을 소화하느라 엄청난 압박을 받았고, 건강악화까지 겹쳐서 굉장히 힘든 시기였습니다. 두통이 너무 심한 나머지 병원에 가서 링거를 맞으면서 고혈압이니 조심해야 된다라는 얘기를 듣고 모든 것이 다 원망스러웠습니다. 머리가 아파서 담배를 줄이고 대신 술을 자주 먹게 되면서 매일매일 피곤한 삶을 보냈고 그 친구로 인한 스트레스가 점점 깊어지면서 둘 간의 사이도 멀어진 것이 사실입니다. 그 당시 저와 그 친구의 공통점이라고 하면 바로 건강이 안 좋다는 것이었는데요. 그 친구는 안 좋은 식습관과 과다한 카페인 섭취, 잦은 밤샘, 흡연으로 천식, 지방간, 두통을 오랜 시간 동안 달고 살아왔습니다. 나이가 어림에도 불구하고 눈은 시커멓고 배는 툭 튀어나왔지요. 제가 아프기 전에는 그 친구에게 자주 이런 말을 했습니다, "건강해야 일도 하는 거다. 자신의 건강도 못 챙기는 사람이 어떻게 회사를 이끌어가겠냐" 제가 건강을 잃고 그 친구와 같이 골골대다 보니 번뜩 머리를 치는 생각이 들었습니다. 나는 왜 그 친구에게 건강을 챙기라고 말했으면서 정작 나 자신은 지키지 않는가? 그 날 이후로 저의 삶은 확연히 달라졌습니다. 담배를 완전히 끊고 술을 줄이고 아침저녁으로 30~40분씩 자전거를 탔습니다. 3개월이 지나고 저는 다시 건강을 되찾았습니다. 저는 다시 그 친구에게 건강의 중요성에 대해 자신의 경험을 통해 얘기했고 그 친구도 조금 달라지는 모습을 보였습니다. 밤 12시 이전에 잠자리에 들기, 하루에 커피 1잔만 마시기, 담배 줄이기, 아침 챙겨 먹기 등 그 친구도 열심히 실천하는 모습을 보이기 시작한 것입니다. 제가 이 경험을 통해 느낀 점은 리더는 모든 팀원들에게 모범이 되어야 한다라는 점입니다. 맹자가 들려주는 리더의 자기수련법 9가지라는 글에서 첫 번째 덕목이 바로 스스로 모범을 보여라라는 내용인데요, 거기에 이런 글귀가 있습니다.윗자리에 있는 사람이 좋아하는 것이 있으면, 그 아래 있는 사람은 반드시 그것을 더 좋아하게 된다. 군자의 덕은 바람이고 소인의 덕은 풀이다. 풀은 바람이 불면 반드시 바람을 따라 눕게 마련이다. - 등문공 지각을 하지 않는 리더를 따르는 팀원들은 지각을 하지 않을 것이며, 다른 사람들에게 상냥하게 대하는 리더를 따르는 팀원들은 다른 팀원들에게 상냥하게 대할 것이라는 것을 깨닫게 되었습니다.(이 이후로 저는 절대 지각을 하지 않습니다) 그렇게 그렇게 여러 과정을 거치면서 제가 회사에 다닌 지 2년이 넘었습니다. 이제는 팀원도 10명 가까이 되고 회사 전체적으로도 많은 사람들이 함께 일하고 있지요. 아까 2차 함수가 3차 함수로 변하지 않았듯이 10명이나 되는 팀원을 이끌 때는 또 다른 방법이 필요하다는 것을 느꼈습니다. 현재 팀원들은 굉장히 책임감이 넘치고 의욕적입니다. 고등학교에 다니는 18살짜리 친구도 있고, 고등학교를 갓 졸업한 친구들도 있고, 대기업에 다니다 온 친구도 있으며, 석사 과정을 때려치우고 온 친구도, 심지어 애가 둘이나 있는 아저씨도 있습니다. 처음에는 이런 생각도 들었습니다.개발팀에서 개발을 못하는 리더가 필요가 있을까? 무조건 팀원보다 모든 것을 잘해야 하지 않나? 또 뇌의 반대편에서는업무 처리를 잘하는 리더가 과연 진정한 리더일까? 오히려 팀원들을 위해서 희생하는 리더가 진정한 리더이지 않을까?라는 생각이 들었습니다. 어쩌면 팀원들은 리더인 저보다 업무 자체를 잘 할지도 모릅니다. 그다음부터는 온갖 귀찮은 일들을 제가 처리하기 시작했습니다. 작은 서류 작업부터 제품 테스팅, 연구 노트 작성, 제품 등록 등의 귀찮은 일들을 떠맡았지요. 제 머릿속에는 이런 생각이었습니다.팀원들은 자신이 원하는 재밌는 일을 하고, 리더인 나는 모두가 귀찮다고 생각하는 일을 해야 한다. 이렇게 되니까 제 자신이 너무 힘이 든 겁니다. 하루 종일 잡일만 떠안다 보니 엉덩이가 의자에서 떨어지는 횟수가 많아지고 내가 하는 일에 회의감을 느끼게 되었습니다. 재밌는 일을 하기 위해 스타트업에 들어왔는데 오히려 회의감을 느끼는 어처구니없는 상황이 발생한 것입니다. 다행히도 저는 이 잘못된 상황을 바로 깨달을 수 있었습니다. 왜냐하면 벤처라는 생태계에서 항상 잘못을 깨닫고 뉘우치고 분석하고 발전하는 일을 배워왔고 그것에 굉장히 익숙했기 때문입니다. 처음에는 내가 남들이 귀찮다고 생각하는 재미없는 일을 해서 회의감을 느낀다고 생각했지만 사실 그게 큰 이유가 되지 않는다는 것을 깨달았습니다. 일을 하다 보면 하기 싫은 일을 할 때가 더 많고 그런 일들이 모여 큰 목표를 달성하게 되며, 프로젝트가 목표에 가까워지는 것을 보면서, 그리고 목표를 달성하는 순간 엄청난 쾌감에 전율을 느끼는 순간이 있다는 것을 저는 알고 있습니다. 여기서 제가 빼먹은 것은 바로 목표입니다. 물론 저의 목표도 포함하여 팀원들의 목표를 이야기하는 것이고 목표를 위한 동기부여 또한 중요합니다. 저는 팀원들을 속이고 있었습니다. 목표를 제시하기보다는 하는 일 자체에 재미가 있다 없다를 구분하고, 눈앞에 닥친 재밌는 일을 하게 함으로써 동기부여를 받게 하려는 엄청난 과오를 범했던 것입니다. 저는 제가 귀찮은 일을 떠맡음으로써 팀원들의 눈을 속이고 그들을 과소평과 하는 무례를 저지르고 말았습니다. 이런 과오를 범한 것에는 저의 소심함에 한몫 거들었다고 볼 수 있습니다. 어렵게 얻은 사람들을 잃기가 싫었고 그들이 이 프로젝트의 재밌는 부분만을 바라보게 함으로써, 다른 생각을 하지 못하게 하고 계속 저와 함께 일하도록 했습니다. 저는 지금 생각하는 옳은 방향으로 다시 선로를 틀었습니다. 팀원들에게 목표를 제시하기로요. 이 프로젝트를 하는 목적은 이것이며 우리의 목표는 이것이다를 항상 강조했습니다. 이 프로젝트를 완수함으로써 우리는 고객들에게, 사용자들에게 이런 것들을 제공할 수 있다를 항상 이야기합니다. 또한 프로젝트 완료 후에는 팀원들에게 우리 제품이 어느 나라 어느 도시에 얼마큼 설치되었고 현재 그들이 잘 사용하고 있으며 이런 말들을 하더라, 좋은 점은 이런 점이고 안 좋은 점은 이런 점이라고 말하더라... 이런 식으로요. 우린 그들의 피드백으부터 새로운 목표를 찾고 새로운 가치를 창출하게 되었습니다. 현재까지 우리는 매우 만족하고 있으며 또 다른 좋은 방법을 찾기 위해 노력하고 있습니다 :)#비주얼캠프 #인사이트 #경험공유 #성장 #일지
조회수 947

나의 창업 이야기(1)

2014년 6월 처음으로 스타트업이라는 말을 알게 된다. ( 사업이라는 단어는 알고 있었다. )알게 된 계기는 간단했다. 당시 '초소형 파력발전기'를 만드는 팀에 소속된 것이다.팀에 들어간 것도 카톡 방에 "사업 관심 있는 사람"라고 물어본 친구가 있었고, 그 물음에 나도 모르게나 관심 있어장난 반 진담 반으로 아무 생각 없이 대답한 게 지금까지 오게 된다.창업가들은 사업을 하게 된 멋진 계기가 존재하지만 나는 그냥 메신저 톡 하나에 무심코 뱉은 말로 시작된 어찌 보면 좀 어이없는(?) 케이스라고 말할 수 있다. 그렇게 팀 엑시스오션을 시작하게 된다.그 당시 생각해보면 정말 스타트업이라는 단어도 모르는 무지 그 자체였다. 그렇다고 솔직히 알려고 하지 않았다. 그냥 무언가를 만든다는 게 즐거웠고 팀 동료들과 함께하는 게 마냥 좋았던 거 같다. 지금까지 틀에 박힌 교육과 경험을 해온 나였지만 엑시스오션에 들어온 계기로 인생은 180도 달라지게 된다.실제 사이즈 모델 제작과 파력 발전량 테스트 파도의 상하운동과 바다의 깊이에 따른 속도차를 이용한 자가발전 에너지를 활용한 바다정보 관측하는 해상부이를 만들고자 하였다. 어렵게 말했지만 바다를 떠다니면서 스스로 에너지 만들고 바다의 데이터를 측정하는 장치라고 생각하면 된다.미니어처도 만들어보았다 헤헤6개월 만에 첫 창업(?)이라고 하기도 뭐한 프로젝트가 기술적 한계에 부딪혀서 정리가 됐지만, 지금도 그 당시 팀 리더 형과는 거의 매주 꼭 보는 사이다.  2014년 첫 창업 이야기 위에 적힌 게 전부다. 생략된 내용이 꽤 많긴 하지만, 군복무를 끝내고 현대자동차에 들어가기 위해 준비하던 나에게 어이없는 창업 생태계에 발 디딤은 그렇게 시작됐다.창업을 하며 느낀점 중 가장 중요한 건 바로 경험의 중요성이다. 해보는 것 겪어보는 것은 정말 중요하다. 생각의 깊이는 결국 경험의 깊이다.많은 사람들은 굉장히 의존적이다. 어떤 일을 하기 전에 질문을 하고 조언을 구하고 확인을 받고 싶어 한다.이게 맞는 건지? 이건 괜찮은 건지?특히나 창업 생태계 내에서는 더더욱 그런 것 같다. 안 해본 경우가 많고 체크할 사항이 어떤 일보다도 더 많다.그래서 그런가 내가 풀어야 할 문제를 남에게 질문하는 경우가 굉장히 많다.물론 멘토들이나 미리 경험해본 사람의 이야기를 들어보는 건 굉장히 중요하다. 하지만 그건 단순히 참고사항일 뿐이다. 그렇다면 어떻게 해야 될까? 그냥 하는 거다. 정말 부딪혀보는 거밖에 없다. 내가 풀어야 할 문제는 결국 내가 부딪혀보고 경험하는 것으로 내 안에 고스란히 녹으며 해결되는 경우가 많다.시작을 한 이후에 문제가 생기고 그 해결책을 찾는 과정에서 전문가를 만나고 조언을 구하는 건 정말 좋다. 하지만 해보지도 않고 앞으로 경험할 일들을 논하는 건 정말 어리석은 일인 것 같다. 현대 창업주 고 정주영 회장님의 꼰대 아닌 꼰대 같은 말 "해보기나 해봤어?"하고 싶으면 하는 거다. 가즈아!( 단! 창업 전에 스타트업과 관련된 기본적인 소양과 지식은 필수다. 창업 관련 서적이나 글들을 읽어서 조심해야 할 부분들은 미리 체크하고 부딪히는 걸 추천한다. ) #태그솔루션 #TAGSOLUTION #제품소개 #인사이트
조회수 2445

비트윈 PC 버전 개발기 - VCNC Engineering Blog

 지난 10월 20일, 비트윈 PC 버전의 오픈 베타 테스트를 시작했습니다. PC 버전 덕분에 컴퓨터 앞에서 일과 시간을 보내는 직장인들도 편리하게 비트윈으로 연인과 대화할 수 있게 되었습니다. 이 글에서는 PC 버전에 어떤 기술이 사용되었는지 소개하고 약 4개월의 개발 기간 동안 겪은 시행착오를 공유합니다.비트윈 PC 버전 스크린샷개발 플랫폼 선택PC 버전 개발을 본격적으로 시작하기 전에 어떤 개발 플랫폼을 선택할 것인지 많은 고민을 했습니다. MFC나 WinForms 같은 네이티브 플랫폼, Qt 등의 크로스 플랫폼 라이브러리, 그리고 웹 기반 앱 등의 여러 후보를 가지고 토론을 거쳐 웹 앱으로 개발하기로 했습니다.웹 기반으로 개발하게 된 가장 큰 이유는 생산성입니다. PC 버전 팀이 웹 기술에는 이미 익숙하지만 다른 플랫폼은 경험이 많지 않았습니다. 또한, 비교적 자유롭게 UI를 구성할 수 있으며 기존의 각종 개발 도구를 이용하면 빠른 이터레이션이 가능할 것으로 예상했습니다.단, 사용자가 기존에 설치한 웹 브라우저를 통해 접속하는 방식이 아니라 브라우저 엔진을 내장한 실행 파일을 배포하는 방식을 택하기로 했습니다. 여러 브라우저 환경에 대응하지 않아도 되고, 브라우저에서 지원하지 않는 일부 시스템 기능을 직접 확장해서 사용할 수 있기 때문입니다.서버 아키텍처의 변화비트윈 서버의 서비스 로직은 Thrift 서비스로 구현되어 있습니다. 그리고 Alfred라는 자체 개발 라이브러리를 사용하여 Thrift 서비스를 Netty 기반의 서버로 구동합니다.기존의 비트윈 모바일 클라이언트는 채팅 서버와 Thrift의 바이너리 프로토콜로 통신하고 있습니다.1 그러나 웹 플랫폼에서는 서버와 지속적으로 양방향 연결을 유지하려면 WebSocket 프로토콜을 사용해야 하므로 Alfred에 WebSocket 프로토콜 지원을 추가하였습니다. 애플리케이션이 아닌 라이브러리 수준의 변화였기 때문에 기존 서비스 코드에 영향을 거의 주지 않고 새로운 프로토콜을 지원할 수 있었습니다.Alfred에 웹소켓 지원을 추가하였습니다.비트윈 PC 버전 셸비트윈 PC 버전은 크게 HTML과 자바스크립트로 작성된 웹 앱 부분과 웹 앱을 브라우저 엔진으로 구동해주고 플랫폼 API를 제공하는 셸 (Shell) 부분으로 구성되어 있습니다.비트윈 PC 버전 구조PC 버전 셸은 Chromium Embedded Framework (CEF)를 사용합니다. 이름에서도 알 수 있듯이 Chromium 브라우저 엔진을 애플리케이션에 내장하기 쉽도록 감싸놓은 라이브러리입니다. CEF는 Evernote나 Steam 등 웹 브라우저를 내장한 애플리케이션에서 널리 사용되고 있어 선택하게 되었습니다.2자바스크립트에서 셸이 제공하는 플랫폼 API를 호출할 때는 CEF의 Message Router를 사용하였습니다. Chromium은 멀티 프로세스 구조로 이루어져 있어, 렌더 프로세스에서 작동하는 자바스크립트 코드가 브라우저 프로세스에서 작동하는 C++ 코드를 호출하고 결과를 돌려받기 위해서는 별도의 처리가 필요합니다. Message Router는 이 두 프로세스 사이의 비동기 통신을 지원합니다. 이를 통해 창 투명도 조절이나 트레이 알림 표시 등 원래는 웹 플랫폼에서 지원하지 않는 기능을 확장하여 지원할 수 있었습니다.CEF에서는 Chrome 개발자 도구를 사용할 수 있어 디버깅이 용이했고, 디자이너 옆에서 바로바로 좌표나 색상 등을 바꿔볼 수 있어 협업에도 도움이 되었습니다.그러나 PC 버전을 개발하면서 가장 많은 시행착오를 겪은 부분이 CEF를 다루는 것이었습니다.문서화가 잘 되어있지 않습니다. 그래서 실제 작동 방식을 확인하기 위해 직접 소스 코드를 읽어야 하는 경우가 많았습니다일반적인 웹 브라우저에서는 잘 작동하는 API를 CEF가 자원하지 않거나 버그가 있어 다른 방식으로 구현해야 할 때가 있습니다.CEF에 노출된 API에만 접근할 수 있어 Chromium에서 제공하는 플랫폼 추상화 레이어를 활용할 수 없었습니다.비트윈 PC 버전 웹 앱비트윈 PC 버전의 주요 애플리케이션 코드는 HTML과 자바스크립트로 작성되어 있습니다. 자바스크립트로 큰 규모의 애플리케이션을 작성할 때 발생하는 여러 가지 어려움을 피하고자 React 라이브러리 및 최신 자바스크립트 기술을 적극적으로 활용하였습니다.ReactReact는 Facebook에서 개발한 오픈 소스 자바스크립트 UI 라이브러리입니다. 일반적인 웹사이트보다는 비교적 복잡한 인터페이스를 구현해야 했기 때문에 jQuery처럼 간단한 라이브러리로는 부족할 것으로 생각하여 비트윈 PC 버전은 처음부터 React를 사용하였습니다.전통적인 개발 방식에서는 UI를 변경해야 할 때 기존에 렌더링 된 DOM 요소에 명령을 내립니다. 예를 들어 어떤 항목을 삭제하려면 그 요소를 찾아서 삭제 명령을 내리게 됩니다. React를 사용할 때는 이와 달리 해당 요소가 사라진 DOM 트리 전체를 다시 생성하면 React가 이전 트리와 새 트리를 비교하여 바뀐 부분만 반영해줍니다. 전체를 다시 렌더링하기 때문에 기존에 DOM 트리가 어떤 상태였는지 신경 쓰지 않고도 원하는 상태로 쉽게 변경할 수 있어 UI 코드의 복잡도를 줄일 수 있습니다.또한, React의 컴포넌트 시스템은 독립적인 UI 요소들을 서로 영향을 주지 않고 조합할 수 있도록 해주어, 한가지 컴포넌트를 수정했을 때 의도하지 않은 다른 컴포넌트와 간섭하는 문제가 적게 발생합니다. 비트윈 PC 버전에는 약 40가지의 React 컴포넌트가 쓰이고 있습니다.자바스크립트 모듈 시스템모든 코드를 한 파일에 넣으면 코드를 관리하기가 힘들어집니다. 따라서 서로 관련 있는 코드끼리 모듈로 나누어야 하는데, 자바스크립트에는 모듈 시스템이 기본적으로는 제공되지 않습니다. 비트윈 PC 버전에서는 CommonJS 표준을 따라서 모듈을 나누고, 이를 웹 브라우저가 해석할 수 있는 형태로 합쳐주는 Webpack 빌드 툴을 사용했습니다.Webpack은 자바스크립트뿐만 아니라 CSS나 이미지, JSON 파일 등도 모듈로 취급할 수 있고, 플러그인으로 지원하는 모듈 종류를 추가할 수 있습니다. 비트윈 PC 버전을 빌드할 때 실제로 사용하는 플러그인은 다음과 같은 것들이 있습니다.jsx-loader: React에서 사용하는 JSX 코드를 자바스크립트로 변환합니다. 또한, 미래의 자바스크립트 문법을 현재 브라우저에서 지원하는 형태로 변환합니다.less-loader: LESS 파일을 CSS 파일로 변환합니다.css-loader: CSS에서 참조하는 외부 리소스를 인식하여 의존성을 파악해줍니다.url-loader: 파일 크기가 일정 이하인 리소스를 Base64 인코딩으로 내장해줍니다.ECMAScript 6ECMAScript 6는 차기 자바스크립트 표준입니다. 현재 자바스크립트의 불편한 점을 많이 해소하기 때문에 장점이 많이 있습니다. 일부 기능은 이미 브라우저에 구현되어 있지만, 아직 지원되지 않는 기능도 있어서 jstransform을 통해 ECMAScript 5 코드로 변환하여 사용하였습니다.화살표 함수: 익명 함수를 (a, b) => a + b와 같은 문법으로 훨씬 간단하게 선언할 수 있습니다. 또한, this 변수의 스코프를 현재 코드 상의 위치에 따라 결정해줍니다.클래스: 다른 언어와 유사한 클래스 문법을 제공합니다. 상속이나 접근 제한도 가능합니다.해체(destructuring) 대입: 객체의 필드를 바로 같은 이름의 변수에 대입할 수 있습니다. 예를 들어, var {a, b} = {a: 1, b: 2}; 같은 코드를 작성할 수 있습니다.기타 사용된 패키지RSVP.js: Promise/A+ 구현을 제공하는 라이브러리로, Promise 패턴을 사용하여 비동기 로직을 알아보기 쉬운 형태로 작성했습니다.FormatJS: 다국어, 국제화 지원을 위한 라이브러리입니다. UI 메시지 번역이나 날짜, 시간 등의 포매팅에 사용했습니다.정리비트윈 PC 버전은 개발 비용을 줄이기 위해 웹 플랫폼 기반의 네이티브 애플리케이션으로 개발되었습니다.비트윈 서버에서 사용하는 Alfred 라이브러리에 WebSocket 프로토콜 지원을 추가하였습니다.Chromium Embedded Framework를 브라우저 엔진으로 사용하여 웹 앱을 구동하고 웹 플랫폼에서 제공하지 않는 기능을 확장하여 사용했습니다.자바스크립트 코드의 복잡도를 줄이기 위해 React, CommonJS, ECMAScript 6 등의 기술을 활용하였습니다.VCNC Engineering Blog, 비트윈 시스템 아키텍처, 2013년 4월↩Wikipedia, Chromium Embedded Framework - Applications using CEF↩
조회수 729

about 파운트

"모든 사람들의 경제적 자유를 실현하기 위한 구체적인 해결책을 제시하겠습니다." 파운트는 로봇이 자산관리 서비스를 제공하는 로보어드바이저(Robo-Advisor) 회사입니다. 기존의 은행이나 증권사 지점의 금융전문가(PB)들이 제공하는 자산관리 서비스를 기계가 대신해서 대중들에게 제공하는 서비스를 말합니다.영화 속에 등장하는 여느 로봇들처럼 하나의 인격체로서 로봇이 자산관리 서비스를 제공하는 것이면 좋겠지만, 로보어드바이저는 전통적인 퀀트 모델링을 기반으로 기계학습 등의 요소가 접목되어 고객들에게 투자에 좀 더 현명한 판단을 내릴 수 있도록 도움을 주는 기술입니다. 로보어드바이저는 고액자산가만이 누릴 수 있었던 자산관리를 일반 대중들도 누릴 수 있도록 서비스를 확장시켰다는데 그 의의가 있습니다.ㅣ 전통적인 자산관리 vs 로보어드바이저(Robo-Advisor)의 강점전통적인 자산관리는 금융전문가가 직접 투자 포트폴리오를 만드는 서비스였습니다. 하지만, 금융전문가는 사람인 만큼 자산관리 서비스를 제공할 수 있는 고객들이 한정적이었고 그에 따라 높은 수수료를 부담할 수 있는 고액자산가가 주된 고객이었습니다. 하지만, 고도화된 기술 발달에 힘입은 로보어드바이저의 등장을 통해 컴퓨터로 수천에서 수만명의 고객들을 대상으로 서비스를 제공할 수 있어 일반 대중들도 소액 투자금액과 낮은 수수료로 자산관리 서비스를 받을 수 있게 됐습니다. 뿐만 아니라, 자산이 어떻게 운용되고 어디에 투자되는지 등을 알기 위해서는 금융전문가에게 연락을 하거나 직접 만나야만 했지만 로보어드바이저를 통해서는 모바일과 PC를 통해서도 실시간으로 자산관리 현황을 파악할 수 있게 되었죠. 즉, 언제 어디서든 자산관리 서비스를 받아볼 수 있는 접근성에서도 우수하다고 할 수 있습니다. 게다가 사람의 잘못된 감정이 개입되지 않고 데이터를 중심으로 한 투자 의사결정을 내릴 수 있는 강점도 가지고 있습니다.이처럼 로보어드바이저는 저렴한 비용, 접근성, 데이터 중심적인 투자 의사결정 등에 경쟁력이 있습니다.ㅣ 로보어드바이저의 현황 및 전망은?국내는 대략 2015년부터 로보어드바이저 기업들이 등장하기 시작해서, 초기단계지만 최근 들어서는 정부 주도하에 코스콤이 주관하는 테스트베드도 시행하며 점차 성장하는 추세에 있습니다. 국내 대형 은행사와 증권사를 비롯해, 자산운용업계에서도 로보어드바이저 기업들과 협력한 금융상품들이 계속해서 출시되고 있는 것이 이를 반증하고 있습니다. 로보어드바이저 시장은 약 4~5년 전부터 미국에서 태동하기 시작해 매년 80%씩 꾸준히 성장하고 있습니다. 세계적 컨설팅 회사인 A.T Kerney의 보고서(2015년 기준)에 따르면 미국 시장은 2020년까지 연평균 64.56%씩 2.2조 달러까지 증가할 것이라고 보고 있으며, 실제로 세계적인 자산운용사인 블랙록(Black Rock)을 비롯해 골드만삭스 등 유수의 투자은행들도 로보어드바이저 시장에 뛰어들고 있는 상황입니다.ㅣ 파운트의 목표와 투자철학은?로보어드바이저는 인간보다 뛰어난 분석력을 바탕으로 높은 수익률을 담보하는 서비스가 아닙니다. 아직은 많은 고객들이 로보어드바이저를 황금알을 낳는 거위로서, 고도화된 IT기술력을 바탕으로 높은 수익률을 담보하는 서비스라고 이해하는 것 같기도 합니다. 하지만, 이는 시스템(System) 트레이딩의 목표이지 로보어드바이저의 목표는 아닙니다. 파운트는 시장의 위험을 최소화 하면서, 시장 벤치마크 + 알파의 수익률을 추구하는 자산관리 서비스이며, 글로벌 자산배분과 정교화된 알고리즘, 그리고 안정화된 엔진 기술력을 추구하고 있습니다.파운트(fount)의 명칭은 분수(fountain)라는 라틴어에 그 어원을 두고 있습니다. 투명하고 언제나 샘솟는 분수처럼 파운트의 서비스를 통해, 모든 사람들이 경제적 자유의 혜택을 누릴 수 있도록 앞장서겠습니다.
조회수 928

소비자 행동 데이터 측정의 의미

탈 인구통계적 소비주의2017년은 trendwatching.com이 연례보고서 Post-demographic Consumerism(탈-인구통계적 소비주의)을 통해 인구통계적 정보로 고객의 소비활동을 예측하는 모델을 버리라고 주장한 지 3년이 되는 해입니다. 3년이 지난 지금 우리의 생활은 어떤 모습일까요?(Post-demographic Consumerism 리포트의 첫페이지.  ‘소비자 행동에 혼란스러워하는 사람은 당신만이 아니다. 이제 소비자들은 그들이 행동해야 하는 방식대로 행동하지 않는다’ 라는 문장이 등장합니다) 대중교통 안이나 팀원들과의 점심식사 자리처럼, 물리적으로 동일한 시공간에 타인과 함께 존재하는 순간에도 우리는 스마트폰으로 다른 친구와 카톡을 하고, 관심 있는 기사를 읽고, 셀카를 찍거나, 페이스북 고양이 동영상에 좋아요를 누릅니다. 같은 시공간에 존재한다고 해서 반드시 동일한 집단적 경험을 공유하지는 않게 되었습니다.특히 나이와 소득수준에 관계 없이 스마트폰 보급률이 높은 우리나라는 각자의 취향에 걸맞은 컨텐츠를 소비, 생산하는 것이 자유롭습니다. 디지털 영역에서 개인별 파편화가 일어나기 쉬운 환경으로, 준거집단이나 인구통계와 같은 집단적 동질성에 기반한 마케팅 전략이 통하기 어려운 시장이란 해석도 가능합니다. (스티브 사마티노는 그의 저서 위대한 해체(The Great Fragmentation)에서 기존 산업사회의 논리가 파편화/해체된 후 디지털 융합으로 최적화 된다고 주장합니다. 개인의 파편화를 커버 아트로 채택한 것이 흥미롭습니다.)소비자 행동 데이터의 필요성마케터, 기획자, MD 등 사람들을 소비자로서 이해해야 하는 직업인들에게 이런 현상은 반갑지만은 않을 것입니다. 변화하는 시장에 걸맞은 새로운 전략이 필요해졌기 때문입니다. 여전히 인구주택 총 조사같은 통계자료, 리서치펌의 시장 조사 자료 등을 참고하지만 가장 면밀히 살펴보는 것은 자사 소비자의 행동 데이터입니다.실행 가능한 전략을 만들기 위해서는 통계와 시장조사 자료가 제시하는 거시적인 트렌드와 자사의 소비자행동 간 상관관계를 분석할 수 있어야 합니다. ‘1인가구 시대를 맞아 혼밥혼술이 유행한다’라는 외부 자료가 있어도, 자사 소비자의 선호도와 행동에 관한 데이터가 없다면 무엇을 만들고 어떻게 팔아야 할지 판단이 어려울 것이기 때문입니다.따라서 적어도 자사의 홈페이지, 소셜 채널, 쇼핑몰, 모바일 앱과 같은 온드 미디어(Owned Media)에 적절한 측정 툴을 적용해 소비자의 행동특성을 데이터로 남길 수 있어야 합니다. 어떤 제품을 얼마나 구매하는지, 신규 고객이라면 왜 우리 브랜드를 선택했고 어떤 경로로 유입 되었을지, 기존 고객이라면 방문 횟수, 구매량, 구매빈도에 주목할 만한 변화가 있는지 등을 측정할 수 있어야 합니다.소셜 미디어로 ‘공유’하는 활동도 소비자의 행동특성으로써 측정할 필요가 있습니다. 특히 커머스 분야에서는 상품의 소셜 미디어 공유가 남다른 의미를 가집니다. 상품의 URL을 자신의 메신저로 복사해 놓고 여유 있는 시간에 해당 상품을 비교구매 하는 패턴이 관찰되는 추세입니다. 따라서 소셜 미디어 공유는 강력한 구매징후로 판단하고 관리할 필요가 있습니다.위와 같은 데이터는 Wisetracker와 같은 사용자 행동 분석 툴을 이용해 체계적으로 분석할 수 있습니다. 운영하는 페이드 미디어와 온드 미디어에서 타겟 소비자의 행동과 그 결과를 알 수 있습니다. 광고에 대한 반응, 광고를 통한 구매, 구매 이후의 다양한 방문행동, 소비자의 충성고객화 또는 이탈 등, 고객생애주기를 관찰하고 대응할 수 있도록 분석 데이터를 제공합니다.(와이즈트래커의 사용자 행동 분석 대시보드)앞으로 3년 후의 환경 역시 변화할 것입니다. 하지만 거시적인 인구통계정보는 변화하는 환경에서의 소비자의 특성을 반영하지 못할 것입니다. 따라서 우리 비즈니스의 소비자를 판단하기 위한 기준은 그들 각각의 행동이고 이것을 데이터화 할 수 있어야 합니다. 자사 채널의 데이터는 미지의 상황에 전략적으로 대응하는데 필요한 강력한 팩트라는 사실을 잊어서는 안되겠습니다.* WISETRACKER는 모바일 광고 성과 측정부터 In-app 이용자/컨텐츠 분석, 푸시메시지 최적화까지 지원하는 모바일 통합 분석/타겟팅 솔루션입니다. 와이즈트래커 솔루션의 무료체험을 원하실 경우 여기를 클릭해주세요.* WISETRACKER가 제공하는 무료 데이터 분석 컨설팅를 원하신다면 여기를 클릭해주세요. #와이즈트래커 #소비자행동 #데이터분석 #인사이트  

기업문화 엿볼 때, 더팀스

로그인

/