스토리 홈

인터뷰

피드

뉴스

조회수 986

마침내 완전히 새로워진 이메일마케팅, 스티비가 선보입니다

2015년 12월에 시작한 베타 테스트를 마치고 드디어 오늘, 스티비 정식버전을 출시합니다.기획부터 대량 발송 후 성과 측정까지, 이메일마케팅의 모든 과정을 담았습니다.정식버전 출시를 기념하여 라이트 요금제를 11월 30일까지 무료로 제공합니다.마케팅 성과를 한 눈에 확인할 수 있는 대시보드마케팅 성과를 지난 주와 비교해 보고 얼마나 개선됐는지 바로 확인할 수 있습니다. 모바일과 데스크톱 중 어떤 디바이스에서 더 많은 반응이 일어났는지 쉽게 알 수 있습니다. 조만간 스티비 사용자 평균 데이터와의 비교 기능도 선보일 예정입니다.국내에서 가장 간편한 A/B 테스트이메일 제목, 발신자 이름, 발송 스케줄로 A/B 테스트를 할 수 있습니다. 간편한 비율 설정으로 빠르게 성과를 개선하세요.프레젠테이션을 만드는 것처럼 쉬운 콘텐츠 에디터베타 버전에 비해 콘텐츠 저장 방식을 개선했습니다. 많은 인기를 끌었던 지도 상자에는 한국 실정에 맞게 다음 지도 API를 적용했습니다. 대량 발송 기능의 필수 요소인 푸터 상자가 추가되었습니다.월 4회까지 무료로 발송할 수 있는 요금 체계스티비 조사* 결과, 국내에서는 마케팅 이메일을 월 평균 3.25회 발송하고 있습니다. 이에 따라, 구독자 5,000명 기준으로 월 4회까지 발송할 수 있는 스타터 요금제를 무료로 제공합니다. 이메일마케팅을 적극 활용해 성과를 극대화하려는 분들을 위해서는 월 8회 발송이 가능한 라이트 요금제와 무제한 발송이 가능한 스탠다드 요금제를 제공합니다. 정식버전 출시 기념으로 라이트 요금제를 11월 30일까지 무료로 사용할 수 있습니다.이 밖에도 쉽고 즐겁게 이메일마케팅을 실행할 수 있도록 저희 스티비 팀이 개발한 다양한 기능을 정식버전에 담았습니다.#슬로워크 #스티비 #마케팅 #마케팅툴 #서비스소개
조회수 1450

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

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

스타트업이 돈을 구하는 방법 (1)

스타트업은 말 그대로 아무것도 없는 상태이다. 제대로 된 제품도 없고, 사람도 없고, 그리고 돈도 없다. 스타트업 대표에게는 많은 임무가 있지만 그중에 하나가 돈을 구하는 것이다. 극단적으로 돈이 없어도 창업 멤버들이 허리띠를 졸라매고 제품을 만들어낼 수 있지만 그건 정말 쉽지 않은 일이다. 가끔 스타트업 모임에 가면 대표들의 여러 걱정 중에 많은 부분을 차지하는 것이 직원들 월급을 밀리지 않게 줄 돈을 구하는 것이다.   한국에서 스타트업이 돈을 구할 수 있는 방법은 크게 4가지가 있다. 매출, 투자, 정부지원금, 대출이다. 각각의 장단점이 있기 때문에 각 스타트업 대표는 그 상황과 전략에 맞게 돈을 구해서 팀원들이 걱정 없이 일 할 수 있는 환경을 만들어 주는 것이 중요하다.일단 스타트업이 돈을 구하는 가장 바람직한 방법은 스타트업이 추구하는 제품과 서비스를 통해서 매출을 얻어내는 것이다. 하지만 어떻게 보면 초기 스타트업에게 4가지 방법 중에서 가장 어려운 방법이다. 제품과 서비스를 통해서 매출을 얻어내고 손익 분기점을 돌파해서 외부의 도움 없이도 팀을 이끌어나가고 지속적인 성장을 위한 투자를 할 수 있는 재원을 얻어낸다면 이미 그 스타트업은 비즈니스 모델을 시장에서 검증했고 이미 성공했다고 볼 수 있다.하지만 위에서 설명한 경우는 정말 극히 드문 케이스이다. 대부분의 경우 제품과 서비스를 검증받고 손익 분기점에 도달하기 전까지 많은 시간과 노력이 필요하다. 그래서 일부 한국의 스타트업이 선택하는 방법 중에 하나가 외부 용역을 통해서 매출을 만들어내는 경우다. 많은 엔지니어 출신들이 창업한 기술 스타트업들이 자신들의 기술적 노하우와 노력을 대기업에 팔아서 매출을 만들어내고 직원들의 월급을 준다. 그리고 그 돈으로 자신들의 본업에 투자하는 계획을 세워놓는다. 하지만 현실은 그러하지 못하다. 주위에 많은 기술 스타트업들이 그렇게 대기업의 기술 용역 업체로 전락하고 자신들의 꿈과 비전은 사라져 버린 케이스를 많이 보았다. 그 이유는 현실에서는 대기업이 기술 용역 업체에게 꿈과 비전을 이룰 수 있을 만큼의 초과이익을 절대로 주지 않기 때문이다. 한국 대기업들은 기술 용역 업체에게   기술료는커녕 용역 비용조차 제대로 가치를 쳐서 주지 않는다. 한국의 IT 혹은 기술 용역 시장은 건설 막노동 시장과 다를 바 없는 구조로 되어 있기 때문에 여기서 돈을 벌어서 미래를 위한 투자 재원을 마련하겠다는 생각은 너무나 순진한 생각이다.나도 창업 초기에 이러한 순진한 생각을 했고 A사, B사와 같은 한국의 대기업으로부터 기술개발과제를 받아와서 매출을 만들어냈고 직원들의 월급을 주었다. 대부분의 직원들은 용역과제에 붙어 있고 일부 직원으로 미래를 위한 투자를 하겠다는 순진한 생각을 가지고 있었다. 하지만 현실 속에서는  초과이익은커녕 지친 몸과 정신으로 인해 꿈과 비전을 잊어버리고 창업에 대한 회의감만이 생겨났다. 꿈을 이루기 위해 창업을 한 것인지 나와 직원들의 월급을 위해 창업을 한 것인지에 대한 회의감이 생기고 내부의 직원들 또한 사기가 저하될  수밖에 없었다.그렇기 때문에 제품과 서비스를 통한 매출이 아닌 용역을 통한 매출을 통해서 스타트업이 돈을 구하는 것은 개인적으로 추천하지 않는다. 오히려 '사즉생 생즉사'의 자세로 꿈과 비전에 승부를 걸고 안된다면 깔끔하게 손 터는 것이 더 좋지 않을까 생각한다.다음번에는 '투자'를 통한 돈 구하기에 대해서 이야기해보고자 한다.#NEOFECT #스타트업 #스타트업창업 #창업자 #매출 #비즈니스모델 #BM #수익모델 #자금유치 #꿀팁 #인사이트
조회수 1641

나의 자랑, 우리 팀

