스토리 홈

인터뷰

피드

뉴스

조회수 2418

Activation Function

Activation Function(활성함수)인공신경망을 공부하다보면 활성함수(activation function)라는 것을 만나게 됩니다. 대부분의 분들은 처음 공부를 시작할 때, 저와 마찬가지로 활성함수는 그냥 이런 거구나 하신 뒤에 넘어가고 있을 거라 생각합니다. 하지만 딥러닝을 좀더 공부하다보면 어떤 활성함수를 사용했는지, 혹은 사용하지 않았는지로 인해 다양한 문제가 발생하곤 합니다. 특히 요즘 핫한 deep neural network 에서는 활성함수가 어떤 것인가에 따라서 vanishing gradient 문제로 인해 학습의 정도가 달라지기도 합니다. 이러한 이유에서 이번 포스팅에서는 활성함수를 자세히 이해해보도록 하겠습니다.인공신경망이 사람의 신경구조를 모방하여 만들어졌다는 사실은 다들 알고 계실겁니다. 인공신경망의 가장 기본 개념은 단일 퍼셉트론에서 출발했습니다. 관련된 포스팅에서도 설명했지만 퍼셉트론은 여러 개의 신호가 들어오면 이를 조합하여 다음으로 신호를 보낼지 말지를 결정합니다(0 또는 1). 이것을 발전시킨 feed forward multiple layer neural network는 하나의 단일 뉴런에 여러 신호가 들어오면, 다음 뉴런에 보낼 신호의 강도를 결정하게 됩니다. 즉, 단일 퍼셉트론이 multi layer perceptron으로 발전해나가는 과정에서, 뉴런은 신호의 전달유무가 아닌 전달 강도를 정하게 되었습니다. 이때 전달하는 신호의 세기를 정하는 방법이 활성함수입니다.많은 분들은 대표적인 활성함수로 sigmoid를 떠올리실 것입니다. 활성함수의 개념을 잡기에는 이만큼 좋은 함수가 없기 때문입니다. 그럼 우선 활성함수의 가장 기본적인 개념을 sigmoid를 통해 알아보도록 하죠. 그 전에 여러분의 이해를 돕기 위해 로지스틱 회귀분석에 대해 먼저 알아보겠습니다.로지스틱 회귀분석(logistic regression)로지스틱 회귀분석은 generalized linear model입니다. 정확히 말하자면 generalized linear model이라는 큰 개념의 여러 케이스 중 하나라고 볼 수 있겠네요. 로지스틱 회귀분석의 목적은 독립변수의 선형결합으로 종속변수인 ‘어떠한 사건이 발생할 확률’을 알고자 하는 것입니다. 어렵죠..? 쉬운 예시를 하나 들어보겠습니다.우리는 어떠한 연구를 통해 1일 흡연량과 폐암 발생 여부의 관계를 알고싶습니다. 이때 가장 쉬운 방법은 1일 흡연량{x}과 폐암 발생확률{p(y)}이 선형 관련성이 있다고 보고, 선형 회귀 분석(linear regression)을 시행하는 것입니다. 그 결과, p(y)=0.02x+0.1<math>p(y)=0.02x+0.1</math> 이라는 식이 도출되었다고 생각해보죠. 이 식은 담배를 전혀 안 피우는 사람은 10%의 확률로 폐암에 걸리고, 하루에 담배를 1개비씩 더 피울 때마다 폐암에 걸릴 확률이 2% 증가한다는 의미입니다. 표면적으로 보았을 때는 꽤나 합리적으로 보입니다. 하지만 과연 이 식을 실제 예측에 활용해도 전혀 문제가 없을까요? 예상하셨겠지만, 그렇지 않습니다.담배는 한 갑에 20개비가 들어있고, 3갑이면 60개비가 들어있습니다. 따라서 하루에 담배를 3갑 피우는 사람은 0.02∗60+0.1=1.3<math>0.02∗60+0.1=1.3</math>, 즉 130%의 확률로 폐암에 걸린다는 결론이 도출됩니다. 이는 확률의 공리에 어긋나는 결론입니다. 따라서 과거의 수학자들은 선형이라는 이해 및 계산이 쉬운 방법을 그대로 유지하면서 확률의 공리에 어긋나지 않는 방법을 찾고자하였고, 다양한 방법들 중 가장 보편적으로 사용하게 된 방법이 로지스틱 함수를 연결함수로 사용한 로지스틱 회귀분석입니다.로지스틱 함수는 아래와 같이 생겼습니다.g(x)=ex1+ex<math>g(x)=ex1+ex</math>이것을 연결함수로 적용한 generalized linear model, 즉 logistic regression의 수식은 아래와 같은 형태가 됩니다.P(y|x)=eβx1+eβx<math>P(y|x)=eβx1+eβx</math>위 식을 이용하면 비로소 선형이라는 직관적인 성질을 띄면서, 결과값의 범위가 0~1로 제한되어 확률값의 예측에 사용할 수 있는 회귀식이 도출됩니다. 이 때, 위에 사용한 로지스틱 함수가 바로 우리가 활성함수로 사용하는 sigmoid function입니다. 따라서 sigmoid를 활성함수로 사용할 경우, 필연적으로 로지스틱 회귀분석과 관련이 있을 것이라고 예상할 수 있습니다. 둘 간의 관련성을 아래 그림을 통해 알아보겠습니다.여러분의 이해를 돕고자 hidden layer가 없는 가장 단순한 형태의 feed forward neural network 형태를 그려보았습니다. 위 그림을 수식으로 나타내볼까요?P(Y|X)=exp(∑2i=0wixi)1+exp(∑2i=0wixi)=11+exp(−∑2i=0wixi)<math>P(Y|X)=exp(∑i=02wixi)1+exp(∑i=02wixi)=11+exp(−∑i=02wixi)</math>즉, 위처럼 sigmoid를 활성함수로 사용한 간단한 neural network는 logistic regression과 일치합니다. 물론 계수(weight) 추정 방법은 통계학에서 기존에 행하던 방법과는 차이가 있지만, 결과적으론 비슷한 값이 추정될 것입니다. 우리는 이 그림을 통해 아래와 같은 직관을 얻을 수 있습니다.input과 weight를 곱해서 더하는 과정은 linear combination(선형 결합)이다.인공신경망의 학습은 각 뉴런에 곱해지는 ‘weight’라는 모수(parameter)를 추정(estimate)하는 과정이다.이제 눈치 채셨나요? Sigmoid를 활성함수로 사용하는 multi layer perceptron neural network의 hidden layer의 각 뉴런은 로지스틱 회귀분석을 하는 것과 정확히 일치합니다. 따라서 학습 과정에서 각 layer의 weight라는 모수를 학습을 통해 추정하는 것입니다.mlp 적용그럼 이제 위에서 배운 로지스틱 회귀분석을 mlp에 적용해보겠습니다. 우리는 단층 퍼셉트론 에서 아래와 같은 그림을 보았습니다.위처럼 선형으로 깔끔하게 분류가 가능한 문제는 활성함수가 계단함수인 단층 퍼셉트론으로도 충분히 해결할 수 있습니다. 하지만 아래와 같은 경우는 문제가 달라집니다.이러한 분류 문제는 선형으로는 불가능하며, 비선형적인 분류를 하여야 합니다. 이처럼 우리가 원하는 비선형의 분류를 하기 위하여 크게 두 가지가 필요합니다.1개 이상의 hidden layer(2개 이상의 뉴런을 포함하여야 함)비선형의 활성함수먼저 비선형의 활성함수가 필요한 이유부터 간단하게 생각해보겠습니다. 만약 활성함수가 비선형이 아니라면, 각 뉴런의 결과값은 선형결합의 선형결합이 됩니다. 따라서 아무리 multiple layer를 쌓는다고 하여도, 결과적으로 출력값은 입력값들의 선형결합이 됩니다. 즉, 층을 여러 개 쌓는 의미가 퇴색되는 것입니다.다음으로 hidden layer와 뉴런의 갯수에 대한 정의가 왜 필요한지 생각해보겠습니다. 위에서 언급하였듯이 logistic regression은 generalized linear model입니다. 여기서 ‘linear model’에 주목해주세요. 즉, logistic regression도 결국은 선형 모델이라는 것입니다. 왜일까요? Logistic regression을 이항분류 문제(결과의 범주가 0 또는 1)에 적용하여, 결과값이 특정값 이상이면 1로 분류한다고 생각해보겠습니다. 이것은 결국 기존의 단일 퍼셉트론에서 활성함수로 sigmoid를 사용한 뒤, 다시 계단함수를 적용한 것과 같습니다. 비록 우리가 sigmoid라는 비선형의 활성함수를 사용했지만, 로지스틱 함수의 지수를 풀어내면 결국 선형 결합의 결과값에 대한 분류이므로 우리가 원하는 비선형의 분류를 할 수 없습니다. 따라서 위와같은 문제를 해결하기 위하여, 비선형의 활성함수를 쓰되, 다수의 뉴런을 갖는 hidden layer를 사용하는 것입니다. 이 때, hidden layer의 뉴런 갯수가 늘어날 수록 좀더 비선형으로 데이터에 적합한 분류가 가능해지지만 overfitting 문제가 발생하게 됩니다. 따라서 hidden layer의 뉴런 갯수를 과제마다 적절히 지정해주는 것이 중요합니다.activation function의 종류마지막으로 activation function의 종류 및 특징에 대해 정리해보겠습니다.1. Sigmoid functionBy Qef (talk) - Created from scratch with gnuplot, Public Domain, Link<특징>수식 : σ(wx+b)=ewx+b1+ewx+b<math>σ(wx+b)=ewx+b1+ewx+b</math>범위 : (0,1)시그모이드 함수는 완전히 값을 전달하지 않거나(0) 혹은 완전히 전달한다(1)는 특성 때문에 실제 인체의 뉴런과 유사하다고 생각되어 널리 사용되었으나, 현재는 점차 사용하지 않는 추세입니다. 그 이유는 아래와 같습니다.Vanishing Gradient :sigmoid 함수는 뉴런의 활성화 값이 0 또는 1에 매우 가깝다면(saturate), 해당 편미분 값이 0에 매우 가까워지는 특성이 있습니다. 인공신경망의 back propagation에서 가장 일반적으로 사용되는 gradient descent의 경우 chain rule을 이용하는데, 이 과정에서 0에 매우 작은 값이 계속 곱해진다면 그 값은 0으로 점점 더 수렴합니다. 즉, 학습의 결과가 back propagation 과정에서 전달되지 못하고 이에 따라 weight 값의 조정이 되지 않습니다. 이것은 학습의 과정뿐만 아니라, 초기 weight 값을 임의로 줄 때에도 문제가 됩니다. f=σ(wx+b)<math>f=σ(wx+b)</math> 를 통해 확인해보죠. 만약 w의 값이 매우 커서 σ(wx+b)<math>σ(wx+b)</math>의 값이 1에 매우 가까워 진다면, weight값은 초기 값에서 크게 변하지 않고 학습이 되지 않을 것입니다. 그럼 우리의 신경망 모델의 정확성도 감소하겠죠. 이것이 vanishing gradient problem입니다.중심값이 0이 아니다 :Sigmoid function의 결과값은 그 중점이 0이 아니며, 모두 양수입니다. 이 경우 모수를 추정하는 학습이 어렵다는 단점이 있습니다. 하지만 이것은 다른 방식으로 모델 내에서 극복이 가능하기 때문에 vanishing gradient 에 비해 큰 문제는 아닙니다.2. tanh function<특징>수식 : tanh(x)=e2x−1e2x+1<math>tanh(x)=e2x−1e2x+1</math>범위 : (-1,1)tanh(hyperbolic tangent) function은 sigmoid 처럼 비선형 함수이지만 결과값의 범위가 -1부터 1이기 때문에 sigmoid와 달리 중심값이 0입니다. 따라서 sigmoid보다 optimazation이 빠르다는 장점이 있고, 항상 선호됩니다. 하지만 여전히 vanishing gradient 문제가 발생하기 때문에 대안이 등장하게 됩니다.3. Relu(Rectified Linear Unit)<특징>수식 : y=max(0,x)<math>y=max(0,x)</math>범위 : (0,∞<math>∞</math>)Relu는 위 그림처럼 선형그래프를 한 번 꺾은 형태입니다. 이 간단한 함수는 오랫동안 인공신경망의 발목을 잡던 vanishing gradient 문제를 해결했습니다. 하지만 여전히 장점과 단점이 존재합니다.장점기존의 sigmoid, tanh에 비해 converge되는 속도가 빠릅니다. 이것은 그래프의 형태가 선형이고, saturate problem이 발생하지 않기 때문으로 보여집니다.x값이 0을 기준으로 선형발현/미발현 이라는 간단한 형태이기 때문에 상대적으로 연산량이 많은 exponential을 사용하지 않아, 컴퓨터의 연산에 대한 부담을 줄여줍니다.단점“dying Relu problem”이 발생합니다. 만일 학습 과정에서 weight가 특정 뉴런이 activate되지 않도록 바뀐다면, 해당 뉴런을 지나는 gradient도 0이 됩니다. 따라서 training 과정에서 해당 뉴런이 한 번도 발현하지 않게 될 수도 있습니다. 심한 경우에는 네트워크 전체 뉴런의 40%가 죽어있는 경우도 발생한다고 합니다(출처 : http://cs231n.github.io/neural-networks-1/). 이것을 막기 위해서는 learning rate를 크지 않게 조절하는 것이 중요합니다. 또 다른 해결 방안으로는 leaky relu와 같은 activation function을 사용할 수도 있습니다.정리이번 포스팅을 통해 우리는 activation function이 무엇이고, 왜 필요한 것인지 알아보았습니다. 또한 어떠한 activation을 어떻게 사용해야하는지도 배웠습니다. 제가 위에 소개한 것 이외에도 다양한 activation function이 있으므로, 한 번쯤 찾아보며 공부해보시면 좋겠습니다.
조회수 1977

여러분은 時代의 最-尖端을 살아가고 있읍니다

어릴 적 TV에서, '공중전화 요금이 20원에서 30원으로 오른다'는 뉴스를 봤던 기억이 있다.그 때는 '전화 카드'라는 것도 있었고, 두 개로 갈라먹는 아이스크림이 하나에 150원이었으며, 국민학교 1학년생은 오전반과 오후반으로 나뉘어 수업을 받았다. 하루 아침에 학교 명패가 '사당국민학교'에서 '사당초등학교'로 바뀌는 걸 본 뒤 어린 마음에 나를 둘러싸고 있는 세상의 모든 것들이 바뀔 것 같아 불안해 했던 기억도 있다.왜 이런 아재감성을 꺼내서 글 앞머리부터 사람을 당황하게 만드는가 하면, 그만큼 많은 것들이 순식간에, 그러나 시나브로 바뀌고 있다는 것을 말하고 싶기 때문이다.겉모습만 보면 20대래도 믿겠지만 사실 우리 팀의 최연장자인 분께서는 63빌딩이 완공된 해에 태어나셨다. 그리고 우리 팀원 중 한 분은 올해 첫 사회인이 되셨다. 당연히, 이 두 사람이 생각하는 '나어릴적'이라는 이미지는 상당히 다르다. 간혹 저녁을 먹으며 이야기를 나눌 때 아무 생각 없이 어릴 때 보던 만화나 드라마 같은 얘기를 하면...주로 그런 얘기를 꺼내는 생각없는 사람이 나라는 것만 밝혀두고.그래서 반성의 뜻을 담아, 오늘의 주제는 '왜 여러분을 둘러싼 세상은 여러분을 따라가지 못하고 있는가'가 되겠다. 정확히는 '누구의 잘못인가'일테고.1. '당연함'의 기준이 달라지고 있다TMI스럽기 그지 없지만, 이제 4살 된 내 조카는 참 예쁘고 귀엽다. 그런 조카가 우리 집에 오면 늘 하는 것 중 하나가, 삼촌 방에 쪼르르 들어와서 노트북으로 넷플릭스 아동 애니메이션을 함께 보는 일이다.그리고 자기가 원하는 화면이 안 나오거나 다른 게 보고 싶어지면, 아주 당연하다는 듯이 사탕 묻은 손으로 노트북 화면을 눌러댄다. 그리고 나에게는 당연하게도, 화면은 바뀔 리가 없다. 사물과 소통하는 방식의 기본 틀이 아예 다른 것이다. 아니면 터치스크린을 지원하지 않는 노트북을 산 내가 잘못한 거거나.이런 내가 조카를 위해 어떤 UI를 만들어준다고 하면, 당연히 우리 조카는 불편함을 느낄 것이다. 나는 화면의 터치를 베이스로 하는 UI를 구상할 수 없거나, 완전히 상상해 낼 수 없으니까.여러분이 사는 세상은 10년 전의 사람들, 20년 전의 사람들이 살던 세상과는 비교할 수 없을 정도로 다르다. 기술의 발전이 점점 더 빨라지고 있어서, 1970년과 1980년의 차이보다 2017년과 2018년의 차이가 더 크다. 경인선 기차가 새마을호로 발전하는 데에는 70년이 걸렸지만, KTX가 하이퍼루프가 되는 건 분명 그것보다 빠를 것이다.*정말 TMI지만, 내 조카는 진짜로 예쁘고 귀엽다. 중요해서 두 번 말하고 싶었다.2. 공중전화를 쓰던 제가 5G망을 설계하고 있네요이렇게 나를 중심으로 돌아가는 세상은 숨가쁘게 바뀌고 있는데, 기업, 플랫폼, 시스템은 그 속도를 따라오지 못한다. 공무원을 가장 좋은 직업으로 쳐주는 건 조선시대나 지금이나 다를 바가 없고, 잠실이 뽕밭이고 압구정이 과수원이었을 때부터 지금까지 모두가 돈을 쉽게 벌려면 부동산을 사라고 한다. 그나마 노동에 대해서는 다들 바꿔야 한다고 말하지만. 정시에 출근해서 정시에 퇴근하는 걸 '칼퇴'라 부르며 마치 대단한 이득이라도 보는 양 포장하는 건 산업화 시대의 시선 그대로가 아닌가.이런 환경 속에서는 내게 업무를 알려주고 조직생활의 금도를 가르쳐줘야 할 직장 상사가 '꼰대'가 되어 버리고, 사우 여러분의 건강을 위해 주말에 등산을 가자고 부르짖는 상무님은 '웬수'가 될 수 밖에 없다. 시스템을 만들고 적용하는 사람들의 인식이 현실을 전혀 따라잡지 못하는데, 현실을 사는 사람들이 시스템에 만족한다는 건 불가능에 가깝다. 토요일에도 출근해서 일하던 시대라면 호연지기 함양을 위해 산에 가는게 재밌는 야외활동이 되겠지만, 주말 내내 밀린 드라마 챙겨보기도 바쁜 세상에 등산을 가자고 하면 취미가 등산인 사람 말고는 대체 누가 좋아할까.결국 나와 나의 윗세대가 생각하는 여가의 개념, 사적인 시간과 조직생활의 경계에 대한 인식의 차이가 이런 어긋남을 만든다. 채용도 마찬가지로, 부장님께는 그저 돈을 얻기 위한 수단에 불과한 일과 직장이 신입사원에게는 나의 만족감을 위한 도구이자 목적이 되기도 하고, 때로는 여가생활을 더 잘 보내기 위한 과정에 불과하기도 하다.하지만 아이러니하게도, 이런 변화를 가장 빠르게 캐치하고 있는 조직이 기업이기도 하다. 정확히는 워라밸, 복지, 기업문화를 위한 제도나 조직을 정비하고, 외부에 적극적으로 알리고 있는 기업에 한한 이야기이지만, '이렇게 하면 더 좋은 인재가 온다'라는 것을 인지하고 그 성향에 맞추어 변화를 추구하고 있는 기업들도 분명히 있다.이 부분에서, '왜 나는 기업의 니즈에 나를 맞추지 못할까', '왜 나는 좀 더 세상과 타협하며 살아가지 못할까'라고 생각하는 사람들이 의외로 굉장히 많다. 그러나 하나 확실한 건, 지금을 살아가는 사람이 이전 세대의 사고방식에 맞추지 못한다고 자책하거나 좌절할 필요는 전혀 없다는 점이다. 바꾸려면 새마을호를 KTX로 바꿔야지 왜 하이퍼루프를 무궁화호로 만드나.소프트뱅크의 손정의 회장은, 트위터의 한 유저가 '이마 라인이 점점 뒤로 후퇴하는 것 같네요'라고 하자 이렇게 말했다. '머리가 후퇴하는 게 아니라 내가 전진하고 있는 겁니다.' 손정의 회장이 대머리인 게 그의 잘못은 아니듯이, 시대의 변화에 맞추어 착실히 전진하고 있는 여러분에 맞추어 시스템이 더 빨리 따라와주어야 한다. 여러분은 지금 시대에 걸맞는 당연한 삶을 살고 있기 때문이다.*맹렬히 빠른 움직임에는 그에 맞춘 보조가 필연적이다.3.For sale: baby shoes, never worn그렇다면 채용 시스템은 여러분에 맞추어 어떻게 바뀌어야 할까.더팀스에 합류를 결심하기 전, 친구들을 만나 개인적인 고민과 망설임을 진솔하게 털어놓고 다음날이면 잊어버리는 알콜의 시간을 여러 차례 가진 적이 있다. 그 때 가장 많이 받은 질문은 '번듯한 직장에서 돈 잘 벌고 있는데 왜 굳이 이직을 하려고 하느냐?'였고, 나 스스로 그 이유를 논리적으로 설명하기 위해 머릿속 어딘가에 있는 생각의자에 앉아 많은 시간을 보냈다. 그리고 결론은 늘 한 가지였다.'지금의 채용 시장은 우리 아버지 세대의 시선으로 만들어져 있다. 그래서 더팀스는 가능성이 있다.'교차로, 벼룩시장과 같은 매체가 아직도 간행되고 있는지는 잘 모르겠지만, 그래서 어쩌면 이 단어를 사용하는 것 자체가 아재의 반증이 될 수도 있겠지만, 한 번이라도 이런 정보지를 봤던 사람이라면 그 구성이 기존의 채용 플랫폼들과 맥락이 비슷하다는 말에 동의할 것이다. 구인구직을 위한 전달의 수단이 종이였던 시절, 지면의 넓이는 곧 돈이었다. 다른 공고나 광고보다 눈에 잘 띄려면 더 넓은 공간을 사용해야 했고, 이는 곧 그 지면을 사용하는 이가 얼만큼 많은 돈을 갖고 있는지 간접적으로 가늠할 수 있는 척도이기도 했다. 모두가 구인공고에 돈을 무한정 쓸 수는 없으니, 자연스레 극히 일부를 제외한 대다수의 공고는 바둑판 형태로, 최대한 적은 공간에 최대한 많은 정보를 전달할 수 있도록 시장이 형성되었다.*저 네모진 텍스트가 거의 모두 구인공고이다.하지만 이론적으로, 지금 여러분이 바라보는 화면에는 지면의 한계가 없다.가끔 인터넷 기사를 보다 보면 이 특징을 극한까지 활용해서 사람을 극한까지 짜증나게 하는 사례를 접하게 된다. 잘 읽고 있는데 슬슬슬 글자가 옆으로 밀리며 배너가 등장하거나, 스크롤을 좀 내렸더니 난데없이 팝업이 튀어나오는데 닫기 버튼은 또 어찌나 작게 만들었는지 누르다가 클릭되기 일쑤고, 작은 팝업이 떠서 닫으려니 마우스 커서를 올리자마자 스르륵 커지는 광고창을 보면, 정보화 시대가 가져온 공간의 확장성과 한계의 극복에 대해 여러 생각이 든다. 깊은 짜증과 함께.조금 극단적인 사례를 들었지만, 하고 싶은 말은 간단하다. 손가락 하나면 지구 반대편의 유저가 찍어 올린 사진에 좋아요를 누를 수 있고, 내가 보고싶은 동영상 채널을 구독해서 알림까지 받아볼 수 있는 시대에, 왜 구인구직은 신문지와 정보지 시절의 시각구조와 텍스트 위주의 개념에서 벗어나지 못하는가?익숙함과 효율성이라는 면에서 기존 채용 플랫폼들이 낡았다고 감히 폄하할 순 없다. 하지만 굳이 사진과 영상이 넘쳐나는 시대에 구인구직만이 글자만으로 표현되는 이유 역시 쉽게 이해할 순 없는 노릇이다. 이제 와서 여러분에게 '이제부터 유튜브랑 인스타그램을 쓰지 않고 종이로 된 책과 신문을 읽으셔야만 합니다'라고 하면 어딘가가 많이 아프고 불편한 사람으로 여겨질 것이다.여러분이 너그러운 마음으로 국민학교 입학 초등학교 졸업자까지 요즘 세대라고 쳐 준다면, 적어도 '우리' 요즘 세대들은, 할아버지 세대가 옆 동네 밭매기를 도와주고 새경을 받는 방식, 신문지상에 직원 급구라고 써있는 공고를 보고 공중전화에 20원을 넣어 전화를 거는 방식에서 발전한 플랫폼을 원할 것이고, 또 그것이 당연해지고, 다시 진부해지는 시대가 차례차례, 그리고 반드시 올 것이라고 생각한다.나의 가장 오래된 기억은  30년 전, 3살 때이다. 그리고 그 때부터 지금까지, 단 한 번도 '내일은 오늘과 똑같을 거에요'라는 말을 들은 적이 없다. 21세기가 시작되면 우리 모두 쫄쫄이를 입고 날아다니는 차를 타고 다닐 줄 알았으며, 달 정도에는 기지를 세우리라 생각했다. 지금 생각해도 현실성이 없는 건 마찬가지이지만, 그 때는 '생각나는 대로 막 지른' 느낌이었다면, 지금은 달을 넘어서, 화성 쯤에 유인 탐사를 시도해 볼 수준까지 도달했다.칼 세이건의 '코스모스'라는 책을 어릴 때부터 참 좋아했는데, 그 책이 처음 출간될 때에는 DNA의 존재는 알았지만 RNA의 존재가 밝혀지지 않아 '이런 것이 있을 것이다' 정도로 추론했었다고 한다. 물론 지금은 고등학교 수준의 과학지식만 있어도 RNA의 존재를 알 수 있다. 이렇게 여러 번 반복해서 옛날엔 이랬다, 저랬다 하는 말을 계속 하는 이유는, 세상은 생각보다 빨리 바뀌고 있다는 것을 어떻게든 체감할 수 있었으면 하기 때문이다.시대를 앞서가는 서비스는 사람들을 만족시킬 수 없다. 그럼 시대에 뒤떨어진 서비스는 어떤가 하면, 불만족을 넘어서는 더욱 나쁜 것이라고 생각한다. 지나치게 앞서있는 서비스는 이해를 받지 못하고 외면되는 수준에서 끝나지만, 뒤처진 서비스는 그 수준에 사람들을 머무르게 하여 발전을 좀먹고 저해하기 때문이다.여러분의 수준에 맞출 수 있는, 가능하다면 반 발짝 정도 앞으로 나아가서 이해하기에도 어렵지 않은 서비스를 제공할 수 있다면, 아주 행복한 일이 될 것 같다.#TMI #나때는말이야 #라떼전문가 #아재요 #국민학생 #5공시절 #지하철에 #5호선이 #생긴다고?
조회수 1474

광고팀 리처드 인터뷰

배움에 오픈 되어 있다고 해도 직접 떠먹여 주지는 않아요스타트업에서 주니어가 얼마나 성장할 수 있을까? 광고팀의 리처드 님은 데이블에서 첫 사회생활을 시작했다. 그 역시 아무것도 몰랐다.  그런 그가 DB 언어에 대해 완전히 이해하게 된 바탕에는 데이블의 사내 교육과 외부 교육 지원이 있었다.기타와 스키를 사랑하는 광고팀 주니어, 리처드리처드 님은 데이블에서 거의 초기 멤버시죠?네. 입사한 지 1년이 넘었어요. 현재까지 즐겁게 다니고 있고요. 인간적이고 편안한 분위기, 눈치 보지 않고 업무와 배움에만 열중할 수 있다는 점이 가장 좋네요!배움에도 열중할 수 있다고요?사내 분위기 자체가 가감 없이 정말 좋아요. 공적으로 사적으로 모두 친근감 있게 대하기 때문에 업무 외 스트레스가 정말 적은 회사라고 장담해요. 서로의 의견도 잘 들어주기 때문에 불필요한 마찰이 적죠. 또한, 경영진이 직원들의 발전과 성장에 관심이 많아서 ‘무엇을 배우겠다’, ‘해보고 싶다’고 건의했을 때 만류하거나 제지하는 경우가 전혀 없었고요.리처드 님이 무언가 배우고 싶다고 건의한 적이 있나요?저 같은 경우는 목표가 확실했기 때문에 적극적으로 지원을 받을 수 있었어요. 저는 마케팅 데이터 핸들링에 관심이 많아 기본적인 DB 언어와 트랙킹 툴에 대해 이해하고 싶었는데요. 전자의 경우는 사내 교육으로 진행된 ‘SQL 기본기 다지기’로 어느 정도 익숙해지게 되었어요. 후자의 경우 구글 애널리틱스 외부 교육을 지원받아 자격증까지 획득하게 되어 일차적 목표를 모두 달성할 수 있었습니다.^^[데이블 복지편]Dabler, Be the Expert! 데이블의 비전에 항상 빠지지 않고 등장하는 키워드가 있습니다. 바로 '사람'자격증까지 획득하셨는데 교육으로 인해 달라진 점이 있나요?달라진 것이라면 머릿속에 지식이 쌓였고 업무 내적, 외적으로 좋은 자산이 되었다는 것입니다. 또한, 1차 목표를 이루고 나니 그다음이 보이게 되었고 더 많은 것을 배워 빠르게 성장하는 데이블러가 되고자 하는 열의도 그만큼 더 생겨난 것 같아요.어려운 점은 없었나요?아무리 교육 지원을 잘해주고 모두가 배움에 열려 있다고 해도 직접 가서 떠먹여 주지는 않아요. 보통 스타트업이라는 것이 자유롭지만, 그 속에서 수많은 전쟁이 일어나고 있어서 누구 하나 바쁘지 않을 수 없죠. 그래서 무언가를 배우고 싶다면 본인이 찾아서 그 경로를 정하고 직접 하나씩 쌓아 나가야 해요. 이런 부분이 어려움이라고 할 수 있겠지만 도전에 익숙한 사람이라면 또 다른 장점일 수도 있겠네요.리처드 님의 최종 목표는?저는 원래 이상주의자적인 기질이 많아 꿈은 항상 원대하게 꾸며 살았는데 데이블에 오래 있으면서 조금은 변한 것 같아요. 하하. 그래서 주니어로서는 어떤 원대한 목표를 정하기보다는 그저 더 많은 것을 배우고 성장하여 내가 있는 곳에서 ‘핵심인재’가 되자는 것을 목표로 두고 있습니다. 지금 당장은 데이터 전문가가 목표이고요. 열심히 하면 안 될 것 없겠죠?#데이블 #사내복지 #기업문화 #사내문화 #팀원 #팀원소개 #인터뷰 #복지
조회수 1382

앱 어트리뷰션 가이드 – 페이스북 트래킹 실습

구글의 UAC와는 달리 페이스북 광고는 마케터의 역량에 따라 성과가 달라지는 것이 특징입니다. UAC 광고 성과는 전적으로 머신 러닝에 의존할 수 밖에 없으나, 페이스북은 마케터가 직접 캠페인을 기획/운영 하면서 주도적으로 광고 성과를 성장시킬 수 있다는 것이 장점입니다. 페이스북의 앱 광고에는 어떤 종류가 있는지, 어트리뷰션 툴로 페이스북 광고를 측정하기 위해 필요한 설정이 무엇인지를 알아보도록 하겠습니다.세 가지 유형, 동일한 트래킹 방법페이스북에서는 광고의 최종 목적에 따라 다양한 종류의 광고상품을 선택하도록 되어 있습니다. 이 중에서 아래 그림에 빨간색 박스로 표시한 세 가지가 앱 광고의 범주에 들어갑니다.앱 설치 – 말 그대로 앱 설치수를 증가시킬 필요가 있을 때 선택하는 옵션으로 가장 빈번하게 활용됩니다. 설치형 광고답게 룩백 윈도우와 CPI 단가를 고를 수 있습니다.전환 – 유저에게 전환 이벤트를 유도하기 위한 목적의 광고입니다. 회원 가입, 상품 검색, 장바구니 담기, 결제 완료 등의 다양한 전환 이벤트를 선택할 수 있습니다.카탈로그 판매 – 광고에 노출된 타겟에게 가장 적합한 제품을 카탈로그에 포함된 제품들 중에서 동적으로 선택해 보여주는 DPA(Dynamic Product Ads)를 활용할 수 있는 옵션입니다.캠페인 목적을 선택하고 나면 다른 페이스북 광고와 거의 유사한 방식으로 설정을 진행하게 됩니다. 랜딩 페이지, 타겟, 광고 스케줄, 예산 등을 입력하게 되지요. 그리고 마지막으로 광고 소재를 입력하는 단계에 트래킹에 활용되는 설정이 있습니다. 아래 그림에 있는 ‘지연된 딥 링크’가 그것입니다.지연된 딥 링크(Deferred Deep Link)란 유저를 딥 링크가 가리키는 앱 내의 최종 목적지로 이동시키기 전에, 유저의 앱 설치 유무를 판단하도록 일종의 ‘지연’ 과정을 설정해 놓은 딥 링크를 말합니다. 다시 말해 링크를 클릭한 유저가 앱이 있다면 앱 내 특정 화면으로 즉시 이동하고, 앱이 없다면 우선 앱 다운로드 페이지로 이동시켜 앱을 설치하게 한 뒤, 설치한 앱이 실행되면 메인 화면이 아니라 딥 링크가 가리키는 특정 화면으로 이동시키는 역할을 합니다. 이 ‘지연된 딥 링크’를 입력하는 부분에 와이즈트래커로 생성한 딥 링크를 입력하면 광고 성과를 트래킹 할 수 있습니다. 페이스북 트래킹을 위한 준비페이스북 트래킹에 필요한 딥 링크를 생성하기 위해 필요한 준비사항이 있습니다.페이스북에 앱을 등록하고 페이스북 SDK를 앱에 설치어트리뷰션 툴의 SDK를 앱에 설치어트리뷰션 툴로 생성한 딥 링크를 페이스북에 입력페이스북을 앱 광고 매체로 활용하기 위해서는 반드시 페이스북에 앱을 등록해야 합니다. 앱을 플레이 스토어나 앱 스토어에 등록하는 것과 동일한 개념이라고 이해하면 편리합니다. 그리고 페이스북의 SDK를 앱에 설치하면 페이스북 광고에 필요한 부가적인 옵션을 활용할 수 있게 됩니다. 이 부가적인 옵션 중 하나가 ‘지연된 딥 링크’이며, 이것을 활용하기 위해서 페이스북 SDK를 앱에 설치할 필요가 있습니다. 위 1번과 2번은 개발부서의 도움이 필요한 부분이며 이에 대한 기술적인 가이드는 여기에서 확인할 수 있습니다. 이 글에서는 1번과 2번이 완료 되었다는 전제 하에 3번 과정을 안내하게 됩니다. 딥 링크 생성트래킹 가능한 딥 링크를 만드는 방법은 대부분의 어트리뷰션 툴이 유사합니다. 광고를 클릭한 사용자를 이동시킬 최종 페이지의 딥 링크와 광고 매체에 대한 정보를 툴에 입력하면, 툴은 입력된 정보를 바탕으로 트래킹 가능한 딥 링크를 만들어 냅니다. 이렇게 만들어진 딥 링크를 페이스북에 입력하면 모든 설정이 끝나게 됩니다.지난번과 마찬가지로 와이즈트래커를 활용해 트래킹 딥 링크 생성 방법을 설명하겠습니다.좌측 메뉴에서 ‘마케팅’ -> ‘광고채널 분석설정’을 클릭합니다.우측 가장자리에 있는 ‘광고 채널 설정’ 버튼을 클릭합니다.상단의 ‘광고 채널 등록’ 버튼을 클릭하여 광고 채널 생성창을 활성화합니다.아래 글과 이미지를 참고해 세부 설정을 입력하고 하단의 ‘저장’ 버튼을 클릭합니다.– 광고 채널: 잘 알아볼 수 있는 관리용 이름 입력 (ex. ‘Facebook’ 또는 ‘페이스북’ 등)– 채널 타입: Advertising Partner 필수 선택– 클릭 후 인스톨 / 인스톨 후 전환 기간: 마케팅 목적에 맞는 기여기간(Lookback Windows) 입력– 광고추적코드/패스워드: 입력하지 않음– Postback 설정: Facebook 필수 선택– Abusing 적용기간: 0일 선택– 제휴사 분석여부: 미사용 선택위의 설정을 마치게 되면 이제 와이즈트래커에서 Facebook을 선택하여 트래킹 가능한 딥 링크를 생성할 수 있게 됩니다. 아래 내용을 참고해 딥 링크 생성을 진행합니다.좌측 메뉴에서 ‘마케팅’ -> ‘광고채널 분석설정’을 클릭합니다.우측 상단의 ‘광고 등록’ 버튼을 클릭하여 트래킹 URL 생성창을 활성화합니다.‘광고 채널’에서 방금 생성한 Facebook을 선택한 뒤 ‘광고 캠페인’에서 광고 캠페인 추가를 선택해 적절한 이름을 입력합니다. 이때 랜딩 URL은 신경 쓰지 않아도 무방하며 적절한 캠페인 기간만 지정해 줍니다.‘딥 링크 URL’에서 딥 링크 URL 추가를 선택합니다.위 단계까지 진행했다면 딥 링크를 입력하는 창이 열립니다. 페이스북 광고를 클릭한 유저가 앱을 실행했을 때 열리게 되는 화면의 딥 링크를 입력하면 됩니다. 앱의 메인 화면으로 연결 시켜야 한다면 메인 화면으로 연결되는 딥 링크를, 특정 상품 화면으로 연결 시켜야 한다면 해당 화면의 딥 링크를 입력해야 합니다.해당 딥 링크의 관리용 이름을 입력합니다.광고를 클릭한 사용자가 도착할 최종 페이지의 딥 링크를 입력합니다. ‘://’ 구분 기호를 기준으로 나눠서 입력해야 합니다.‘광고 채널’에서 방금 생성한 Facebook을 선택한 뒤 ‘광고 캠페인’에서 광고 캠페인 추가를 선택해 적절한 이름을 입력합니다. 이때 랜딩 URL은 신경 쓰지 않아도 무방하며 적절한 캠페인 기간만 지정해 줍니다.이제 트래킹 딥 링크 생성이 끝났습니다. 화면의 가장 위쪽에 방금 생성한 트래킹 딥 링크가 위치합니다. URL 상세 보기를 선택하면 트래킹 딥 링크를 볼 수 있으며, 링크 자체를 클릭해 전체 딥 링크를 복사합니다.복사한 트래킹 딥 링크를 페이스북 광고 소재의 ‘지연된 딥 링크’ 부분에 붙여넣고 저장하면 모든 설정이 끝납니다. 와이즈트래커에서 광고 성과 확인트래킹 딥 링크가 입력된 광고가 라이브되면 와이즈트래커의 어트리뷰션이 시작됩니다. 측정된 데이터는 아래 그림과 같은 형태로 ‘마케팅 -> 광고 채널’ 리포트에서 확인할 수 있습니다.
조회수 3026

스쉐님들 반가워, 배민이야

안녕하세요 스타일쉐어 장선향입니다. 스타일쉐어는 매월 1회 스타일쉐어 팀 내, 혹은 팀 외부에서 `이달의 월간 세션 주인공`을 초대해 전문성과 경험을 공유 (share)하고 팀원들이 함께 성장하기 위한 시간을 가지고 있어요.지난 6월에는 애자일컨설팅 김창준 대표님과 함께 KAI 테스트를 기반으로 `팀원들을 이해하고 함께하기`에 대한 세션을 가지기도 했고, 올해 3월에는 눔코리아 Director of Growth 정성영님과 함께 `그로스 해킹 101: 그로스 마인드셋`을 주제로 팀원들에게 영감을 주기도 했습니다.오늘은 배달의 민족 장인성 이사님의 세션, ‘마케터 장인성의 일’이라는 주제로 마케터로서 배민에서의 경험과 배민이 지금에 있기까지에 대한 이야기를 나누는 시간이었어요. 그 내용이 인상깊어 기업의 브랜딩, 조직 문화 등을 고민을 하는 많은 분들이 함께할 수 있도록 블로그에 그 내용을 공유합니다.스쉐님들 반가워 배민이야배달의 민족은 우리가 알고 있는 2010년 출시한 배달 앱 <배달의 민족> 뿐만 아니라 프리미엄 외식 배달 서비스 <배민 라이더스>, 반찬 배송 서비스 <배민찬>까지 다양한 서비스를 운영하고 있습니다. 이 서비스들과 일맥상통하는 회사의 비전은 `좋은 음식을 먹고 싶은 곳에서` 입니다.우리가 배민 앱을 켤 때, 배민찬에서 반찬을 주문할때, 배민 라이더스를 통해 배달되지 않던 유명 맛집의 음식을 시킬 때 이 비전은 실현됩니다.배달의 민족이 생각하는 `배민`은?`브랜드는 사람`이라고 생각합니다. 사람의 성격이 다양하듯 브랜드도 사람처럼 성격을 가집니다. 배민하면 떠오르는 성격은 `키치, 유머, 패러디` 입니다. 보통 배달음식을 시키는 사람은 회사의 막내에요. 막내 친구들의 공감을 얻을 수 있는 브랜드는 그 친구들을 잘 이해해야 합니다. 이들과 소통하기 위해 유머러스한 배민의 브랜드가 시작했습니다. 왠지 모르게 정이 가고 친근한, 재밌는 동네형 같은 성격은 `고객`에서 출발했습니다.배달의 민족 초초기에 진행한 `넉가래 이벤트`배민의 카피, 이벤트들은 풋! 하고 웃기거나 아~하며 감탄하게 만드는 공통점을 가지고 만들고 있습니다.저도 이 이벤트가 아직 생각납니다. 아이폰, 아이패드, 노트북 등 고가의 경품 사이에서 넉가래를 준다는 이벤트에 얼마나 참여할까 하는 생각과 다르게 페이스북에서 엄청 공유가 되었었던 기억이 납니다. 이런 이벤트에 참여하고 공유하는 사람들, 배달의 민족과 정말 잘 맞는 고객이라는 생각이 듭니다.배달의민족 브랜딩실에서 진행해온 프로젝트들은 아래와 같습니다.배달의 민족 TV광고 ‘우리가 어떤 민족 입니까’ <출처: ">http://blog.hsad.co.kr/191>배달의 민족에서 한달에 한번씩은 계속 하는 잡지 광고 <출처: 배민 블로그>배민 신춘문예 <출처: 배민블로그 http://spring.baemin.com>배민 문방구의 제품들 <출처: 배민문방구 http://store.baemin.com >배민 치믈리에 자격시험 <출처: 배민 유튜브>그중 배민 치믈리에 자격시험 은 많은 이슈를 만들어낸 행사였습니다. 그 성과도 남다릅니다.치믈리에 행사의 합격자 총 119명 (합격률 24%)주요 19개 매체 참석, 기사 80건 노출치믈리에 검색 쿼리 2만건 (네이버 기준)배민 검색 쿼리 평균대비 4만 건 증가 (네이버 기준)SNS 인증 약 600건배민 치믈리에 자격시험의 시작행사의 시작은 배민 신입사원들의 오리엔테이션에서 시작되었습니다. 신입 OT 때 눈가리고 치킨을 맞추는 게임을 보고 이사님께서 단톡방에 공유했는데, 팀원들이 너무 재밌어하면서 아이디어가 발전되었다고 합니다. 그냥 재밌는 에피소드로 웃고 넘기는것으로 끝나는게 아니라 메일로 빠르게 정리해 마케팅팀에 공유합니다. 실제 행사까지 실행의 과정에서 초기 기획과는 그 모습이 상당부분 달라지긴 했지만, 이 메일은 아마도 아이디어의 실현에 중요한 첫 스텝이 되었으리라 짐작해 봅니다.당시 팀원들과 나눈 아이디어를 빠르게 정리해 공유한 메일내용마케터의 기획력 — 고객에게 OO할 거리를 만들기배민 내부에서도 치믈리에, 배민 문방구의 ‘다 때가 있다’ 등을 성공한 마케팅 사례로 꼽는 이유는 얼마나 카피제품이 나오는가, 고객들이 적극적으로 참여하고 이야기하는가 를 보고 평가한다고 합니다. 고객들이 `이야기할꺼리`를 만들고 `참여할꺼리`를 만들기 위해 기획한 치믈리에는 온라인에서만 소통하는 것이 아니라, 오프라인에 고객들이 직접 참여하고 배민 브랜드를 체험하는 특별한 `경험`입니다.마케터의 기획력 — 포기할 수 없는 쓸고퀄 (쓸데 있는 고퀄)치믈리에 자격 시험에서 특별한 경험을 주기 위해 선정한 장소는 ‘롯데호텔’.가벼운 마음으로 온 응시자들은 입구에 들어서면서, 100m 현수막의 위엄에 압도당하고 ‘엇! 이거 뭐지’ 라는 표정으로 순간 당황하는 재미있는 상황을 만들어 내는데 성공합니다. 배달의 민족이 포기하지 않는 `쓸고퀄`은 행사장 여기저기서 볼 수 있습니다.출처: 인스타그램 seungheon ( @envyhoney ) , 은솔님의 블로그 (https://blog.naver.com/reeabby/221058247834)마지막에 흩날리는 꽃가루까지 닭 다리 모양으로 잘라 마지막 디테일을 놓치지 않았습니다. 시험을 친 응시자들이 ‘대단하다 배민, 디테일 지렸다’며 누가 시키지 않아도 자신의 경험을 공유합니다. 치믈리에 자격시험은 단지 에피소드로 끝나지 않고 지금도 계속해서 이야기거리를 만들고 있습니다.조만간 때와 장소에 따른 치킨 선택가이드, 닭다리 사수방법등을 적은 가이드북 `치슐랭 가이드`, 치킨에는 맥주! 배민에서 만드는 맥주도 선보일 예정이라고 합니다.이런 기획은 어떻게 하나요?이제부터는 생각하는 방식과 기업 문화에 대한 이야기입니다.이런 기획이 가능한데에는 배민 마케팅실의 문화와 의사결정의 방법이 있었습니다. 아이디어에서 기획안까지는 빠르게 진행합니다.중요한 것은 브랜드실에서 진심으로 좋아하고 공감하는 것이어야 합니다. 그리고 그 프로젝트를 할 사람은 자발적인 참여로 결정됩니다. 치믈리에 프로젝트는, 4년 차 마케터가 `대장`(프로젝트 리더)를 지원했고 함께할 팀원들을 모았습니다. 그러다 보니 프로젝트에 대한 애정을 가지고 누가 시키지 않아도 먼저 고민하고 완성도 높게 실행할 수 있었다고 합니다.배민 브랜드실의 프로젝트는 리더가 처음부터 방법을 정하지 않습니다. 리더는 왜(일을 하는 이유, 배경, 문제) 목표(기대하는 결과)만을 공유합니다. 그리고 그 중간에 있는 방법과 수단은 일을 진행하는 사람(대장)이 선택하고 이에 대해 공유하는 방식입니다. 의사결정은 말랑하게 합니다. 계획한 대로 되지 않는 일이 더 많기 때문에, 더 좋은 결과를 위해서라면 빠르게 변화할 수 있는 유연함을 가져야 합니다. 함께 하는 동료들의 비난이 두려워 수정을 하지 않으면 변화에 뒤처지는 결과물이 나오게 된다고 말합니다.마케터의 무기, 경험자산한편, 마케터라면 평소에 경험 자산을 많이 쌓아 놓아야 한다고 강조합니다.경험 자체를 즐기는 것, 주말에 새로운 공간을 체험하는 것, 콘서트를 가는 것 모두가 값진 경험입니다. 또 경험에는 단지 다양한 경험/체험을 넘어선 한 단계 뭔가가 필요합니다. 바로 `관찰`입니다.어떤 페스티벌이 있었는데 내가 가지 않았다. ‘나는 왜 안 갔을까? 줄 서기 싫어서.. 볼만한 게 없어서..’ 이렇게 조금 떨어져서 현상을 바라보는 관찰이은 중요한 자산이 됩니다. 이런 경험이 없었다면 치믈리에 행사에서 가장 병목인 지점, 예를들면 접수데스크에 사람이 많이 몰릴거야. 혹은 어떤 상황에 불평하는지 미리 짐작할 수 있겠지요. 그리고 기대 이상의 만족스러움, ‘아하 모먼트’도 어렵지 않게 발견할 수 있을 거라 생각합니다.즐겁게 일하는 방법이사님의 고백. 전 직장에서 처음 팀장이 되었을때 더 나은 사람, 더 똑똑한 사람이 되고자 자연스럽게 부담을 가졌다고 합니다. 맞고 그름을 논하는데 에너지를 쓰는 것 보다 중요한 건 팀장의 말에 ‘그거 아닌데요’라고 할 수 있는 분위기라고 조언합니다.얘기를 듣고 <해와 바람과 나그네> 이솝우화가 생각났습니다. 나그네의 옷을 벗기기 위해 바람이 강풍으로 나서지만 결국 옷을 벗길 수 없고 따뜻한 해가 햇살을 비추자 나그네가 스스로 옷을 벗죠. 세찬 바람처럼 일방적인 의견으로 상대의 공감을 얻지 못한 설득은 일시적으로는 일을 진행할 수 있겠지만, 진정한 설득에는 실패한 것입니다. 자유로운 의견을 낼 수 있는 분위기와 의견을 들어주는 만만한 리더(그전에 먼저 능력으로 인정받는)가 있는 팀은 결국 장기전에서 이길 수 있습니다.함께하는 사람들을 좋아하기, 그리고 그런 사람과 함께하기함께하는 사람들을 믿는 것만큼 중요한 것은 없습니다. 장인성 이사님의 책 ‘마케터의 일’에도 이런 내용이 있습니다.좋아하는 사람, 잘 어울리는 사람들과 함께 일할 때 더 크고 멋진 일을 만들어낼 수 있습니다. 동료들을 믿어주고 사랑해 보세요. 소중한 동료가 되어주세요. 마음이 잘 맞고 일의 합이 잘 맞는 사람들을 소중합니다. 소중한 사람들을 꼭 지켜 내시기 바랍니다.이런 사람을 발견하고 채용하는 것도 중요합니다. 세 가지 포인트를 말씀하셨어요.1. 일을 좋아하는 사람 2. 성장하고 싶어하는 사람 3. 함께 잘하는 사람일을 좋아하고 긍정적으로 대하는 사람들은 함께하는 사람에게도 좋은 에너지를 줍니다. 우리 서비스가 사랑받는게 좋고, 경험을 통해 성장하는것을 즐기는 사람과 함께 일하는 것은 행복한 일입니다. 중요한 마케팅 캠페인들은 여러 사람이 힘을 합쳐 만들어 냅니다. 혼자 힘들게 잘하는 것이 아니라 `우리`가 함께 하는 일에 기쁨을 느끼는 사람. 그런 사람을 채용하라고 조언합니다.Q&A 세션 : 장인성 이사님과의 일문 일답Q: 프로젝트에 앞서 목표와 결과를 놓고 프로젝트를 진행한다고 하셨는데, 매달 배민에서 진행한 잡지광고의 경우 비용이 꽤 비쌀 것 같습니다. 광고의 목표는 무엇이었고 결과는 어떻게 측정하셨나요? 마찬가지로 치믈리에 행사의 목표는 무엇이었나요?A: 우선 잡지광고 비용은 생각보다 그리 크지는 않습니다. 한 달에 100–150만원 정도. 지금 시작한지 6년 정도 되었으니 6–7000정도 비용이 든 것입니다. 지금 와서 이 비용을 한 번에 쓴다면 이런 결과를 낼 수 있을까 생각하면 아닙니다. 메거진이라는 니치한 채널에서 처음엔 소수의 고객이 보겠지만 이런 캠페인들이 쌓이면서 지인에게 공유하면서 ‘어 나도 봤어!’하는 경험을 쌓는 것이 가치 있다고 생각합니다.또 한 가지는 구성원들끼리 배민다움을 느낄 수 있는 캠페인이 바로 매거진 광고입니다. 배달의 민족에 카피라이터가 있는 줄 아는데 사실 카피라이터가 없습니다. 매달 진행하는 매거진에 대한 소개를 사내에 하고, 디자이너 개발자 할 것 없이 누구나 카피라이터가 될 수 있습니다. 구성원들이 자연스럽게 배민스러움을 알아가는 기회입니다.광고의 성과는요? (웃음) 대표님의 지인이 봤다고 하면 성공입니다. 측정하기 어려운것이 사실입니다. 다만 패러디, 카피제품이 얼마나 나오는지를 보면 성공여부를 짐작할 수 있습니다. 브랜드 캠페인은 용기 있게 결정할 수 있는 사람이 필요하고 리더들의 결정과 지지도 중요합니다.치믈리에 자격시험의 경우 시즌별로 배달의 민족으로 이야기거리, 같이 놀 수 있는 브랜드를 만드는 것이 목표였습니다. 봄에 신춘문예가 있다면 여름엔 치믈리에로 배달의 민족이 회자되기를 바랍니다.Q: 매거진 F는 무엇을 목표로 한 프로젝트 인가요?A: 기존의 배달 앱 배민의 코어 고객이 키치하고 B급 유머를 좋아하는 막내로 문화적 팬덤을 만들었다면, 배민찬/ 배민라이더스의 타겟을 고려해 이제는 서비스의 본질에 다가가서 ‘음식과 사람’에 대한 이야기를 담는 상위의 개념이 필요했습니다. A급의 멋진 푸드를 만드는 것은 여러 회사에서 하는 일이고 우리가 더 잘하기 어렵겠다고 판단. 음식을 먹을 때 문화를 바꿔나가는 건 배민이 할 수 있겠다고 보고 음식에 대한 진지한 접근으로 실행한 것이 매거진F 입니다. 이를 통해 배민을 Food 회사라고 생각할 수 있기를 바랍니다. 연장선상에서 치킨, 반찬에 대한 영화/다큐 프로젝트도 준비중입니다. 장기적으로 배달의 민족 브랜드, 콘텐츠, 매출까지 연결될거라 생각합니다.Q: 구성원들이 늘어나는데 배민스러움을 유지 하기 위한 노력들A: 가장 신경을 쓴 부분이 공간에 대한 구성입니다. 개인이 업무를 하는 독서실 같은 공간이 있는가 하면, 함께 잘하는 문화를 만들기 위해 카페 (우물가라고 부르는 공간) 공간을 만들어 구성원들이 자유롭게 이야기하고 아이디어를 발전시키고 있습니다.또 올림픽공원으로 사옥을 이전하면서 스포츠 분야에서 고정관념을 깨고 남들이 하지 않은 혁신을 가진 운동선수로 기록된 인물들의 회사 곳곳에 소개했습니다. 세계 최초로 크라우칭 스타트를 한 육상선수 토마스 버크, 손이 아닌 발로 터치하는 ‘플립턴’으로 반환점을 돌아 기록을 단축한 수영선수 텍스 로버트 선수 등이 주인공입니다. 그림 어디에도 ‘이렇게 혁신을 해야 해’라는 문구는 없습니다. 다만 구성원들이 자연스럽게 혁신과 창의의 동기를 가지고 그 마음을 잃지 않도록 매일 함께하는 공간을 설계하였습니다.여기까지 기억과 기록, 생각을 더해 뜻깊었던 월간 세션을 정리합니다.스타일쉐어도 `브랜딩` 혹은 `어떤 브랜드로 다가가고 싶은가`에 대한 고민을 하고 있던 터라 소중한 자리로 기억됩니다.스타일쉐어는 좀 특별한 서비스 입니다. 저마다 특별한 스토리를 가진 수많은 패션 브랜드/입점사들과 만들어가는 플랫폼이고, 한편으로 다양한 성격과 스타일을 가진 수백만 밀레니얼 세대 유저들이 함께 컨텐츠를 만들어 내는 플랫폼이기도 합니다.현재 스타일쉐어가 유저들에게 전달하는 메세지들을 한번쯤 돌아보며, 앞으로 어떤 브랜드로 기억되고 싶은지에 대한 고민, 그리고 이를 위해 무엇부터 시작할지 생각하게 됩니다. 혹시 비슷한 생각을 하고 있는 곳이 있다면 이 내용이 도움이 되셨길 바랍니다.장인성 이사님의 생각과 경험은 최근 출간된 책, 이미 베스트셀러가 된 책 ‘마케터의 일’ 에서 더 자세히 만나볼 수 있습니다. (책도 참 좋습니다#스타일쉐어 #이벤트후기 #인사이트
조회수 3058

Python 기반의 웹서비스 개발 환경 구축 방법

안녕하세요. 스포카 크리에이터팀의 프로그래밍 인턴을 맡고 있는 __박종규, 정성재, 고아라__입니다. 저희 세 명은 각각 다른 OS 환경에서 웹서비스를 개발하였는데 이번 포스팅에서는 OS별로 개발 환경을 구축하는 과정을 설명하겠습니다.PythonPython(파이썬)은 비영리의 Python 소프트웨어 재단이 관리하는 개방형, 공동체 기반 개발 모델을 가지고 있습니다. Python은 C파이썬 구현이 사실상의 표준이며 동적 타이핑 범용 프로그래밍 언어로, 펄 및 루비와 자주 비교됩니다. Python은 순수한 프로그래밍 언어의 기능 외에도 다른 언어로 쓰인 모듈들을 연결하는 Glue language로써 자주 이용됩니다. 실제 Python은 많은 상용 응용 프로그램에서 스크립트 언어로 채용되고 있습니다. 또한, 유니코드 문자열을 지원하여 다양한 언어의 문자 처리에도 능합니다. 현대의 Python은 여전히 인터프리터 언어처럼 동작하나 사용자가 모르는 사이에 스스로 Python 소스 코드를 컴파일하여 바이트 코드를 만들어 냄으로써 다음에 수행할 때에는 빠른 속도를 보여줍니다.Windows에서 Python 2.x 설치 방법Linux와 Mac OS에서 Python은 기본적으로 설치되어 있기 때문에 터미널 창에서 Python 명령만으로 쉽게 실행할 수 있지만 Windows에서는 Python을 따로 설치해주어야 합니다.Python 공식 사이트해당 사이트에 들어가서 Quick Links (2.7.3) – Windows Installer 선택하여 python-2.7.3.msi 다운로드 후 실행하여 설치합니다. 특별히 원하는 버전이 있을 때에는 DOWNLOAD – Releases에서 버전별로 설치파일을 다운로드 할 수 있습니다. Python의 기본 설치 경로는 C:\Python27 이며 설치 완료 후, 환경변수를 등록해야 합니다. 환경변수를 등록하는 방법은 다음과 같습니다.내컴퓨터(마우스 오른쪽 버튼 클릭) – 속성(시스템 등록 정보) – 고급 – 환경 변수 클릭시스템 변수 – Path 선택 후 편집 클릭변수 값에 맨 뒤에 C:\Python27;C:\Python27\Scripts; 입력 후, 확인 버튼을 눌러 시스템에 적용변수 값은 각각 ; (세미콜론) 으로 구분Python의 패키지 설치 방법시작 메뉴 – 실행 – CMD 로 커맨드 창을 실행 시킨 후에 Python이 설치된 디렉터리로 이동합니다.cd C:\Python27\Scripts 그 다음 easy_install pip 명령으로 pip를 설치해줍니다. pip는 PyPI(Python Package Index)에 등록된 패키지들을 설치하고 관리할 수 있는 패키지 관리 시스템입니다.$ easy_install pip 다음은 pip 명령의 사용법입니다.pip install packageName 명령 : 최신버전으로 설치pip install packageName==0.x.x 명령 : 0.x.x버전으로 설치패키지 설치 경로 : C:\Python27\Lib\site-packagespip uninstall packageName 명령 : package 제거pip freeze 명령 : 현재 환경에 설치된 package 이름과 버전 목록 PostgreSQLPostgreSQL는 California 대학 Berkeley computer science 학부에서 개발한 POSTGRES, Version 4.2 를 기반으로 한 오브젝트 RDB 관리 시스템(ORDBMS)입니다. 또한, PostgreSQL은 BSD 허가권으로 배포되며 오픈소스 개발자 및 관련 회사들이 개발에 참여하고 있습니다. 따라서 누구라도 사용, 수정, 배포할 수 있으며 목적과 관계없이 무료로 이용할 수 있습니다.각 운영체제 별 PostgreSQL 설치 방법WindowsWindows에서 PostgreSQL을 설치하기 위해 해당 사이트로 접속합니다.PostgreSQL 공식 사이트해당 사이트의 Download탭을 선택하여 Downloads 페이지로 이동합니다. 그 다음 Binary packages 에서 Windows를 선택하여 Windows installers 페이지로 이동합니다. One click installer 에서 Download 선택 후 이 페이지 로 이동하여 해당하는 OS 버전으로 선택하여 다운로드 후 설치합니다.Linux (ubuntu 12.04 LTS)Linux(리눅스)에서 PostgreSQL은 여러 가지 방법으로 설치 할 수 있습니다. 패키지로 설치하는 방법은 터미널 창에서 아래와 같은 명령어를 입력하시면 됩니다.$ sudo apt-get install postgresql-X.X(버전명) 다른방법으로 설치하는 방법은 아래 주소로 들어가시면 자세히 나와 있습니다.PostgreSQL 공식 사이트추가로 PostgreSQL을 편하게 이용하고 싶은 사용자는 pgadmin3이라는 PostgreSQL의 GUI 프로그램을 설치하시면 됩니다. 설치 방법은 터미널 창에서 아래와 같은 명령어를 입력하시면 됩니다.$ sudo apt-get install pgadmin3 Max OS ( MAC OS X Mountain Lion 10.8.2)Mac OS에서 PostgreSQL은 Homebrew를 이용하여 설치하도록 하겠습니다. Homebrew는 Mac OS의 패키지 관리자 프로그램입니다. PostgreSQL은 Homebrew 이외에도 PostgreSQL 다운로드 사이트, Homebrew와 비슷한 기능을 하는 MacPorts 등을 이용해서도 다운받을 수 있습니다. 하지만 PostgreSQL 이외의 다른 프로그램을 설치하기에도 패키지 관리자가 유용하기 때문에 저는 Homebrew를 이용하도록 하겠습니다. 일단, Homebrew 패키지를 컴파일 하기 위해서 xCode가 설치되어 있어야 합니다. 앱스토어에서 xCode를 검색하여 받도록 합니다.xCode 설치를 완료했으면 메뉴에서 __xCode탭 - Preferences - Downloads - Command Line Tools__를 다운받습니다. 그럼 이제 Homebrew 패키지를 컴파일할 수 있게 되었습니다.이제 터미널을 실행시키고 다음 명령을 입력하면 Homebrew가 설치됩니다.$ ruby -e "$(curl -fsSkL raw.github.com/mxcl/homebrew/go)" Homebrew가 이미 설치되어있다면 업데이트할 사항이 없는지 확인해보고 업데이트를 시켜주세요.$ brew update이제 Homebrew 설치를 완료했으니 간단하게 PostgreSQL을 설치할 수 있습니다.$ brew install postgresql 설치된 버전을 $ psql –ver 명령으로 확인해 보니 PostgreSQL 9.1.4 버전이 설치되어 있었습니다.psycopg2psycopg2는 Python library의 한 종류로써 하는 역할은 Python에서 PostgreSQL를 활용하게 해주는 library입니다. 설치 방법은 터미널 창에서 아래와 같은 명령어를 입력하시면 됩니다.$ pip install psycopg2 * 참고 ubuntu/debian 사용하시는 분 중에서 설치가 안 되시는 분들은 psycopg2를 설치하시기전에 python-dev라는 패키지 파일을 설치하시면 psycopg2를 설치 하실 수 있습니다. 설치 방법은 터미널 창에서 아래와 같은 명령어를 입력하시면 됩니다.$ sudo apt-get install python-dev FlaskFlask는 Python용 Micro Framework이며, Jinja2 template engine과 Werkzerg WSGI toolkit에 의존합니다. Flask에는 기본적으로 많은 환경설정 값들이 존재합니다. 규칙에 따라 템플릿 파일과 CSS, JavaScript, Images 등의 파일들은 templates과 static 이라는 하위 디렉터리에 각각 보관해야 합니다. 기본적으로 Flask는 다른 라이브러리에는 존재하는 Database abstraction layer, Form validation 등의 기능을 포함하지 않지만, 기능을 추가할 수 있는 확장성을 제공합니다. 이미 수많은 라이브러리들이 Database integration, Form validation, Upload handling, Various open authentication technologies등을 제공합니다. SQLAlchemy나 다른 DB Tool을 이용하여 고급 패턴을 구현할 수 있으며, Flask를 이용해보면 다양한 기능을 확장할 수 있다는 것을 알 수 있을 것입니다.Flask 설치 방법Flask를 설치하려면 터미널 창에서 다음 명령어를 입력하면 됩니다. (windows의 경우 cmd창) $ sudo pip install flask SQLAlchemySQLAlchemy는 Oracle, DB2, MySQL, PostgreSQL, SQLite와 같은 관계형 데이터베이스에 강력하고 유연한 인터페이스를 제공하는 Python SQL Toolkit이자 Object Relation Mapper(ORM)입니다. 여기서 ORM은 객체를 관계형 DB 테이블에 매핑해주는 역할을 하는데 SQLAlchemy는 객체를 매핑하기 위해 특정 클래스를 상속받지 않아도 되기 때문에 높은 수준의 라이브러리라고 할 수 있습니다.앞선 단계까지의 설치가 완료되었다면 SQLAlchemy의 설치법 역시 pip 명령을 쓰면 되므로 간단합니다. 윈도우는 커맨드창을 실행시키고, 리눅스와 MAC OS의 경우 터미널을 실행시켜 다음 명령을 입력합니다. 저는 SQLAlchemy 0.7.2 버전을 설치했습니다.$ pip install SQLAlcheymy==0.7.2Permission denied라는 문구가 뜨면 권한이 없는 것이므로 관리자 계정으로 설치를 해주어야 합니다. 관리자 계정은 $ sudo su로 로그인하거나 명령 앞에 sudo를 붙이면 됩니다.$ sudo pip install SQLAlchemy==0.7.2 여기에서 ==0.7.2는 설치할 SQLAlchemy의 버전을 뜻하며 버전을 명시하지 않으면 최신 버전으로 깔립니다.Flask-SQLAlchemyFlask-SQLAlchemy는 SQLAlchemy를 더욱 뒷받침할 수 있는 Flask의 확장으로 SQLAlchemy 0.6 이상의 버전을 필요로합니다. Flask-SQLAlchemy 역시 pip 명령으로 설치할 수 있으며 저는 Flask-SQLAlchemy 0.15 버전을 설치했습니다.$ sudo pip install Flask-SQLAlchemy==0.15 마치며지금까지 Windows, Linux, Mac OS에서 Python, PostgreSQL을 이용한 웹서비스 개발 환경 구축 방법에 대해 알아보았습니다. 이 글을 통해서 처음 접한 사람들도 특정 OS에 구애받지 않고 쉽게 웹서비스 개발 환경을 구축하는 데에 도움이 되었으면 좋겠습니다.출처Python 위키백과pip 위키백과 Flask 홈페이지PostgreSQL plusPostgreSQL 위키백과 Essential SQLAlchemy, O REILLY, 2008Flask-SQLAlchemy 홈페이지#스포카 #개발 #개발팀 #개발자 #파이썬 #Python #개발환경 #업무환경 #꿀팁 #조언 #인사이트
조회수 1738

자바스크립트에대해서

안녕하세요. 크몽 개발팀입니다.오늘 저는 좀 심오한 주제를 다뤄보려고합니다.이번에 제가 다룰 주제는 ‘자바스크립트’라는 언어입니다.자바스크립트라는 언어와 자바라는 언어에 대해서 혼동을 하는 경우가 많은데요,자바와 자바스크립트는 완전히 다른언어입니다. 쉽게말해서 자바는 서버를 구축하는 부분을 주를 담당하고,자바스크립트는 화면을 구성하는 부분에서 사용되는 프로그래밍 언어라고 보시면 될 것 같습니다.(자바스크립트의 이름을 만들 당시에 자바라는 언어가 유행을 해서 자바스크립트라고 이름을 지었다고 하네요.원래 이 언어의 이름은 라이브 스크립트입니다.)물론 자바스크립트로 서버를 구축을 할 수도 있습니다.(node.js라고하는 플랫폼입니다. 자바스크립트를 이용하여 서버를 구축할 수있는 플랫폼입니다.자세한 사항은 책이나 위키피디아를 참고하시면 좋을 듯 합니다.)각설하고,아무튼 자바스크립트라는 언어에 대해서 좀더 자세히 알아보겠습니다.자바스크립트라는 언어를 알기 위해서는 일단 스크립트라는 것이 무엇인지에 대해 좀더 알아야 합니다.위키피디아에 따르면 스크립트 언어란,'응용프로그램과 독립하여 사용되고 일반적으로 응용프로그램의 언어와 다른 언어로 사용되어최종사용자가 응용프로그램의 동작을 사용자의 요구에 맞게 수행할 수 있도록 해준다.' 라고 정의하고 있습니다. 어렵지요? 쉽게 말하면 연극에서 ‘스크립트’라는 것에 서 유래 되었다고 하고, 그뜻이 연극에서의 시나리오, 각본을 의미합니다. 그 의미를 그대로 적용하면 ‘대본, 시나리오만 제공하면 알아서 작동한다.' 는 그런 뜻이지요.대충 감이 잡히셨나요?자바스크립트는 TIOBE 라는 소프트웨어 회사에서 발표한 2014년 프로그래밍 언어순위에서도 상당히 상위권에 차지를 하고있습니다.그만큼 많이 사용이 된다는 의미겠지요.매우 좋은 것처럼 보이지만 자바스크립트가 만만한 언어는 아닙니다.제가 듣기로는 ‘자바스크립트는 악마의 언어’라고 불린다고 들었습니다.그렇게 불리는 이유는 그만큼 언어가 유연하기때문입니다.조금전에 언급했듯이 연극에서의 대본과 시나리오를 프로그래머가 직접 만들어야한다는 것입니다.그만큼 프로그래밍하기 쉽지 않다는 것이겠지요.자바스크립트는 단점이 바로 장점입니다.'유연하다는 것' 때문에 사람들의 입맛에 맞게 커스터마이징을 할 수있다는 것이고웹상에 이미 프로그래머들이 만들어 놓은 많은 라이브러리가 있습니다.우리는 이걸 잘 이용하면 되겠지요?좀 더 자바스크립에 대해서 자세히 알고싶다면 ‘javascript inside’라는 책을 참고하여 공부해보시면 좋을 듯 하네요. ---------------------------------------------------------------------------------------------------저는 크몽 개발팀의 Sean이었습니다. #크몽 #개발자 #개발팀 #팀원소개 #기업문화
조회수 1253

첫번째 편지

아래 메일은 3월 말에 8퍼센트 프로덕트팀 분들께 보낸 첫 번째 편지입니다. 메일을 쓸 때의 마음을 잊지 않고 약속을 지키고자 공개해 둡니다.안녕하세요? 원우님, 연태 님, 부(혜은)님, 문수님, 진님, 보영님, 해원님.(이름의 순서는 오늘 밤 제 기분에 따라 랜덤으로 정해졌습니다. 신경 쓰지 마세요)여러분들께 보내는 첫 번째 메일입니다. 반갑죠? 아기를 재우다 보니 늦은 밤이 되어 버려서 연애편지를 쓰고 싶어 졌습니다.현재 저를 포함하면 우리 팀은 8명이고, 한 주 뒤에 세 분이 더 오시면 이제 팀은 11명이 됩니다. 놀라운 일입니다. 채용을 위해 사람을 만나다 보니 지금 우리 팀에 대해서도 많은 것을 생각해 보게 됩니다. 우리 팀 어떤 것 같으세요? 저는 정말 좋은 팀이라고 생각합니다.다양한 곳에서 다양한 경험을 한 사람들이 모여 있습니다. 서로 간의 커뮤니케이션을 즐거워합니다.좋은 제품을 만들어 내기 위한 생산적인 토론을 합니다. 자기 일보다 다른 사람의 일을 우선시합니다.각 개인의 능력이 훌륭합니다. 어때요? 동의하시나요? (네!) 제가 여러분께 해드릴 수 있는 것이 많지 않습니다만, 그중 제일 중요한 것은 여러분이 좋은 팀에서 일할 수 있도록 하는 것입니다.좋은 분을 채용해서 여러분이 서로에게 자극받고 발전할 수 있도록 하고 싶습니다.  그렇게 모인 좋은 분들이 자신의 능력을 충분히 발휘하고 최대한의 시너지를 낼 수 있도록 환경과 문화를 만들어 가는 일이 제가 해야 할 일입니다.우리 손으로 만든 제품을 통해 1000명에 가까운 사람들에게 170억이 넘는 돈이 전달되었습니다. 하루에 1억이 넘는 돈이 여러분이 만든 제품을 통해 중개되고 있습니다.그리고 올해 말에는 이 숫자의 자릿수가 달라질 것입니다. 대단하죠?방금 캡처한 첫 페이지. 저 숫자도 이제 과거가 되었습니다우리는 "사용자가 필요로 하는" "목적이 분명한" “하나"의 제품을 만들고 있습니다. 이것 또한 행복한 일입니다. 우리의 세계에서 내가 기획한 것, 디자인한 것, 개발한 것이 그냥 사라져 버리는 경우는 수도 없이 많습니다. 하지만 우리가 만들고 있는 것은 사람들이 꼭 필요로 하는 것이고 여러분들의 노력은 빛나는 제품이 될 것입니다. 지금까지 우리가 만들어온 제품에 자부심을 가져주세요. 그리고 앞으로 우리가 만들어갈 제품에 그 자부심을 담아 주세요.마지막으로 여러분 각 개인이 가진 꿈과 목표를 놓지 말아 주세요. 회사의 성공 재료로 여러분의 열정이 소모되는 것이 아닌, 여러분 이상의 실현을 통해 회사가 성공하길 바랍니다. 자신의 방향과 회사의 방향이 일치하지 않는다고 판단되면 참거나 기다리지 말고 그 두 가지를 일치시키기 위한 최대한의 노력을 해주세요. 회사의 방향도 충분히 바뀔 수 있습니다.고마워요. 다들. 내일 저를 만나거든 이 메일에 관한 이야기는 말아주세요. 이런 말들을 직접 하기 힘들어서 메일로 쓰는 거니까요.안녕!#8퍼센트 #에잇퍼센트 #팀워크 #조직문화 #기업문화 #팀문화 #팀플레이 #협동 #편지 #초심
조회수 1460

[마케터]내가 뭐라고 강의를 해?

#페이스북 #마케팅 #강의 #뒷북후기 #퇴사학교 #콘텐츠 #콘텐츠마케팅 #콘텐츠마케터 #마케터"내가 뭐라고 강의를 해?"강의를 처음 맡았을 때는 그렇게 생각했다. 그래서 더더욱 내가 잘 알아서 누군가를 가르치는 것이 아니라, 그냥 편하게 내가 1-2년 남짓이나마, 경험하고 배운 것들을 나눠줘야겠다 생각하려했다.대학생, 실무 마케터, 창업자 등등에게 몇 차례 강의를 하다보니 배우는 게 참 많다.1.내가 너무나도 당연했던 것들이 그 누군가에게는 완전히 신세계일 수 있구나.때론 꽉 막혀있던 부분을 뻥 뚫어주는 인사이트가 될 수도 있고, 나도 몰랐던 나를 발견하게 하는 새로운 경험이 될 수도, 작지만 새로운 자극이 될 수도 있겠구나.2.그리고 내가 당연하다고 생각한 것들은 어쩌면 정말 당연한 것이 아니구나. 내가 '알고 있다고' 생각한 것들이 나의 언어와 그림, 체계로 표현되지 않으면 이건 진짜 알고 있는 것이 아니구나. 그동안 '배웠다'라고 생각한 것들은 진정 내 것이 아니었구나. 그리고 내가 당연하다고 생각하고 있었지만, 정작 나는 실무에서 정말 실행해본 적이 있는가.3."나는 아직 부족한데... 준비가 다 되면 해야지..."라고 생각하면 뭐든지 평생 할 수 없겠구나. 세상엔 다 준비되고 완벽한 건 없으니까. 내가 지금껏 쌓아온 경험들은 어쨌든 세상에서 오직 '나'만이 경험해 본 시간들이다. 그러니 나의 경험, 시간들은 이미 그 자체만으로 남들에겐 새로운 자극이 될 수 있고, 가치있을 수 있다는 것.예를 들면 콘텐츠 100만 도달. 어떤 콘텐츠 마케터에겐 당연할 수 있지만 누군가에겐 100만 도달이라는 건 생각조차 못해봤을 수 있는 것이다.4.강의라는 것은 여러모로 참 나에게 감사한 기회가 되는 것 같다 :) 스타강사를 꿈꾸지도 않고 전업 강사도 생각은 없지만..어떤 브랜드/서비스/ 사람 성장하게끔 만드는 것을 즐거워하는 나에게는 강의를 준비하는 시간이나 하는 시간이나 끝난 뒤 회고하는 시간이나, 모든 순간들이 참 의미있는 시간인 것 같다 :)-P.s) 그런 의미에서 디지털 마케팅 잘하는 분(..)께 마니 좀 배우고 싶다....ㅠ.ㅠ
조회수 2335

실리콘밸리에서 10일동안 느낀 것

MENTO - (L)Sarah(UX/STORYBOARD) , (R)Eliad(BUSINESS MOEDL)정말 재밌고 많이 자극된 10일이였다. 미드로만 봤던 실리콘밸리.10일 동안 실리콘밸리에서 낮에는 멘토들에게 조언을 받고 또 필드로 나가 고객/이해관계자를 만나고 밤에는 호텔에서 맥주를 마시며 팀원들과 일을 하였다. 평균 수면량이 제일 적었던 단기간이였는데 버스에서 열심히 쪽잠을 자며 컨디션을 유지했다. 일정 중간에 는 페이스북/스탠퍼드를 방문했고 winery , union square 관광하면서 미국의 모든 배경들을 눈에 담고 기억하려고 했다. 이 순간을 절대 잊지 않기 위해서.10일동안 여정을 한 단어로 요약한다면 글로벌이다.무조건 글로벌해지는데 나 자신, 내 젊음을 쏟아부어야겠다고 생각했다. 글로벌에 답이 있다. 처음부터 글로벌을 생각해야 된다. 글로벌에 목숨을 걸어야된다. 글로벌에 모든 것을 투자하다보면 국내에서도 '온니원'이 될 수 있다고 생각한다. 그러니깐 글로벌이 무조건 사업의 핵심이라고 생각한다. 글로벌에 투자해야 되는 이유를 난 2가지를 꼽는다. 첫번째는 탁월한 능력을 가지고 있는 인재들과 함께할 수 있고 두번째는 마켓 쉬프트다.첫번째에 대해선 글로벌로 가면 뛰어나고 다양한 배경을 가진 인재들과 멋진 일들을 할 수 있다. 이런 다양성은 혁신을 만들어낸다. 이질적인 것들이 만나 창의적인 것들이 나온다. 같은 것들이 충돌하면 새로운게 안나온다. 다른게 충돌하면 가능하다. 서로 다른 문화,환경을 가진 인재들이 충돌해서 만드는 제품은 놀랍다. 실리콘밸리라는 프로덕트도 그런 다양한 인재들이 만들어낸 에코 시스템이다. 이런 인재들과 일하는 것은 나의 가슴을 뛰게한다.두번째에 대해선 서로 다른 마켓을 컨트롤 하면서 부가가치를 낼 수 있다는 것이다. 나는 이미 한국이라는 시장을 가지고 있기 때문에 미국으로 간다면 한국-미국이라는 마켓을 컨트롤 하면서 부가가치를 낼 수 있는 기회가 생긴다. 가령 패션을 예로 들어보자.한국에 있는 옷(제품)을 미국에 팔 수 있는 것이다.역으로 미국에 좋은 것을 한국에도 팔 수 있을 것이다.그게 제품이 될 수도 있고 서비스 런칭이 될 수도 있다.(서비스 경우 로컬라이제이션-커스터마이징) 그리고 글로벌의 단위는 사실 언어의 단위와 현지화라고도 볼 수 있는데 영어가 가능하다면 미국 뿐만 아니라 여러 마켓을 컨트롤할 수 있는 역량이 생긴다.이것이 바로 마켓 쉬프트라고 나는 정의를 내린다. 마켓 쉬프트야말로 큰 판을 벌릴 수가 있다. 큰 자본금을 확보하는 길이며 규모가 있는 사업을 할 수가 있다.이것이 글로벌의 힘이며 마켓 쉬프트이다.실리콘밸리에서 가장 많이 배운 것은 팀워크다. 짧게나마 본 실리콘밸리 인재들의 팀워크는 정말 효율적인 느낌을 받았다. 10일동안 서비스 개발을 Paloalto SAP DCC 라는 곳에서 했었는데 아이디어 논의를 할 때에는 포스터잇은 필수다. 그리고 논리를 자주 시각화시키고 많이 논의된 얘기들은 단순하게 요약해놓고 다음 스텝을 넘어간다. 프로토타입을 최대한 싸게 빠르게 만드는 것을 목표로 비즈니스 캔버스 모델도 적극적으로 사용한다. 또한 구성원 모두가 주도적으로 논의들을 이끌어가고 자신의 생각을 적극적으로 표출한다.(포스터잇으로 해당 주제에 의견을 붙여나감) 1.논리를 시각화하는 것에 대해서 2.팀끼리 논의에 대한 합의를 이루는 방법에 대해서 많이 인사이트를 얻었다. SAP은 대기업에도 불구하고 스타트업처럼 움직이는 느낌을 받았다. 구글과 애플은 세계에서 가장 덩치가 큰데도 스타트업이라고 하는 의미를 알 것 같았다. 상사에게 NO를 하는 건 당연하게 생각한다. 한국 스타트업에서 일할 때는 "위에서 하라던데요?" 인 경우도 종종 있었는데 여긴 그런 것이 없다. 일을 해야되는 이유가 없다면 그 일을 하지 않는다. 사용자에게 어떤 가치를 줄 수 있는지 팀이 합의를 이루어야지만 진행된다. 팀워크의 핵심은 서로를 배려하는 많은 대화라고 생각했다. 그리고 이들의 팀워크 효율은 심플함(본질만 남겨두고 다른 모든 것을 제거하고 포커스하는 것)을 바탕으로 꾸준히 개선될 수 있다고 느꼈다.나는 한국 여러 스타트업들에서 일하면서 가장 중요하게 생각했던 주제가 기업 철학과 문화에 관한 것이였다.창업자의 철학이 기업 문화의 뿌리를 만들고 그 뿌리 위에서 서로 다른 배경을 가진 사람들이 협업하면서 자기 회사의 고유 문화를 만들어나간다. 잘 만들어진 기업 문화는 사내의 의사소통을 굉장히 효율적으로 만든다. 이는 결과적으로 모든 동료들이 사내기업가 되는 것을 돕는다.(반대로 소통이 막히면 결과적으로 팀원들은 스타트업인데도 불구하고 일반 월급쟁이처럼 일을 하게 된다.) 그래서 많은 회사들이 실패하는 이유 중 하나가 사내 의사소통에(전사적 정보 공유)실패들이 쌓이면서라고 판단한다. 소통이 안되니 한 조직인데도 따로 놀고 수직적이게 된다. 협업 효율이 떨어지고 성과 안나오니 제대로된 의사소통을 통한 팀워크를 반성하는 것이 아니라 숫자에 집착하게 되고 고객 만족은 바닥으로 떨어지고 조직에 온갖 잡음들이 생겨나기 시작한다. 그래서 나는 사내 의사소통에 아주 큰 영향을 주고 있는 기업 문화가 정말 중요하다고 생각한다. 실리콘밸리의 경쟁력은 기업 문화로부터 만들어졌다고 생각한다. 그리고 그 문화들의 핵심 공통점은 팀내 정치가 없고 의사소통의 효율화로 사용자에만 집중한다.H1B visa를 통해 다양한 인재들이 실리콘밸리로 모여들 수 있었다. 서로 다른 배경을 가진 사람들이 효율적으로 협업을 하면서 좋은 결과물을 내려면 업무를 진행하기 위한 합의된 효율적인 공유된 양식이 필요하다.(가령, 회사의 어떤 이슈가 생겼을 때 "우리스러운, 우리다운 선택이 무엇인지" 그것은 회사가 추구하는 비전과 문화가 무엇인지에 따라 결정된다.) 이런 공유된 양식이 결국 기업의 문화인 것이고 탁월한 기업의 문화가(여기서 창업자의 훌륭한 철학이 선행- 보통 실리콘밸리에선 "더 나은 세상을 만드는 것") 탁월한 실리콘 밸리의 생태계를 만든 것이 아닐까. Culture is simply a shared way of doing something with passion.-문화는 열정적으로 무언가를 하기 위한 명료하게 공유된 방식이다.Brian CheskyCo-founder, CEO of Airbnb앞 글을 키워드로 정리하면 글로벌,팀워크,기업철학/문화가 될 것이다.한국이 아닌 해외에서 반드시 Earthy inc. 를 나스닥에 상장시킬 것이다. 세계에서 유일하고도 탁월한 기업 철학과 기업 문화를 바탕으로 인류의 라이프 스타일의 질을 향상시키고 그들의 의사결정을 도울 수 있는 위대한 제품군들을 완성시킬 것이다.이 브런치 글의 소제목에 다음과 같이 썼다.Great impact makes a lot of money이 말은 훗날 후배 기업가들에게 가장 해주고 싶은 말이다.기업의 목적은 사전에 나와 있듯이 "이윤의 획득을 목적으로 운용하는 자본의 조직단위" 가 절대 아니다. 기업의 목적은 어디까지나 더 좋은 세상을 만들기 위해 사람들의 삶의 질을 향상시키고 인류에게 영향력을 주기 위한 목적으로서 존재할 뿐이다.많은 영향력이 많은 돈을 벌어다 줄 뿐 그 이상 그 이하도 아니다.모든 기업은 사회적 기업이다.따라서 기업은(스타트업은) 사람들의 삶에 영향력을 끼치는 것에만 집중하면 된다.시총이 600조인 애플과 구글. 그리고 그 외 수백조의 기업 가치를 지닌 수많은 실리콘밸리 기업들이 이 한 줄을 증명해주고 있다고 생각한다.글로벌한 영향력 끼치는 것에 집중하면 된다.그러면 모든 것은 따라오게 되어있다.#페오펫 #peopet #스타트업 #운영 #창업 #창업가 #창업자 #마인드셋 #인사이트
조회수 3532

하늘 아래 같은 레드는 없다

초록색 = 스타벅스주황색 = 나이키노란색 = 이마트다들 한 번쯤은 특정 컬러를 보았을 때 자연스럽게 그 컬러를 사용하는 브랜드가 떠오르는 경험을 해보셨을 거예요. 이처럼 컬러가 브랜드에 미치는 영향은 대단합니다. 브랜드 컬러는 브랜드 아이덴티티를 확실하게 전달함은 물론 구매에 까지 영향을 미치기 때문이죠.데일리의 서비스 앱 '데일리호텔(DAILYHOTEL)'은 브랜드 컬러로 '버건디'를 사용하는데요. 브랜드 가이드를 제작하던 중 이 '버건디'컬러의 Align 필요성을 느끼게 되었습니다. 브랜드 컬러의 영향이 막중한 만큼 그 컬러의 일관성 또한 매우 중요하기 때문이죠. 더군다나 데일리처럼 온(RGB)/오프라인(CMYK)으로 컬러를 사용하고, 넓은 영역과 앱 내의 좁은 영역에서 쓰이는 컬러 값을 다르게 설정하는 경우 각 플랫폼의 컬러 통일화 작업은 매우 중요합니다.(*면적에 따라 달리 적용되는 컬러 값 관련 참조 글 : https://brunch.co.kr/@suyoung/8)AS-IS 파악본 프로젝트를 진행할 당시 데일리의 브랜드 컬러는 #900034 였습니다. 하지만 앞서 말했듯이 넓게 보이는 영역과 작게 보이는 영역에서 컬러 값을 다르게 가져가야 하는 이슈로 진작 앱 내에서는 #b70038이 사용되고 있었죠. 또한 오프라인으로 출력 시에 인쇄용 CMYK값이 아닌 웹용 RGB Hex인 #900034를 그대로 출력하여 버건디가 아닌 어두운 갈색으로 출력이 되고 있었습니다.앱 내의 컬러 재정의(In-App Color)1. 앱 내에 버건디 컬러가 사용되는 부분버건디 컬러는 자체가 강한 컬러이기 때문에 앱 내에서는 CTA 버튼으로 가장 많이 사용되고 있습니다. 모든 화면에 강조색을 과하게 사용할 경우에 눈에 피로도를 주어 콘텐츠에 집중할 수 없는 이슈가 있기 때문이죠. 현재 앱의 내비게이션 바 색상을 흰색으로 처리한 이유도 그 때문입니다.2. 이전 이슈사항아이폰과 안드로이드의 환경이 다르기 때문에 같은 색상일지라도 두 디바이스를 함께 두고 같은 화면을 보았을 경우 색상 차이가 발생합니다. 특히 안드로이드의 경우 기존에 사용하던 #900034 컬러를 적용할 시 어두운 갈색으로 보이는 경우가 있어, CTA 버튼 컬러로 사용 시에 버튼에 대한 명확도가 떨어져 역할에 부족함이 있었습니다.3. 대응사항각기 다른 안드로이드 단말마다 모두 다른 색상을 가져갈 수 없는 문제이기에 어떠한 디바이스던 버건디 색상이 명확하게 보일 수 있도록 다양한 디바이스를 모아 테스트를 거쳐 명도를 밝게 뺀 최적의 버건디 컬러를 뽑았습니다. 앱 적용시 화면프로덕트 자체가 모바일 기반 서비스인 페이스북, 구글의 CI도 모바일이나 웹 환경에서 더욱 가독성이 있어 보이도록 계속해서 CI 컬러를 리뉴얼하고 있습니다. 아래처럼요.(*관련 기사 링크 : http://m.zdnet.co.kr/news_view.asp?article_id=20150702091741#imadnewshttp://m.businesspost.co.kr/news/articleView.html?idxno=16798&daum_check=&naver_check=#cb)모바일 기반 타사 브랜드 컬러 리뉴얼 예시4. 결론기존 안드로이드 디바이스에서 #900034 버건디 컬러가 팥색으로 보이던 이슈로 인해 안드로이드, 아이폰 모든 디바이스에 사용하기 좋은 컬러로 재정의하여 #b70038로 새로운 컬러 값을 지정하였습니다.(짝짝)앱 아이콘 컬러 재정의(App Icon Color)물론 예외적인 부분도 존재합니다. 바로 앱 아이콘 컬러의 경우인데요. 현재, 다른 앱 아이콘들과 함께 쓰이는 홈 스크린 화면에서는 다른 앱 아이콘과 함께 데일리호텔 앱에 돋보일 수 있도록 #70038보다 더 밝은 #d1004 c를 사용합니다.이유는 제일 왼쪽의 이미지처럼 기존 컬러 #900034를 사용할 경우, 다른 아이콘들과 비교했을 때 주목성이 약해지게 되므로 아이콘으로써의 역할을 잃기 때문입니다. 많은 서비스들이 앱 내에서 사용하는 지정 컬러가 있지만, 다른 아이콘과 함께 사용되는 홈 스크린 아이콘은 더 밝고 튀는 색상으로 가져가고 있습니다.타사 예시출력용 CMYK 컬러 재정의(Offline Color)모니터에서 사용되는 RGB 컬러를 CMYK로 변환 과정을 거치지 않고 그대로 출력할 경우 색상은 매우 다르게 표현됩니다. 때문에 RGB 값에 맞추어 출력 시에 동일할 수 있도록 CMYK값과 PANTONE값을 따로 추출해야 하죠. 하지만 출력 기계와 인쇄소의 여건에 따라 동일한 CMYK값을 지정한다고 해도 미세하게 다른 컬러로 출력된 것을 받아보기 마련인데요. 이런 이유로 어느 환경에서도 동일한 컬러로 출력할 수 있도록 제작된 컬러칩 PANTONE이 있습니다. 아래는 팬톤 컬러로 테스트를 한 경우입니다.PANTONE컬러를 맞추기 전과 후출력물로 컬러 테스트 결과 PANTONE 1945 c가 새롭게 정의된 브랜드 컬러인 #b70038와 가장 흡사함을 확인할 수 있었습니다. 해서 데일리호텔의 브랜드 컬러는 아래와 같이 재정의 되었습니다.버건디의 친구(Secondary Color)데일리의 브랜드 컬러인 '버건디'가 재정의 되었습니다. 그리고 그 '버건디'는 친구가 필요했어요. 혼자 쓰이기에는 너무 임팩트가 약하고 전달하고자 하는 메시지가 잘 공유되지 않았기 때문이죠.1. Product하지만 앱 내에서 사용되는 컬러는 실질적으로 Main(버건디), Second(골드) 두 가지가 주로 사용됩니다. 또한 홈 화면에 호텔/레스토랑의 등급을 알려주는 뱃지에 사용되는 컬러는 여러 가지로 베리에이션이 되어야 하기 때문에 제한적인 컬러를 사용할 수 없는 이슈가 있었습니다.다양한 컬러로 사용되는 앱내 뱃지 예시2. Brand / Marketing기업 굿즈와 옥외광고 등 데일리호텔의 브랜딩이 노출되는 곳에는 응용을 위해 Second 컬러를 제외한 Accent 컬러가 필요했습니다. 하지만 앱 내에 보이는 이벤트 페이지는 기획전 성격과 이미지에 따라 컬러가 자유롭게 사용되기 때문에 지정된 컬러를 사용하기에는 어려운 이슈가 있었죠.Accent 컬러 적용 예시Second/Accent 컬러 적용이 다소 어려워 보이는 마케팅 컨텐츠의 예시3. 결론- 예외적으로 Brand / Marketing에 사용되는 Accent Color를 따로 선정- Main(버건디), Second(골드)를 공통적으로 사용하되 프로덕트와 브랜드(온/오프라인)에 사용되는 컬러 값은 다르게 적용(*넓은 영역과 좁은 영역에서 다르게 사용되는 컬러 값 이슈)확립된 데일리의 브랜드 컬러!이런 과정으로 지금의 데일리 컬러 '버건디'가 탄생했습니다. 어찌 보면 단순해 보이지만 많은 테스트를 거쳐 유저들에게 최적의 상태로 표현되기 위해 노력하고 있답니다.(!)앞으로 이런 데일리의 노력 많이 지켜봐주세요 :)진행In-App Color/App Icon Color : Product팀Offline Color/Secondary Color : Creative팀#데일리 #데일리호텔 #디자인 #디자이너 #UI #디자인철학 #인사이트
조회수 1296

스타트업을 시작하며...3

Phase 11. 살짝 암초에 걸리다.주로 사용하게 될 5ml 향수병 샘플을 중국에 있는 회사들에 요청하였는데.. 3개 회사 것이 도착하였으나, 아직 맘에 드는 것이 없다. 이런 된장. 그러던 중 관계가 있다던 fragrance house의 샘플 바틀을 보고 "바로  이거야"라는 느낌이 들어 급하게 메일을 써본다. 30ml 알루미늄 바틀은 좀 많이 비싸지 않을는지? 5ml 바틀은 사이즈가 없는 것은 아닐는지? 걱정 걱정에 잠 못 드는 밤들 이 살짝 생겨난다.Phase 12. 부정적인 의견들을 만나다.. 하지만 그것을 극복해보자!!이 서비스가 머릿속에서 잘 그려지지 않는데? 많은 사람들은 본인의 입장에서 feedback을 주는 경우가 많다.  그중에서 걸러서 들어야 할 것도 있고, 새겨 들어야 할 내용들도 있을 것이다. 구체적인 occasion을 더 제공해주지 않고 단순히 매월 향수를 보내주는 것에 대한 부정적인 의견이 있었고.. 이것을 6개월 box (보석상자 콘셉트)으로 개선해 가는 방향을 잡아 보았다. 6개월 치 향수 통을 담을 수 있는 box를 제공하면 collection이 완성될 것이고, 빈 자리들을 채워가고 싶은 욕심과 다음엔 어떤 것들이 올까? 에 대한 호기심을 만들어 낼 수 있지 않을까?phase 13. 현장이 답이지 말입니다.packaging design이 꽤나 중이요한 요소임을 처음부터 인지하고 있던지라, 굉장히 다양한 의견들을 만들어 보았다. 담뱃갑 모양, CD case 모양, 리본 형태, 파우치 형태, 등등. 만들어 보고 고민했는데.. 방산 시장을 가면서 새로운 월드를 발견하게 되었다. 참고할 것들이 많이 있었고, 현실적인 가격을 들을 수도 있었다. 아이디어를 mock up으로 만들다 보니.. 과대포장은 벌금을 내게 될 수도 있다는 사실도 알게 되었다. 그러다가 이젠 직접 디자인을 해서, 종이를 자르고, 접고, 접착을 해서 박스를 만드는 단계까지 오게 되었다. 이젠 다시 견적을 뽑아야 할 상황이다.Phase 14. 실마리가 될 수 있는 것들은 조금씩이라도 당겨보자..페이스 북에서 예전부터 알고 있던 디자이너 분이 "파워포인트"처럼 쉽게 웹 페이지를 만들 수 있는 서비스를 기획하고 진행하고 있다는 사실을 발견하고, 바로 연락을 하였다. 일단 만나보자고.. 만났더니 오히려 나에게 더 필요한 서비스를 소개해 주었다. Six Shop! 모든 사람들이 6분 만에 커머스를 만들 수 있도록 해주는 목표를 가진 서비스다. 이전에 고려하고 있던 WordPress + Woo-commerce 조합보다 훨씬 간단하게 사이트를 제작할 수 있다!! 코딩에 대한 부담과 시간에 대한 제약이 사라진다. 일단 사람을 만나고 나에 대해서 설명을 하고 도움을 요청하면 새로운 길들 이 나타나는 것을 느낀다.Phase 15. 투자를 받을 것인가?요즘 start up들이 투자받는 규모는 꽤나 크다. 몇 십억에서 몇백억까지 이젠 규모도 제법 된다. 부럽다.. 그런데 고민을 해본다. 투자를 왜 받아야 하지? 투자를  받는다는 것은 내가 갈 수 있는 속도보다 빠른 속도로 목표에 도달하기 위해 인재를 구하고, 마케팅을 하고, 개발에 힘을 쓸 수 있다는 것이다. 나에게 투자가 필요할 것인가? 나에게 1억이라는 투자금이 들어온다면 무엇을 해야 할까? 과연 필요할 것인가?#파펨 #스타트업 #창업가 #창업자 #마인드셋 #인사이트

기업문화 엿볼 때, 더팀스

로그인

/