오늘은 작은 스타트업의 대표로서 자랑하고 싶은 게 있습니다.투자를 받았다던가, 가입자수가 몇십만을 돌파했다거나 매출이나 수익이 증가했다는 소식보다 훨씬 더 자랑하고 싶은 일이네요. 저에게는요.....어제 gPause 에 오셨던 분들께 고백했지만 사실 최근 저에게 우울감, 무력감, 수치심, 자괴감이라는 4총사 친구가 찾아왔었습니다. 제주도에 갔던 것도 그 친구들을 떼어놓고 오려고 했던 것인데 잠시 사라진 줄 알았던 그 친구들이 어찌된 일인지 제주에서 올라 오자마자 몸으로 와서 몸도 너무 아팠었어요. 그렇게 며칠 몸도 마음도 너덜너덜, 매일 나를 위한 자애명상을 하며 '이것 또한 지나가리라...'를 되뇌었었죠. 과거의 경험으로 정말 언젠가는 지나간다는 것을 알고 있으니까요...하지만 오늘 정말 한방에 이 아이들을 떼어놓을 수 있는 방법이 있었다는 것을 알게 되었습니다.우리 마보팀은 지금은 총 4명으로 구성되어 있어요. 저와 음향 엔지니어이자 CSO인 권기헌님, 마보 일러스트레이터 강소영님, 그리고 마보 SNS 콘텐츠 담당인 Jihye Paik님으로 말이죠. 그 중에서도 권기헌님은 소영님이나 지혜님이 파트타임인것과 달리 거의 1년동안 저의 가장 가까운 곳에서 가장 민낯에 가까운 저를 보아왔었다고 해도 과언이 아닙니다. 명상 선생님이라고 하지만 까칠하고 화도 잘내고, 더러 의기소침해지고, 가끔은 비겁하게 두말도 하고 남탓하는 저를 말이죠.그런데 우리 기헌님은 모든 감정과 생각이 얼굴에 드러나는 저와 달리 제가 싫은 소리해도 늘 그대로, 좋아도 씨익 한번 웃고 넘기는 그런 차도남 스타일입니다. 아니, 그런줄 알았네요. 적어도 오늘 까지는요.오늘 기헌님과 둘이서 회의를 하는데 의견차이가 있었고, 슬럼프의 여파로 예민했던 저는 극도의 까칠모드였습니다. 그런데 이 친구가 처음으로 진심을 다해 저에게 해준 이 한마디가 저를 무장해제 시키네요......"대표님, 전 그래도 대표님 늘 믿어왔어요. 우리 마보 꼭 잘 될 꺼에요.힘내세요."이렇게 얘기하며 얼굴만큼 눈가까지 빨개지는 기헌님을 보면서 갑자기 제 마음이 스르르..... 순간 제 눈가도 촉촉해졌습니다. 이런 말을 한다는 것이 이 친구에게는 정말 큰 용기라는 것을 알기에 정말 너무너무 고마웠거든요......그 순간 몇억의 투자소식보다 더 저를 힘나게 했던 건 바로 나를 믿어주는, 나의 모습을 가장 가까이서 지켜본 그 팀원의 말 한마디였습니다. 나의 밑바닥까지 본 팀원이 나를 믿고 있다는, 그리고 내가 힘들어 할때 그 짐을 기꺼이 나누려 하고 있다는 그 마음이 전해져서 전 그 순간 최고로 행복한 대표였다고 자부합니다.가장 힘든 순간이라도 나를 믿어주는 한 사람이 있다면 그 깊은 늪에서 빠져 나올 수 있습니다.고맙습니다. 기헌님, 그리고 우리 마보팀! 그대들이 있어서 정말 큰 힘이 납니다. 아니, 이 말도 틀린 말입니다. 그대들이 없었다면 마보도 없었을 테고 그럼 대표인 저도 없었습니다. 고맙습니다. 감사합니다!덧글: 전 조직심리학자이자 인사/조직전문가로서 가끔 스타트업 조직문화나 리더십에 대한 강의를 하기도 합니다. 그런데 좋은 문화나 리더십에 대해 강의를 할 때마다 우리 마보팀이 이 강의를 들으며 콧방귀를 끼진 않을까 걱정했었는데요, 그 걱정 이제 살포시 내려놓고 마구 자랑하렵니다. 우리 마보팀에는 적어도 대표를 믿어주는 팀원들이 있습니다. 그 대표가 아무리 성격이 지랄맞더라도요. ㅎㅎㅎㅎ 사진은 오늘 우리 팀의 페이스북 메신저 영상통화 회의 캡처~^^ 페북도 어려지려고 애쓰네요~^^#마보 #팀원 #팀원소개 #팀자랑 #회사자랑 #기업문화 #조직문화 #사내문화
조회수 2313

아마존 FBA

안녕하세요, 대한민국 사업자들의 해외 전자상거래 (아마존) 진출을 도와주는 컨설팅 회사이자 업무대행사 컨택틱의 이이삭 대표입니다. 브런치 작가로 선정이 되어서 진심으로 기쁘고 설레네요. 앞으로 아마존 판매에 관심이 있는 많은 대한민국 사업자들에게 도움이 되는 컨텐츠로 찾아뵙겠습니다.첫 번째 포스트 어떤 글을 작성할까 고민을 많이 해봤습니다. 고민 끝에, 아마존 판매를 하는 분들 중에 굉장히 관심 가질 만한 주제로 일단 시작해보자하는 마음에, '운송비를 절감할 수 있는 궁극의 방법 - 해상 운송을 통한 FBA 입고'에 대한 주제로 시작해볼까 합니다.LTL/FTL이란? FBA를 하지 않고서는 아마존 판매를 본격적으로 했다고 할 수 없습니다. 아마존 판매를 처음 시작하시는 분들이나, 아직 시장 반응을 살피는 단계의 신규 상품은 항공 운송을 통해 FBA 입고를 하는 게 통상적입니다. 하지만 제품의 부피가 아무리 작다고 하더라도, 판매가 왕성해지다보면 더 이상 항공 운송으로 FBA 재고를 입고하는 것이 불가능하거나 메리트가 없어질 수 있습니다. 그럴 때 고민하게 되는 게 바로 해상 운송을 통한 FBA 대량 입고, 다른 말로 LTL (Less than truckload) 또는 FTL (Full truckload) FBA 입고 방식입니다. 이번 포스트를 통해 알려드리고자 하는 것은 LTL/FTL 화물로 아마존 FBA 창고에 입고하기 위해 알아야 할 모든 사항들과 구체적인 절차들에 대한 안내입니다.화물 규격 파악하기 가장 선행되어야 하는 것은 '내 화물의 규격을 파악하는 것'입니다. LTL/FTL 화물은 무조건 상품을 카톤박스(아웃박스라고도 함)에 담아서 팔레트에 싣고 발송해야 합니다. 따라서 이 팔레트를 준비하는 작업이 특히 무역에 대해서 잘 모르거나 수출을 처음하시는 분들에게는 굉장히 생소하고 어려울 수 밖에 없습니다. 내가 판매하고자 하는 상품은 한 카톤박스에 몇 개의 상품이 들어가는지부터 알아야합니다. 예를 들어 수분 크림을 판매하고 있다면, 수분 크림 10개가 하나의 카톤박스에 담기는지, 아니면 20개가 하나의 카톤박스에 담기는지 알아야 합니다. 그 다음으로는 해당 카톤박스의 용적 (가로세로높이)를 재야하고 무게를 재야합니다. 나중에 팔레트에 카톤박스를 실을 때 정확히 몇개의 카톤박스를 실을 것인지, 그리고 팔레트의 총 무게가 얼마나 되는지 알아야 하기 때문입니다.아마존에서 요구하는 팔레트 규격아마존US 기준으로, 아마존이 요구하는 팔레트는 40*48인치 크기의 GMA Standard 중에서 Grade B 등급 이상의 나무 팔레트입니다. 인치 수치를 mm로 변경하게 되면 1000*1200mm가 됩니다. 따라서 먼저 내가 실을 카톤박스 크기를 정확하게 알아야, 몇 열 몇 행 그리고 몇 단의 카톤박스를 쌓을 수 있는지 미리 계산할 수 있게 됩니다. 그 외에도 팔레트 최대 무게가 1500lb 즉 680kg이 초과되어서는 안되는 것도 감안해야하며, 최대 높이도 72인치, 즉 183cm를 초과되어선 안되는 것도 감안해야합니다. 앞서 파악한 나의 화물에 대하여 이러한 아마존에서 요구하는 팔레트 규격을 맞춰가면서 화물을 준비해야하기 때문에 결코 처음 준비하시는 분들은 쉽지 않을 것입니다.작업 공간 마련  + 화물 준비하기다음으로 준비해야할 것은 바로 작업 공간의 마련입니다. (1)아마존에서 요구하는 팔레트를 준비했으며 (2) 상품단위로 라벨링 작업을 마쳤고 (3) 카톤박스에 다시 차곡차곡 담은 뒤에 (4) 카톤박스마다 Box Label을 부착시키고 (5) 카톤박스들을 팔레트에 실은 후 (6) 팔레트와 화물이 일체화되도록 스트레치 래핑 작업을 하여 (7) 스트레치 래핑 뒤에 팔레트 라벨까지 붙이셔야하기 때문에 작업 공간이 필수적입니다. 가장 이상적인 것은 직접 창고를 보유하고 계신 것이지만, 현실적으로 그게 어려우시다면 3PL 물류대행업체를 이용하실 수 밖에 없습니다.수입자 (IOR - Importer of Record) 역할을 대신해줄 사람 마련 (포워딩사 또는 자체 EIN 넘버 발행) 다음으로 준비해야할 것은 현지 내의 수입자 역할을 대신해줄 사람을 준비하는 것입니다. 어쨌거나 화물이 한국을 떠나서 미국으로 가는 것이기 때문에 관세 지불 대상을 떠나서 (DDP 무역조건으로 보내면 어차피 발송인이 모든 관부가세를 부담하는 조건이기 때문에) 무역 서류에는 정식 수입자 즉 IOR Importer of Record가 필수로 기재되어야 합니다. 특히 섭취하는 제품이나 피부에 바르는 제품이나 화학 등 위험물에 속하는 화물일수록 인증된 수입자가 아니면 통관에서부터 문제가 발생할 확률이 매우 높습니다. 보통 화물을 수취하는 사람이 수입자를 겸하는 게 통상적이지만, 지금 보내고자 하는 화물은 결국 수취인이 아마존 창고가 되기 때문에 아마존을 수입자로 정하는 꼴이 되어버립니다. 당연한 얘기지만, 아마존은 내 화물에 대해서 수입자 역할을 해줄 이유가 전혀 없습니다 (그리고 어차피 해상 운송으로 보내는 화물의 무역 서류 중에는 수입자의 EIN 넘버를 필수적으로 기재해야하는데, 아마존이 아마존의 EIN 넘버를 가르쳐주지도 않습니다).그렇다면 해결책은 세 가지가 있습니다: (1) 애초에 사용하는 포워딩사가 본사를 미국에 두는 곳이어서 수입자 역할을 해줄 수 있는 포워딩사를 통해 화물을 운반하는 방법: FBA4YOU라는 FBA 전문 포워딩 업체가 있는데, LAKLARA라는 미국 회사가 모회사입니다. FBA4YOU는 모회사의 EIN넘버로 수입을 한 이력이 상당히 많이 누적되어 있기 때문에 수입을 안정적으로 할 수 있습니다. 이 회사에 포워딩을 맡기는 것이 수입자 문제도 해결될 뿐만 아니라, 굉장히 저렴한 해상 운임 견적을 내주기 때문에 적극적으로 추천하는 입장입니다. (2) 포워딩사의 현지 물류 파트너 업체가 수입자 역할을 대신해주는 것: 주로 포워딩사의 현지 물류 파트너가 수입자 역할을 대신해주기도 하지만, 어떤 포워딩사를 사용하는지에 따라 수입자 역할을 안해줄 수도 있습니다. (3) 대한민국 사업자로 직접 미국 세관에 세금납부번호(EIN)을 발행 받으셔서 화물의 수입자도 '나'로 정하는 것: 하지만 이 방법은 수입 실적이 없는 외국 회사(한국 회사)의 EIN 넘버로 수입자 신고를 하게 되는 것이니, 어떤 화물을 보내는 것인지에 따라 의심받을 수도 있고 세관에서 통관을 눈여겨 볼 수 있는 위험이 있기 때문에 이 방법은 추천하지 않습니다. 결국 제일 간편한 방법은 (1) 애초에 수입자 문제도 해결해줄 수 있는 포워딩사를 이용해서 화물을 운반하는 것입니다.통관에 필요할 수도 있는 인증 및 인허가 자료 마련식품, topical 제품 (신체에 직접 바르는 제품), 화학 제품, 화장품, 그리고 특정 몇몇 종류의 제품은 미리 인증 및 인허가 자료들(문서들)을 준비해야 합니다. 식품의 경우 health certificate, 화장품의 경우 MSDS, topical 제품의 경우 FDA 서류, 전기 제품은 UL 인증이나 FCC 인증이나 CE 인증 등이 필요할 수도 있습니다. 미국의 경우 이런 인증 부분에 대해서 많이 느슨한 편이지만, 유럽 국가들은 다소 까다로운 걸로 알고 있습니다. 미국으로 보내는 식품의 경우 이미 FDA 인증이 된 제품 (FDA 공장 발행 번호가 있는)의 경우, FDA 공장 발행 번호만 제출해도 통관 되는 것으로 알고 있습니다. 내 제품에 대해서 미국 수입 시 필요할만한 서류가 어떤 것들이 있을지 모르신다면 해외인증표준콜센터 (국번없이 1381)로 전화하셔서 문의하시면 자세히 알려줍니다. 전화하셔서 "내 제품이 XX인데, 미국으로 수출할 때 통관에 필수적으로 필요한 서류가 있나요? 있다면 어떤 것들이 있나요?" 라고 물어보시면 됩니다.LTL/FTL을 통해 아마존 shipment 생성하는 법 입고하고자 하는 제품을 선택합니다하고 드랍다운 선택 메뉴에서 'Send/Replenish Inventory'를 선택합니다.팔레트에 담을 대형 화물이기 때문에 저는 개인적으로 항상 case-packed (카톤박스 단위로 포장된) 형태로 선택합니다.그 다음 화면에서는 카톤박스당 몇개의 제품이 들어가는지 설정하고, 총 몇개의 카톤박스가 있는지 기재합니다. 이 예시에서는 상품A의 경우 한 카톤박스에 20개씩 들어가 있고, 총 40카톤박스를 보내도록 설정했으며 (앞서 화물을 준비하는 단계에서 이미 정한대로 설정), 상품B의 경우 한 카톤박스에 30개씩 들어가 있고, 총 40카톤박스를 보내도록 설정한 것입니다 (화물의 총 unit 개수는 2000개)그 다음화면에서는 상품 단위의 라벨링을 하기 위해 상품 라벨을 출력하는 페이지입니다. manufacturer barcode로 아마존에 입고하게 되면 이미 제품에 찍혀있는 유통 고유 부호 13자리 GTIN (EAN이라고도 함) 그대로 입고하셔도 되지만, 여러가지 이유로 저는 여러분들이 amazon barcode로 라벨링을 재작업해서 보내는 것을 추천드립니다 (이것에 대해서는 다른 포스트에서 설명드리겠습니다).그리고 FBA shipment 생성의 마지막 페이지로 옵니다. 여기에서 LTL 화물로 설정하시고 다음으로 넘어가시면 됩니다.그러면 그 밑에 상품 단위로 해당 상품이 몇 개 단위로 카톤박스에 적재되어있는지 설정하게끔 하는 화면이 나오는데요, SKU를 하나 이상 선택하여 입고하는거라면 한 박스당 하나의 상품만 들어있는지, 아니면 여러개 종류의 SKU가 들어있는지도 구분지어주어야합니다. 본 예시에서는 한 상품당 한 카톤박스에 들어있는 것으로 설정했습니다 (이게 통상적입니다).그러면 다음 화면에서 구체적으로 카톤박스의 규격을 알려주어야합니다. A라는 상품은 한 카톤박스에 몇 개 들어있으며, 해당 카톤박스들은 무게가 얼마나 나오는지, 그리고 용적이 어떻게 되는지 등을 기재해야합니다. 상품 B도 마찬가지로 기재해야합니다.그러면 마지막으로, 제가 입력한 정보대로 각 카톤박스마다 부착해야할 박스 라벨을 출력할 수 있게 됩니다. 해당 박스 라벨들을 인쇄하여 앞서 준비한 화물에 한 박스에 하나씩 (고유라벨들이니 복붙 하시면 안됩니다) 붙여주시면 됩니다.포워딩사 연락하기 이제 해상 운송을 통한 FBA 입고 과정의 반 정도 오셨습니다. 정말 많이 수고하셨지만 앞으로 가야할 길이 반이나 남았으니 조금만 더 힘을 내보도록 하겠습니다. 다음으로 해야할 일은 '포워딩사'를 찾는 것입니다. 포워딩사들은 대부분 일반 무역거래에 익숙해져 있습니다. 아마존 창고에 입고할 목적으로 보내는 화물에 대해서는 십중팔구 잘 모르기 마련입니다. 따라서 앞서 말씀드렸듯이 수입자 역할도 대신 해줄 수 있고, 해상 운송을 통한 FBA 입고에도 능숙한 포워딩사를 이용하는 것이 가장 편리하고 문제의 소지가 없습니다. 하지만 그런 포워딩사를 찾지 못했다고 해서 마냥 불가능한 것은 아닙니다. 아마존 FBA 입고에 대해서 잘 모르는 포워딩사라고 하더라도, 미국에서 FBA 전문 3PL 회사를 이용하셔서, 포워딩사에게는 그저 이 3PL 회사 앞으로만 화물을 운송해달라고만 얘기하셔도 됩니다. 어차피 그 이후의 FBA 입고 작업은 3PL 물류 회사에서 처리할 일이니까요.포워딩사로부터 견적서 요청하기포워딩사로부터 견적서를 요청할 땐 미리 준비해야할 자료들이 몇 가지 있습니다. 어차피 견적을 요청해도 아래의 자료들을 추가적으로 요청하는 이메일을 회신 받을테니 애초에 진작 준비하고 나서 견적을 요청하시는게 상호간에 시간을 낭비하는 일이 없을겁니다.- ITEM NAME- HS CODE- UNIT VALUE- TOTAL QUANTITY OF UNITS- GROSS WEIGHT- TOTAL CBM (cubic meters)- SHIP FROM ADDRESS- SHIP TO ADDRESS포워딩사와 일정 잡기 부산항 기준으로 일주일에 배가 1~2번 출항하는 것으로 알고 있습니다. 예를 들어 2018년 2월 21일 수요일에 출항하는 배에 내 화물을 선적하려면 대부분의 포워딩사들은 늦어도 2018년 2월 16일 금요일까지 내 화물을 픽업해가거나 본인들의 CFS 창고로 입고하도록 지시합니다. 그렇다면 내 입장에서는 화물의 모든 준비가 못해도 2018년 2월 15일 목요일까지는 준비가 완료 되어 있어야하기 때문에 일정을 잘 조절 해야합니다. 포워딩사에서 화물을 픽업하기 위해 용달이나 트럭을 보냈는데 팔레트를 용달에 실을 수 있는 지게차가 없다면 그것도 미리 준비해야합니다. 저는 개인적으로 카톤박스 작업까지만 마치고 포워딩사에게 부탁해서 팔레트 제작을 의뢰합니다. 그러면 포워딩사에서 보낸 용달 기사님께서 카톤박스채로 화물을 가지고 가서 CFS 창고에서 팔레트 작업과 스트레치 래핑 작업, 그리고 팔레트 라벨링 작업까지 대신해줍니다.현지에 화물 도착현지에 화물이 도착하게 되면 최종 아마존 FBA 창고까지 배달되는데 마지막으로 결정해야할 게 있습니다. 그것은 바로 포워딩사에서 직통으로 아마존 FBA 창고에 입고시켜줄 것인지 (delivery appointment) 아니면 현지의 물류창고에 잠시 화물을 보관했다가 Amazon Partnered Carrier로 내륙 운송을 통한 FBA 입고를 할 것인지입니다. 어느 방법을 사용해도 무관하지만, 아마존 FBA 창고에 직통으로 입고시켜줄 수 있는 포워딩사는 드뭅니다. 그리고 심지어 그렇게 해준다고 하더라도 예를 들어 배정된 FBA 창고가 버지니아에 있는데 LA항에서부터 버지니아까지 내륙 운송을 포워딩사에서 직접 해주어야한다면 내륙 운송비가 엄청나게 많이 발생합니다. 하지만 Amazon Partnered Carrier는 미국 내에서도 가장 저렴한 내륙 운송비를 자랑합니다. 따라서 제가 추천하는 것은 캘리포이나에 가까운 창고로 배정이 되었다면 그냥 포워딩사에 부탁해서 직통으로 입고해달라고 요청하는 것이 좋으며, 항구에서부터 배정된 FBA 창고 주소가 멀어지면 멀어질수록 Amazon Partnered Carrier를 통해 내륙 운송으로 입고하는 방법을 추천드립니다.아마존 FBA 입고 완료이렇게 해서 드디어 해상 운송을 통한 LTL/FTL 아마존 FBA 입고를 완료하게 됩니다. 해상 운송을 통한 아마존 FBA 입고가 쉽지만은 않습니다. 컨택틱은 아마존 판매에 어려움을 겪고 있는 분들 또는 시작 단계에 있는 분들을 도와드리오니, 도움이 필요하신 분들은 망설이지 말고 연락주세요 ^^
조회수 1079

레진 기술 블로그 - AWS Auto Scalinging Group 을 이용한 배포

레진코믹스의 서버 시스템은 잘 알려진대로 Google AppEngine에서 서비스되고 있지만, 이런저런 이유로 인해 최근에는 일부 컴포넌트가 Amazon Web Service에서 서비스되고 있습니다. AWS 에 새로운 시스템을 셋업하면서, 기존에 사용하던 PaaS인 GAE에서는 전혀 고민할 필요 없었던, 배포시스템에 대한 고민이 필요했습니다. 좋은 배포전략과 시스템은 안정적으로 서비스를 개발하고 운영하는데 있어서 필수적이죠.초기에는 Beanstalk을 이용한 운영에서, Fabric 을 이용한 배포 등의 시행착오 과정을 거쳤으나, 현재는 (스케일링을 위해 어차피 사용할 수밖에 없는) Auto Scaling Group을 이용해서 Blue-green deployment로 운영 중입니다. ASG는 여러 특징 덕분에 배포에도 유용하게 사용할 수 있습니다.ASG를 이용한 가장 간단한 배포는, Instance termination policy 를 응용할 수 있습니다. 기본적으로 ASG가 어떤 인스턴스를 종료할지는 AWS Documentation 에 정리되어 있으며, 추가적으로 다음과 같은 방식을 선택할 수 있습니다.OldestInstanceNewestInstanceOldestLaunchConfigurationClosestToNextInstanceHour여기서 주목할 건 OldestInstance 입니다. ASG가 항상 최신 버전의 어플리케이션으로 스케일아웃되게 구성되어 있다면, 단순히 인스턴스의 수를 두배로 늘린 뒤 Termination policy 를 OldestInstance 로 바꾸고 원래대로 돌리면 구버전 인스턴스들부터 종료되면서 배포가 끝납니다. 그러나 이 경우, 배포 직후 모니터링 과정에서 문제가 발생할 경우 기존의 인스턴스들이 이미 종료된 상태이기 때문에 롤백을 위해서는 (인스턴스를 다시 생성하면서) 배포를 다시 한번 해야 하는 반큼 빠른 롤백이 어렵습니다.Auto scaling lifecycle 을 이용하면, 이를 해결하기 위한 다른 방법도 있습니다. Lifecycle 은 다음과 같은 상태 변화를 가집니다.기본적으로,ASG의 인스턴스는 InService 상태로 진입하면서 (설정이 되어 있다면) ELB에 추가됩니다.ASG의 인스턴스는 InService 상태에서 빠져나오면서 (설정이 되어 있다면) ELB에서 제거됩니다.이를 이용하면, 다음과 같은 시나리오로 배포를 할 수 있습니다.똑같은 ASG 두 개를 구성(Group B / Group G)하고, 그 중 하나의 그룹으로만 서비스를 운영합니다.Group B가 라이브 중이면 Group G의 인스턴스는 0개입니다.새로운 버전을 배포한다면, Group G의 인스턴스 숫자를 Group B와 동일하게 맞춰줍니다.Group G가 InService로 들어가고 ELB healthy 상태가 되면, Group B의 인스턴스를 전부 Standby로 전환합니다.롤백이 필요하면 Standby 상태인 Group B를 InService 로 전환하고 Group G의 인스턴스를 종료하거나 Standby로 전환합니다.문제가 없다면 Standby 상태인 Group B의 인스턴스를 종료합니다.이제 훨씬 빠르고 안전하게 배포 및 롤백이 가능합니다. 물론 실제로는 생각보다 손이 많이 가는 관계로(특히 PaaS인 GAE에 비하면), 이를 한번에 해주는 스크립트를 작성해서 사용중입니다. 대략 간략하게는 다음과 같습니다. 실제 사용중인 스크립트에는 dry run 등의 잡다한 기능이 많이 들어가 있어서 걷어낸 pseudo code 입니다. 스크립트는 사내 PyPI 저장소를 통해 공유해서 사용 중입니다.def deploy(prefix, image_name, image_version): '''Deploy specified Docker image name and version into Auto Scaling Group''' asg_names = get_asg_names_from_tag(prefix, 'docker:image:name', image_name) groups = get_auto_scaling_groups(asg_names) # Find deployment target set future_set = set(map(lambda g: g['AutoScalingGroupName'].split('-')[-1], filter(lambda g: not g['DesiredCapacity'], groups))) if len(future_set) != 1: raise ValueError('Cannot specify target auto scaling group') future_set = next(iter(future_set)) if future_set == 'green': current_set = 'blue' elif future_set == 'blue': current_set = 'green' else: raise ValueError('Set name shoud be green or blue') # Deploy to future group future_groups = filter(lambda g: g['AutoScalingGroupName'].endswith(future_set), groups) for group in future_groups: asg_client.create_or_update_tags(Tags=[ { 'ResourceId': group['AutoScalingGroupName'], 'ResourceType': 'auto-scaling-group', 'PropagateAtLaunch': True, 'Key': 'docker:image:version', 'Value': image_version, } ]) # Set capacity, scaling policy, scheduled actions same as current group set_desired_capacity_from(current_set, group) move_scheduled_actions_from(current_set, group) move_scaling_policies(current_set, group) # Await ELB healthy of instances in group await_elb_healthy(future_groups) # Entering standby for current group for group in filter(lambda g: g['AutoScalingGroupName'].endswith(current_set), groups): asg_client.enter_standby( AutoScalingGroupName=group['AutoScalingGroupName'], InstanceIds=list(map(lambda i: i['InstanceId'], group['Instances'])), ShouldDecrementDesiredCapacity=True ) def rollback(prefix, image_name, image_version): '''Rollback standby Auto Scaling Group to service''' asg_names = get_asg_names_from_tag(prefix, 'docker:image:name', image_name) groups = get_auto_scaling_groups(asg_names) def filter_group_by_instance_state(groups, state): return filter( lambda g: len(filter(lambda i: i['LifecycleState'] == state, g['Instances'])) == g['DesiredCapacity'] and g['DesiredCapacity'], groups ) standby_groups = filter_group_by_instance_state(groups, 'Standby') inservice_groups = filter_group_by_instance_state(groups, 'InService') # Entering in-service for standby group for group in standby_groups: asg_client.exit_standby( AutoScalingGroupName=group['AutoScalingGroupName'], InstanceIds=list(map(lambda i: i['InstanceId'], group['Instances'])) ) # Await ELB healthy of instances in standby group await_elb_healthy(standby_groups) # Terminate instances to rollback for group in inservice_groups: asg_client.set_desired_capacity(AutoScalingGroupName=group['AutoScalingGroupName'], DesiredCapacity=0) current_set = group['AutoScalingGroupName'].split('-')[-1] move_scheduled_actions_from(current_set, group) move_scaling_policies(current_set, group) 몇 가지 더…Standby 로 돌리는 것 이외에 Detached 상태로 바꾸는 것도 방법입니다만, 인스턴스가 ASG에서 제거될 경우, 자신이 소속된 ASG를 알려주는 값인 aws:autoscaling:groupName 태그가 제거되므로 인스턴스나 ASG가 많아질 경우 번거롭습니다.cloud-init 를 어느 정도 최적화해두고 ELB healthcheck 를 좀 더 민감하게 설정하면, ELB 에 투입될 때까지 걸리는 시간을 상당히 줄일 수 있긴 하므로, 단일 ASG로 배포를 하더라도 롤백에 걸리는 시간을 줄일 수 있습니다. 저희는 scaleout 시작부터 ELB에서 healthy 로 찍힐 때까지 70초 가량 걸리는데, 그럼에도 불구하고 아래의 이유 때문에 현재의 방식으로 운영중입니다.같은 방식으로 단일 ASG로 배포를 할 수도 있지만, 배포중에 혹은 롤백 중에 scaleout이 돌면서 구버전 혹은 롤백 버전의 인스턴스가 투입되어버리면 매우 귀찮아집니다. 이를 방지하기 위해서라도 (Blue-green 방식의) ASG 두 개를 운영하는게 안전합니다.같은 이유로, 배포 대상의 버전을 S3나 github 등에 기록하는 대신 ASG의 태그에 버전을 써 두고 cloud-init 의 user-data에서 그 버전으로 어플리케이션을 띄우게 구성해 두었습니다. 이 경우 인스턴스의 태그만 확인해도 현재 어떤 버전이 서비스되고 있는지 확인할 수 있다는 장점도 있습니다.다만 ASG의 태그에 Tag on instance 를 체크해 두더라도, cloud-init 안에서 이를 조회하는 경우는 주의해야 합니다. ASG의 태그가 인스턴스로 복사되는 시점은 명확하지 않습니다. 스크립트 실행 중에 인스턴스에는 ASG의 태그가 있을 수도, 없을 수도 있습니다.굳이 인스턴스의 Lifecycle 을 Standby / InService 로 전환하지 않고도 ELB 를 두 개 운영하고 route 53 에서의 CNAME/ALIAS swap 도 방법이지만, DNS TTL은 아무리 짧아도 60초는 걸리고, JVM처럼 골치아픈 동작 사례도 있는만큼 선택하지 않았습니다.물론 이 방법이 최선은 절대 아니며(심지어 배포할때마다 돈이 들어갑니다!), 현재는 자원의 활용 등 다른 측면에서의 고민 때문에 새로운 구성을 고민하고 있습니다. 이건 언젠가 나중에 다시 공유하겠습니다. :)
조회수 596

직접 결정해야 하는 이유

당신은 진정 독립했는가?최근 고등래퍼2에 출연한 실력자 중에는 특히 고등학교를 자퇴한 친구들이 많았다. 자신에게 의미있는 길을 용기있게 선택하고, 스스로 사랑하는 일에 에너지를 집중하는 모습이 꽤 인상적이었다.주변에 나이가 마흔이어도 스스로 앞가림을 결정하지 못하는 사람이 있는가 하면, 갓 중학교를 졸업했어도 자신의 인생을 스스로 결정하는 사람이 있다.어른이 된다는 것나이가 들었다고 어른이 되는 건 아니다. 학력이 높은 것과도 상관없다. 어른이 된다는 것은 자기 인생의 주체가 된다는 것이고, 스스로 사고하고 행동하고 책임을 진다는 의미다. 어려서부터 다녀야 할 학원과 사귀어야 할 친구들까지 부모에 의해 결정되어버리는 요즘 아이들,.. 본인이 좋아하는 것과 무관하게 인생의 진로까지 프로그래밍된 아이들은 좋은 대학을 다니고 유창하게 외국어를 구사할 수 있을지는 모르지만, 정상적인 어른이 되기는 쉽지 않다. 스스로 결정하는 감각을 잃어버리기 때문이다.결정은 감각이다공부를 하는 이유우리가 공부를 하는 이유는 하나의 독립된 개체로서 스스로 판단할 수 있는 능력을 키우기 위해서다. 나를 둘러싼 사회를 이해하고, 다른 생각과 언어를 가진 사람과 소통하고, 호기심을 이끌어내고, 자신이 가진 역량을 찾아내고, 복잡한 상황을 이해하고, 맞닥뜨린 문제를 해결하고, 남들과 힘을 모으는 방법을 터득하고, 타인의 도움을 구하는 요령을 깨우치기 위함이다. 그리고 세상이 내 뜻대로 되지 않는 다는 것을 깨우치는 과정이다.한 인간이 사회 구성원으로 살아가기 위해서는 사회에서 내 몫을 해야 한다. 타인의 도움 없이는 그 누구도 살아갈 수 없기 때문이다. 나도 누군가 에게는 도움을 주는 타인이 되어야 한다.결정은 훈련해야 하는 기술부모들이 범하는 큰 잘못 중의 하나는 자식들을 대신하여 결정하는 것이다. 부모 입장에서는 잘못된 선택을 미리 제거함으로써 아이들이 그릇된 결정을 못하도록 하려는 부모의 의도가 있다고 하더라도, 하나부터 열까지 일일이 관여하고 개입하는 것은 아이들의 인생에 치명적일 수 있다. 아이들이 스스로 생각하는 능력을 잃어버리게 되기 때문이다.알에서 깨어나온 새가 깃털이 자라 날개를 펼수 있게되면 둥지밖으로 두려움을 이겨내고 뛰어내려 스스로 날개짓을 해야한다. 그래야 스스로 먹이를 구하고 독립된 개체로서 자연의 일부가 되는 것이다. 그렇게 세대가 흐르는 것이고, 인간도 마찬가지이다.큰 조직의 비애 : 결정할 수 없다는 것조직이 클 수록 의사결정 구조가 복잡하고, 거쳐야 할 단계가 많다. 실무자들의 일상을 단순하게 표현한다면, 준비하고, 보고하고, 결정을 가다리는 과정의 연속이다. 자신의 생각이 최종 의사 결정과 일치할 수 있을 확률이 매우 낮다. 만약에 같다고 하더라도, 실행 과정에서 변화될 가능성 역시 매우 높다. 큰 조직의 직원들의 숙명이다. 누군가의 결정에 익숙해져가는 것이다.상대적으로 좋은 대기업의 근무 환경과 높은 연봉의 이면에는 자신의 생각이나 감각을 세상에 테스트 해 볼 기회를 충분히 갖지 못하다는 단점이 있다. 특히나 상사와의 의사 결정 코드가 매우 상반될 경우에는 자신이 무엇을 위해 여기 있는지에 대한 자괴감이 들 수 밖에 없다. 대부분 능력자들이 회사를 나오는 이유이기도 하다.남아 있는 누군가가 수년, 십수년을 스스로 결정해보지 못한 채 부장이 되고 임원이 되더라도, 이제는 스스로 결정해야 하는 두려움이 남게 된다. 우리 주변에 결정 장애 부서장들의 단면들이다. 훈련되어 있지 않아서다.결정해보고, 실패해봐야 는다자리가 사람을 만든다는 말처럼, 결정 하는 자리에 가면 그 사람의 진정한 내공이 드러날 수 있다. 나이가 많고 경험이 많다고 좋은 결정을 하는 것은 아니다. 그것은 총체적인 감각이며, 우리가 성장하면서 키워야 하는 역량이다.결정이 누구에게나 힘든 이유는 번복하기 어렵다는 점과 기회비용이 발생한다는 것이다. 하지만 정말 대단한 능력은 올바른 결정을 하는 것이 아니라, 자신이 선택한 결정이 올바른 결과가 되도록 만들어가는 믿음과 일관성이다.철학없는 결정은 허무할 뿐이유있는 결정사실 누구나 결정은 할 수 있다. 책임만 스스로 감내한다면 누구든 결정을 내릴 수 있다. 다만, 철학이 없는 결정은 허무할 뿐이며, 일관성 없는 결정은 즉흥적으로 보일 뿐이다. 스스로의 주관과 이유가 뒷받침 되어야 나의 결정으로 인해 영향을 받을 그 누군가에게 당당할 수 있다.지금 당신 인생은스스로 결정한 결과인가?그런 의미에서진정으로 자립했다는 것은 스스로의 철학적 기준이 명확히 서 있다는 의미이며, 지금 자신의 인생이 당당하다는 뜻이다.자립하라!
조회수 2043

인턴에서 지사장까지. 잔디 대만 총괄책임자 KM을 만나다.

맛있는 인터뷰 : 대만지사장 KM 편집자 주잔디와 함께 하는 멤버는 총 35명. 국적, 학력, 경험이 모두 다른 이들이 어떤 스토리를 갖고 잔디에 합류했는지, 무슨 일을 하고 있는지 궁금해하는 분들이 많습니다. 잔디 블로그에서는 이 궁금증을 해결해 드리고자 ‘맛있는 인터뷰’를 통해 ‘잔디’ 멤버들의 이야기를 다루고 있습니다. 이번 맛있는 인터뷰는 스페셜 에디션으로 대만의 멤버 KM(이하 : K)를 인터뷰해보았다. 인턴으로 시작해서 어떻게 대만 지사장이 되었는지, 그에 대해 조금 더 자세히 알아보자.KM을 모르는 한국 사용자를 위해 소개 부탁한다.K: 잔디 대만 지사를 총괄하고 있는 KM (Kaimin)이라고 한다. 대만에서 세일즈, 마케팅, CX(Customer Experience), 재무 업무를 모두 담당하고 있다. 엄청 바쁠 것 같다. 대만 비즈니스는 어떠한가? 바쁜 거 보니 잘 되는 것 같은데.K: 대만에서만 연 매출이 3배 증가했고 그래서 그런지 바빠도 기쁘게 일하고 있다. 3배라니! 대단하다. 어떻게 회사를 키워 나갔는지 궁금하다!K: 오늘 모든 걸 다 말해주겠다!! 시작하기 전에, 인터뷰 제목이 맛있는 인터뷰이다. 인터뷰이가 가장 좋아하는 맛집에서 인터뷰를 진행하지만, 물리적인 이슈가 있기에. KM이 소개하고 싶은 음식을 가지고 왔는데, 어떤 걸 가지고 왔는지? (featuring 대만 버블티)K: 가장 보편적으로 먹는 대만식 아침이다. 빵과, 부리또 같이 생긴 랩과 두유다. 랩 안에는 계란과 돼지고기, 밥이 들어있다. 나는 자주 먹어서 그런지 먹고 나면 마음이 편안해지고 생각보다 배가 부르다. 꼭 먹어보길 추천한다.  인턴으로 시작했다가 이제 대만의 비즈니스를 총괄하고 있는데. 엄청난 변화다. 어떤 일이 있었나?K: 처음에 비즈니스&재무 인턴으로 잔디와 함께하고 몇 개월 후 정식 멤버가 되었다. 그 당시에는 비즈니스 멤버들과, UI/UX 매니저, 그리고 BX 매니저 이렇게 총 8명의 멤버와 함께 일을 했었다. 첫 1년간은 멤버가 한 명씩 커리어를 바꿀 때마다 비즈니스 업무를 조금씩 더 담당하게 되었다. 그 이후 결국에는 약 1년간 혼자 일하게 되었다. 당시 책임감도 막중했을 것 같은데. 무섭진 않았나?K: 솔직히 뭘 해야 할지도 잘 몰랐다. 인수인계를 받으면서 ‘뭘 어떻게 해야 되겠다’라는 감은 있었지만, 이전에 한 번도 못 해본 일도 있었고 그 자리에서 바로 도움 받을 상황도 아니었기 때문에 막막했다. 하지만 재무와 비즈니스 등 여러 방면에 늘 관심있었고 한국 본사 멤버들이 꾸준히 응원해줬다. 오히려 절호의 기회로 생각했다. 항상 잔디에서 온라인 상태이던데 온종일 일하는 게 맞는지.K: 맞다. 특히 글을 쓰는 일은 주로 조용한 밤에 잘 되더라. 모든 비즈니스가 마찬가지지만 고객 관리가 생명이라고 생각한다. 고객은 일반적으로 기다리는 것을 싫어하기 때문에 응대는 최대한 즉각 하려고 한다. 그렇다 보니 거의 온종일 일에 집중하게 되는 것 같다. 혼자서 일하는 것과 다른 멤버와 함께 일하는 것의 가장 큰 차이는 뭔지? 선호하는 방식이 있는지?K: 각 방식에 장단점이 있지만, 아무래도 함께 일하는 것이 더 좋은 것 같다.혼자 일할 때는 모든 의사 결정을 내가 해야 하는 만큼 책임과 자율이 공존했다. 이런 자유를 선호하고 스스로 동기부여 하는 사람이라면 더할 나위 없는 환경인 것 같다. 하지만 가끔은 모든 책임에 조금 부담을 느끼기도 하고 무엇보다도. 외로워지게 된다. 그럴 때면 다시 동기 부여 모드로 돌아가기가 어려울 때가 있긴 하다.멤버들과 함께 일하게 되면서 각자 다른 방식으로 의사소통 한다는 부분을 가장 크게 느꼈다. 각 멤버의 의사소통 방식을 존중해줘야 하고 지금도 계속 찾아가는 중이다. 미팅을 할 때 서로에게 피드백을 많이 주려고 하는데 의사 결정에 있어 큰 도움이 되는 것 같다.사실 인턴들보다 내가 더 많이 배우고 있는 것 같다. ^^;  대만 팀 일하는 방식을 조금 더 자세히 알고 싶다.K: 모든 멤버가 원격으로 일을 하고 있기 때문에 대부분 잔디로 공유하고 있다.매주 월요일에는 미팅을 진행하고 1:1로 만나 한 주의 계획, 그 전 주 업무에 대한 피드백을 주고받는다. 미팅 내용을 토대로 자세한 업무 사항을 각 인턴에게 공유하고 중간중간 현황을 공유 받는다. 매주 금요일에는 편하게 점심을 먹으며 (약간의 업무 얘기와 함께) 서로 개인적인 일도 공유하고 수다를 떤다. ^^ 잔디와 함께한 지 꽤 되었는데, 어떤 게 가장 많이 달라졌는가?K: 잔디 서비스가 많이 성장한 것 같다. 처음 조인했을 때만 해도 메시지와 파일 영구 저장, 그리고 약간의 연동 기능만 제공되고 있었지만 지금은 할 일 관리, 조직도, 그리고 더 다양한 연동 서비스까지 생겨났다.이보다 더 많이 달라진 게 있다면 대만 고객들의 인식이다. 잔디를 사용해본 고객이라면 “꼭 필요한 서비스다!”라며 주변에 많이 소개해주고 있다. 대만은 아직 협업툴이 많이 알려지지 않았고 대체제가 많지 않아 ‘잔디’의 성장 가능성이 매우 높다. 스타트업을 넘어 최근에는 중소기업, 대기업 고객들도 협업툴에 관심을 갖기 시작했다. 그럼 변하지 않은 것도 있는지?K: 아시아 시장을 타겟한 글로벌 서비스라는 점은 변하지 않았고, 내가 잔디와 함께 하기로 결심한 또 다른 이유이다. 아시아권에는 수십개의 국가와 문화가 존재한다. 메신저라고 해도 현지 고객이 좋아하는 것, 원하는 것이 다르다. 쉽게 말해, 카톡, 라인이 동양권에서 현지화에 성공한 이유일 것이다.잔디가 꾸준히 아시아권 확장에 노력하고 있다는 것에는 변함이 없는 것 같다. 혹시 스타트업에서 꾸준함이 얼마나 중요하다고 생각하는지?K: 스타트업이 아니더라도 꾸준함은 모든 분야에서 제일 중요한 요소인 것 같다. 요즘엔 많은 사람이 똑똑하고 열정이 있다. 하지만 그 열정과 성과를 얼마나 오랫동안 유지하느냐에 따라 결과가 갈린다고 생각한다. 지금까지 수많은 사람을 만나오면서 의욕과 열정만 너무 앞서 뭔가 해보기도 전에 제풀에 꺾이는 경우를 많이 봤다. 또, 물론 긍정적인 태도도 중요하지만, 긍정적인 태도 자체는 아무것도 해주지 않는다. 그 긍정성과 비전이 빛을 발한다는 것을 증명하기 위한 행동이 반드시 따라야 한다. 잔디에서 가장 기억에 남은 경험이 있는지?K: 한국 출장 중 IT/스타트업 종사자를 위한 파티에 초대받은 적이 있다. 한국어를 잘 못 하니 굉장히 낯설었는데 지나가면서 사람들이 이것저것 물어보더라. 회사와 대만에 대해 말을 하게 되고, 나중에는 나도 모르는 사이에 내가 처음 본 사람과 막 수다를 떨고 있더라. 나에게는 문화 충격이었다. 대만에서 그런 파티를 가보지도 않았고 굉장히 수다스럽고? 오픈 마인드인 사람들과 얘기할 수 있는 신기한 경험이었다. 시간 날 땐 무엇을 하는지?K: 사실 시간이 잘 나지 않는다. 하하. 주로 밤에 짬이 나면 주로 조깅하거나 산책을 한다. 아, 산책하면서 포켓몬을 잡는다. 조깅을 하거나 걸으면서 할 수 있는 게임이라 포켓몬 고를 좋아하는 것 같다. 지금까지 641마리를 잡았고 앞으로 한 10마리만 더 잡으면 내 컬렉션을 완성 시킬 수 있다. 어디서 덕질의 향기가…. KM의 꾸준함이 여기서 보이는 것 같다.K: 나도 당연히 쉬면서 일을 한다. 다만, 내 목표를 달성하기 위해 일에 조금 더 몰두하게 되는 것 같다.  목표가 무엇인가?K: 단기적으로는 대만에서 잔디를 협업툴 1위로 만드는 것이다. 나아가서는 대만뿐만 아니라 아시아에서 1위로 만들고 싶다. 국가, 문화 상관없이 다른 아시안들도 잔디의 효용을 알게 되었으면 좋겠고, 충분히 할 수 있다고 본다. 이런 내 목표를 이루기 위해 다른 대만 기업들과 제휴하는 것으로 첫 발자국을 뗐다. 한국은 이미 구루미의 화상채팅, 그리고 사이냅소프트의 문서 바로 보기 기능을 제휴를 통해 이루어냈다. 그 제휴 결과로 꼭 연동 서비스가 추가되어야 하는 건 아니지만, 주변 기업들과 상생하면서 그 영역을 넓혀가고 싶다. 끝으로, 전 인터뷰이였던 Gary가 남긴 질문이다. 지금 먹고 있는 음식을 같이 먹고 싶은 멤버는 누구인가?K: 음…. Onion(어니언)과 함께 하고 싶다. 직접 만나보진 못했지만 뭔가 재미있고 스토리가 많은 사람 같다. 어니언과 수다 떨면서 하루를 시작하면 뭔가 엄청난 에너지를 받을 것 같다. 다음 인터뷰이에게 묻고 싶은 질문이 있다면?K: 처음 한국에 갔을 때 즐거운 추억들이 많다. 외국에 가본 경험이 있다면 가장 기억에 남는 경험이 뭐였는지 궁금하다. 마지막으로 하고 싶은 말이 있는지?K: 작년에 개인적으로 힘든 일을 겪었는데, 그때 업무에 다시 집중할 수 있을 때까지 충분한 시간을 주었고, 멤버들이 응원해주었다. 멀리 떨어져 있지만, 그 거리가 느껴지지 않을 정도로 큰 위로를 받았고 너무 감사했다는 말을 전하고 싶다.#토스랩 #잔디 #JANDI #팀원소개 #팀원인터뷰 #팀원자랑 #기업문화 #조직문화 #원격근무 #리모트 #디지털노마드 #재택근무
조회수 995

[사람이 서비스다] #4 JD, 안드로이드앱 개발 담당

셀잇은 기존 중고거래 시장에서 이용자들이 겪는 불편과 불안감을 해소하기 위해 등장한 서비스라는 자부심을 가지고 구매자와 판매자를 잇는 접점이 되고자 합니다. 이를 위해 서비스를 기획하고 실행하는 저희 구성원들에 대한 이야기를 간간히 들려드리고자 합니다. 좋은 서비스든 아이디어든 결국 사람이 하는 일이니까요-저희가 어떤 생각을 품고 어떤 마음가짐으로 살아가는지에 대해 진솔하게 풀어보고자 합니다. 이 청년들의 이야기, 한 번 들어보실래요? Interviewee: JD (제이디, 개발팀 / 안드로이드앱 개발 담당)Interviewer: Austin (오스틴, 마케터)  우선 자기소개부터 간단히 해주시죠. 흔해 빠진 소개일랑 집어치우고! 최대한 자신을 우리에게 알려봐요! 정~ 뭐라고 쓸지 모르겠으면 자기 이름으로 삼행시라도 해보세요. 우선 저에게 이런 귀찮은 일을 안겨준 브라이언에게 감사의 인사를 전하는 바입니다. 덕분에 독무대에 이어 다시 한번 불면증에 시달리게 되었어요. 그건 브라이언에게 개인적으로 앙갚음(?)을 해주시고, 본인 소개부터 해주세요. 저도 바쁘답니다. 안녕하십니까? 저는 전남 해남의 작은 시골 마을에서 2남 중 장남으로 태어나 안드로이드 개발을 하고 있는 JD라고 합니다. 원래는 게임 개발이 하고 싶어서 프로그래밍 공부를 시작하였지만 어쩌다 보니 앱을 개발하고 있네요. (뭐, 뭐지? 이 ‘신입사원의_패기.wav’ 같은 느낌은?) 그럼 현재 셀잇에서 개발자로 일하시겠군요. 그럼 본인이 하는 일 중에서 이건 나만의 스페셜티다! 하는 부분은 무엇인가요? 당연히 안드로이드 개발입니다. 우리 회사에서 저 밖에 못하는 거죠~(찡긋) (찡...찡긋?) 하하하;; 네네 그렇군요. (셀잇이 잘 되는 이유가 이거였군. 정상적인 놈이 없는...) 그게 다인가요? 개발하시다가 잘 안풀리거나 열 받을 때는 어떻게 하나요? 자세한 건 ‘영업비밀’이니까- 전 안풀리면... 음- (한참을 생각한다)잠을 잡니다. (역시 오늘도 산으로 가는건가…) 아…(포기한 듯) 얼마나 자나요? 한 20분 정도 짧게 자요. 사실 잔다기보다는 자는 척을 하면서 생각을 하는거죠. 읭? 굳이 자는 척을 해야 될 필요가 있나요? 그냥 대놓고 생각하면 안되는건가요? 안됩니다! 온전한 집중을 위해서 자는 척을 해야 해요. (정적) 인터뷰 하는 중에 월드시리즈까지 끝나버렸네요... 올해 모든 야구가 끝나버렸어요 ㅠ (후우... 내가 이걸 왜 시작했을까...) 그럼 일 얘긴 그만하고(더 할 수도 없겠어;;) 업무 외의 시간에는 주로 뭘 하시나요? 듣자하니 야구를 좋아하는 것 같은데- 야구를 봅니다. 한국 야구는 기아를 응원하고, 메이저리그는 한국 선수들이 진출한 팀들을 응원하고 있어요. 주말에는요? 주말이면 아침에 일어나서 메이저리그 두 경기 정도 보고 오후에는 한국 야구를 보면서 하루를 보냅니다. 이제 야구 시즌도 다 끝나서 다가오는 겨울이 두렵습니다ㅠ 차라리 야구선수로 전향하시는게- 만약 실력이 문제라면 사회인 야구팀이라도 해보시는건요? 그건 돈도 많이 들고, 일단 귀찮고-부상 위험도 크고, 일단 귀찮고-그냥 친구랑 캐치볼 하는 것으로 만족합니다. 그리고 일단 귀찮고- 커피나 한 잔 하실래요? 커피나 마시면서 다른 얘기로 넘어가죠~ 괜찮습니다. 저는 카페인 마시면 안되서- 아, 그럼 그냥 계속 하죠. (여자랑은 술 마시고 나랑은 커피도 안 마시냐?-_- 쳇, 근데 이해되네...) 중고에 대해서 어떻게 생각하세요? 중고를 바라보는 가치관 같은게 있으시면 말씀해 주세요. 제가 환경 문제에 관심이 많습니다. 중고거래가 보편적으로 활성화 된다면 상대적으로 공산품의 생산량이 줄어들게 되고, 이는 지구의 자연 환경에 도움이 되지 않을까 합니다. (응? 뭔가 익숙한데?) 제가 예전에 쓴 글을 보신건가요?… 네~ 꼭 중고 거래가 활성화되서 지구 환경을 지켜주세요… 그럼 마지막으로 셀잇에서 이루고 싶은 것은 무엇인가요? 주로 컴퓨터 부품들을 중고 거래를 이용해 구매했던 적이 있는데요. 항상 직거래를 했지만 정상 작동하는지 불안했던 기억이 있습니다. 집에 와서 컴퓨터에 장착해 보고서야 안심을 하곤 했었는데, 셀잇을 이용하면 최소한 이런 걱정 없이 믿고 안심하며 거래할 수 있는 서비스로 자리 잡을 수 있었으면 합니다. 아니 이건 셀잇이 나아갈 방향이고~ 저는 제이디 본인 개인의 목표에 대해서 물은거예요. 셀잇이 곧 저입니다. 화, 화이팅...! (후우...) 이런 자리가 부끄럽죠? 가슴 속에 뜨거운 뭔가가 있는게 보이지만 굳이 밝히지 않으시겠다면 앞으로 안드로이드 앱을 통해 그 뭔가를 제가 찾아보겠습니다. (빨리 끝내려 애쓴다;;) 인터뷰는 이 정도로 마치는 것으로 하고~ 셀잇에서 칭찬하고 싶은 사람 한 명만 꼽아주세요. 이유도 함께 말해주세요. 전 네이쓴을 칭찬하고 싶습니다. 특유의 친화력과 유머러스함으로 주변 사람들을 기분 좋게 만들어주는 아주 훌륭한 팀원이기 때문입니다. 로봇입니까? 네? 아닙니다. 그럼 오늘 수고하셨습니다. 아! 최근에 셀잇 앱 2.0이 배포됐는데 감회가 남다를 것 같 같은~ 어떠세요? 딱히 이렇다할 소감은 없습니다만 이용자분들이 이전보다 더 편하게 서비스를 이용할 수 있었으면 하는 바람입니다. (로봇 맞네...) 넵- 수고하셨습니다. (하아... 네이쓴이라... 다음엔 우주로 가겠구만...)#셀잇 #번개장터 #인터뷰 #팀소개 #팀인터뷰 #팀원소개 #기업문화 #조직문화 #회사문화 #사내문화
조회수 12437

Jekyll을 이용하여 github에 블로그 만들기

티스토리에서 여러 불편함들을 느껴 깃헙 블로그로 갈아타려고 한다. 자유도가 높아보여 티스토리에 블로그를 개설했으나 오히려 글이 노출되는 디자인이나 (줄간격, 글씨 크기 등등) 기존 테마를 변경하기에 불편했다. 결정적으로 gist 스크립트를 삽입했을 때 미리보기가 안돼서 고민 끝에 깃헙 블로그를 선택했다. 워드프레스도 개설해봤지만 왠지 모르게 마음에 안들어서 깃헙 블로그로 갈아타기로 마음먹었다. 그 후에 이것저것 알아보니 내 마음에 쏙 드는 요소들이 많았다.마음에 드는 부분git을 이용해 커밋, 푸시로 글을 포스팅함. 그 덕분에 블로그에 대한 모든게 로컬에 있고 모든 글들을 로컬에서 관리 할 수 있음.마크다운을 이용하여 글 작성. 글과 html을 마음대로 오갈 수 있어서 좋음. 마크다운 에디터가 없었다면 불편했겠지만 세상은 넓고 좋은 에디터는 많다..! 다만 이미지 삽입에서는 좀 불편.다른 웹 프로젝트처럼 웹스톰에서 블로그 관리 가능. 인텔리 제이를 사랑하는 나로서는 이 부분 또한 큰 장점.아무튼 이런 이유로 깃헙 블로그로 갈아타기로 결정. 구글링을 통해서 깃헙 블로그를 개설하는 방법에 대해 잘 정리해놓은 블로그를 찾았다. 놀부 블로그를 참고하여 깃헙 블로그를 개설했다. 아래에는 내가 보기 편하도록 더 간략하게 정리해보았다.깃헙 블로그 만들기 (Mac OS X)1. Jekyll 설치터미널에서 아래 명령어 입력으로 설치. $ sudo gem install jekyll2. 설치한 Jekyll을 이용하여 블로그 생성블로그를 만들고자 하는 위치에서 아래 명령어로 생성.$ jekyll new [github사용자명].github.com블로그 생성후 생성된 위치로 이동하여 아래의 명령어 실행 후 브라우저에서 http://localhost:4000으로 접속하면 로컬에 생성된 블로그를 볼 수 있음.$ jekyll serve --watch3. github에 온라인 저장소 만들기위에서 생성한 블로그 이름과 동일한 이름([github사용자명].github.com)으로 github에 온라인 저장소를 생성. 그 후 로컬에 있는 블로그와 만들어준 저장소를 remote 해주면 끝.$ git init$ git remote add origin [저장소URL]$ git add .$ git commit -m "Initialize Blog"$ git push origin master생성된 블로그는 http://[github사용자명].github.com으로 접속하면 볼 수 있다. 처음 생성하는 경우 몇 분의 시간이 걸리는 경우도 있다고 함.포스팅하기글은 _post 파일 안에 YYYY-MM-DD-[글 제목].markdown 형식으로 파일명을 지정하여 생성한 후 커밋, 푸시하면 업로드됨.테마 적용하기테마를 직접 만들기에는 시간이 너무 많이 소요되니 인터넷에 공유되어있는 테마를 사용하면 좋다. 테마를 적용하는 부분에서 여러모로 애를 먹었는데 제일 쉬운 방법은 테마가 올라가있는 저장소를 포크하여 [github사용자명].github.com으로 이름을 바꾸는게 제일 쉽다. 내 블로그는 심플한 테마를 적용하였다.다른 테마들은 Jekyll Themes 사이트에서 찾아볼 수 있다. 훨씬 이쁘고 좋은 테마들도 많음.Jeykll 더 알아보기Jeykll 공식 번역 사이트에서 몇 개의 문서를 읽어보면 더 다양하게 활용해 볼 수 있다. _config.yml파일이나 _post, _include, _layout 파일 정도는 기본으로 살펴보아야 함.#트레바리 #개발자 #안드로이드 #앱개발 #Jeykll #백엔드 #인사이트 #경험공유

기업문화 엿볼 때, 더팀스

로그인

/