[사무환경 가이드] 사무환경이란 무엇일까요? (공간편)

안녕하세요. 김준석 컨설턴트 입니다.

사무환경이라는 단어를 들었을 때 어떤 요소가 생각나시나요? 크게는 < 인테리어 공간과 가구부터, 디테일하게는 조명, 컬러부터 동선까지 다양한 요소가 생각 >나실 겁니다. 일하는 공간인 < 사무환경 > 을 만들기 위해서는 이렇듯 많은 요소들을 신경 쓰고 처리해 주어야 하는데요.

어떤 요소가 필요한지는 알고 있지만 어떻게 그 요소를 선택하고 관리해야 하는지에 대해서는 잘 알고 있지 못 합니다. 그러다 보니 같은 공간에서도 일의 효율이 높은 회사가 있는 반면, 공간을 잘 활용하지 못한 회사도 생겨나게 됩니다.

오늘은 다양한 사무환경 요소 중 가장 대표적인 < 공간 >에 대해 간단히 설명드리도록 하겠습니다. 이 공간 팁을 이용해, 사무환경의 초석이라 할 수 있는 공간을 선택할 시에 고려해 보시면 좋을 것 같습니다.

  • 공간의 크기

공간을 임대할 때 가장 중요한 건 사무공간부터 회의공간, 휴게공간을 포함할 수 있는 적합한 크기의 공간을 찾는 것입니다. 자신들에게 필요한 공간의 크기를 결정할 때는, 생각했던 공간 크기에 비해, 실제 가구가 세팅된 후 체감하는 공간 크기 차이가 많기 때문에 전문가에게 자문을 구하는 게 좋습니다.

단, 스스로도 쉽게 공간의 크기를 측정해 보기 좋은 방법이 있는데요. 한 구성원의 자리에 가구가 세팅되었을 때 필요한 공간의 크기를 인원 수별로 더해보는 겁니다. 사무실에서 기본적으로 사용되는 < 1,400*700mm > 크기의 책상을 사용한다면, 책상 뒤편으로 의자가 편하게 움직일 수 있도록 800~1,000mm 정도, 측면으로 600mm 정도의 여유 공간이 필요합니다. 만약 이동통로로서의 역할까지 해야 한다면, 그곳에 12,00mm 정도의 통행 공간을 더해주면 됩니다.

즉 이동 동선을 제외하고, 일반 사무직원 한 사람의 자리는 최소, 1.1 PY (3.4m^2) 정도가 필요하다는 점을 인지하고 공간을 구성하면 좋을 것 같습니다.

  • 공간의 동선

건물의 계단 실과 엘리베이터에서의 사무실까지의 접근 동선은 거래처나 손님이 방문하는 사무실이라면 꼭 고려해야 하는 요소 중에 하나입니다. 화장실과 같은 공용공간과 거리가 가까우면 좋지만, 사무실을 찾아오는 동선과는 겹치지 않고, 방향이 다른 경우가 좋고, 타 사무실과 입구가 마주 보는 경우라면, 출입문은 바깥이 아닌 안쪽으로 열려 서로의 동선에 방해가 되지 않는 곳을 선택하는 것이 좋습니다. 고객의 입장에서 사무실을 찾아오는 길이 접근하기 쉽다면, 기분 좋게 미팅에 참가할 수 있겠죠?

내부에서는 주통로와 보조통로 등을 설정하고, 공간의 위계를 나누어 < 일하는 공간과 접객 공간을 나누어 주는 게 좋습니다 >. 가장 많은 통행이 이루어지는 주동선의 경우 두 사람이 자유롭게 지나다니고, 캐비닛을 설치해도 무리가 없을 정도인 최소 1400 이상의 동선폭을 확보하는 것이 좋습니다. 그 이외의 동선은 이동하는 빈도와 상황을 고려하여 폭을 설정하는 것이 좋습니다.

  • 공간의 높이

천장의 높이는 공간감과 분위기를 형성하는 공간 선택의 중요한 요소입니다. 공간의 높이에 따라 근무자들의 심리상태에 영향을 받고, 기업의 문화와 업무 방식을 보여줄 수도 있는 요소이기에, 회사의 업종과 업무 특성을 고려하여 사무실의 높이를 선택하는 것이 좋습니다.

실제 많은 공간 분석가들의 실험을 통해 같은 면적하에서 높이가 주는 영향력이 어느 정도 입증이 되었는데요, 높은 높이의 천장은 낮은 천장에 비해 자유롭고, 추상적인 느낌을 주기 때문에 < 창의력이 요구되는 업종이나 아이디어 회의가 수시로 발행하는 업종 > 에 적합합니다. 반면에 정적이고 집중이 잘 되는 느낌의 낮은 천장의 경우 < 재무나 회계 등 경영 전반적인 업무나 자료 정리 등 집중이 필요한 업종 > 에 적합합니다.

  • 공간의 외기마감

외부 마감이 왜 중요한가라는 의문을 가질 수 있지만, 건축물의 외부의 마감에 따라 내부 공간의 냉, 난방은 많은 영향을 받기 때문에 외부 마감을 확인하는 것이 좋습니다. 새로운 건축물에 많이 적용되는 커튼월 건물의 경우, 전면이 유리이기 때문에, 차양(들어오는 빛을 차단)에 어느 정도 한계가 발생하고, 콘크리트나 조적벽에 비해 여름에는 덥고 겨울에는 춥습니다. 물론 요즘은 이중부터 삼중유리와 차양막이 서치된 다양한 소재가 나오고 있지만, 블라인드로 24시간 가려져있는 사무실을 원하지 않는다면, 외기에 면한 사무실의 환경도 꼭 고려해야 하는 요소입니다.
이 이외에도, 별도의 인테리어 공사를 하지 않을 계획이라면 기존 공간의 마감상태도 확인하는 것이 좋습니다. 인테리어( 벽체/천장/바닥 )의 마감상태와, 설비 공조 ( 에어컨/배기 상태/스프링클러 ) 등을 체크하고, 전기배선과 허용량 등을 꼼꼼하게 체크하여 추가로 발생할 수 있는 비용을 줄이는 것이 사무환경 공간 선택의 중요 요소입니다.

이 이외에도 < 가구, 조명, 컬러, 소음 등 > 사무환경을 이루는 요소는 다양한데요. 다음번엔 < 조명, 컬러, 소음 > 등을 설명드리도록 하겠습니다.

단순해 보이지만, 모든 사무환경의 기본이 되는 공간을 선택할 때 고려할 점을 소개 드렸습니다. 업종의 특성과 회사의 문화, 직원들의 일하는 스타일에 따라 공간 선택이 이루어진다면, 같은 공간일지라도 일의 능률을 높이는 똑똑한 사무환경이 될 수 있을 것입니다.

사무환경 무료 컨설팅 신청하기

[작성자] 김준석 컨설턴트 / https://www.rocketpunch.com/@umesubaru

[출처] 공간 컨설팅 / http://blog.naver.com/umesubaru

[사무환경 가이드] 스타트업. ‘사무환경’ 이 왜 중요할까요?

안녕하세요. 김준석 컨설턴트 입니다.

사무환경에 대한 상담을 진행하다 보면, 많은 분들이 사무환경을 단순히 외부로 보이는 인테리어나 가구만을 생각하는 경우가 많습니다. 하지만, 사무환경이란 그 공간 안에서 일을 하는 사람들의 심리상태부터, 신체적인 쾌적함 등을 고려해 일을 능률적이고 창의적으로 수행할 수 있도록 돕는,공간 전략적인 의미를 내포하고 있습니다. 그렇기에, 단순히, 해외 유명 기업들의 인테리어를 쫓기보다는, 각 기업의 특성과 일하는 방식, 문화등을 고려하여 전략적인 사무환경 계획을 세울 필요가 있습니다. 그럼 이러한 “ 사무환경 “ 이 왜 “ 스타트업 “ 기업들에게 중요할까요?

▣ 회사의 문화와 역량을 보여줄 수 있는 홍보수단


사진 출처 From Unflash.com

스타트업 기업에게 중요한 요소 중 하나는, 아직 브랜드 이미지가 약한 회사를 홍보하고 투자 유치를 하는 것입니다. 이를 위해, 투자자를 초정해 설명회를 하거나, 자신들이 지닌 아이디어나 상품등을 어필하는 경우가 많습니다. 많은 회사가, 공개 세미나룸을 대여하거나, 직접 투자처에 찾아가는 경우도 있지만, 직접 자신들의 사무공간에서 회의가 일어나는 경우도 많습니다. 그럴 때, 자신들의 문화와 조직의 신념등이 담긴 사무환경은 그 회사를 판단하는 중요한 요소가 될 수 있습니다.

상품의 가치를 떠나, 조직이 지향하는 가치와 전략, 회사를 운영하는 경영진의 마인드가 고스란히 드러나는 사무환경은 그곳을 방문하는 사람들에게 회사의 기업이미지를 가늠할 수 있는 가장 직접적인 시각적 요소이기 때문입니다.

“구글이나 페이스북, 드롭박스” 와 같은 자유로운 분위기의 IT기반 회사들은, 오픈평면에 휴게공간과 업무공간 등의 경계가 모호하고 자유로운 분위기를 풍겨, 자신들의 창의성과 열린 경영방침을 보여주고, “알리안츠, 베이커 앤 멕케지” 와 같이 고객 관리가 중요한 로펌이나, 보험회사의 경우 공간의 위계를 형성하고, 고급스러운 분위기를 형성하여 철저한 고객관리와 신뢰를 줄 수 있는 기업임을 보여줍니다. “디자인회사”의 경우 자신들의 디자인 역량을 보여줄 수 이는 기회이기 때문에 사무환경에 더 많은 투자를 하고 있고요.

이와 같이 단순히 일하는 공간으로만 생각하던 사무환경은 회사의 문화와 신념, 역량을 표현함으로써 투자 유치의 전략이 될 수 있습니다.

▣ 인재를 유치하고 관리하는 복지수단

사진 출처 From Unflash.com

포춘지에서는 매년 전세계에서 일하기 좋은 회사를 선정하여 발표하고 있습니다. 그중 10년동안 7차례 가장 일하기 좋은 기업으로 선정된 회사가 있는데요. 바로 구글입니다. 구글이 선정된 가장 큰 이유는, 직원들에게 주어진 복지와 유연한 회사 방침 이외에, 사무환경이 큰 비중을 차지하고 있습니다.

다양한 휴게공간과, 직원들의 업무형태를 고려한 사무환경을 구성함으로써 일하고 있는 직원들의 만족도를 높이고, 그들을 통해 알려진 멋진 사무환경과 기업문화는 자연스레 많은 인재들이 일하고 싶어하는 회사로 관심을 갖게 하는 효과가 있습니다.

많은 스타트업에서는 좋은 인재 유치 및 유지관리가 힘들다고 합니다. 유사한 환경의 업무형태라면 많은 사람들이 조금 더 좋은 복지와 네임밸류가 있는 기업에서 일하고자 하기 때문인데요. 하루의 대부분의 시간을 보내는 사무환경이, 직원들의 만족도를 높여준다면 자연스레 이미 소속되어 있는 직원은 좋은 업무환경으로 회사의 만족도로 이어지고, 근속하는 이유가 될 것이고, 이는 회사의 이미지 향상 및 인재 유치에도 많은 효과가 있을 겁니다. 자연스레 사무환경의 만족도는 업무 효율성도 높아질 겁니다.

이렇듯, 사무환경은 스타트업에게 긍정적인 효과를 기대할 수 있게 합니다. 기업 문화 정체성 형성은 물론 인재의 유치 및 유지관리에 유리한 점을 생각해 본다면, 사무환경에 대한 투자는 스타트업의 중요한 회사 관리의 방법 중의 하나라는 것을 알 수 있습니다.

사무환경 무료 컨설팅 신청하기

[작성자] 김준석 컨설턴트 / https://www.rocketpunch.com/@umesubaru

[출처] 공간 컨설팅 / http://blog.naver.com/umesubaru

[법무 가이드] 주식회사 설립 시 최저자본금은 얼마인가요?

안녕하세요. 정호석 변호사입니다.

최저자본금을 알려 드리기 전에 주식회사의 ‘자본금’을 이해하는데 필요한 몇 가지 개념을 먼저 설명 드릴까 합니다. 액면주식, 무액면주식, 액면가액, 발행가액 등인데요. 아래 내용을 참고해 주십시오.

[1] 이해를 도와주는 기본 개념들

| 액면주식: 액면가가 기재되어 있는 주식. 우리나라 주식의 액면가는 상법상 1주 당 100원 이상이며, 액면주는 전부 균일한 가격으로 발행되어야 합니다.

| 무액면주식: 증권에 액면가는 없고 주식의 수만 기재되어 있는 주식. 무액면주식은 회사 주식의 시가가 액면가 이하인 상황에서도 발행할 수 있기 때문에 자금조달이 용이하다는 장점이 있습니다. 단, 발행가액의 결정에 공정을 기하기 어려운 단점도 있습니다.

| 액면가액: 증권의 표면에 기재되어 있는 금액 자체를 뜻합니다. 주식 발행 시점에 투자된 현금이나 자산의 금전적 가치가 그대로 반영돼 있습니다. 하지만 회사가 영업을 개시한 후 시간이 경과하면 시장가격이 형성되면서 뜻 없는 숫자가 되어 버립니다.

| 발행가액: 주식 발행 시 주식 인수인이 회사에 납입해야 하는 1주의 가격을 의미합니다. 발행가액은 회사 설립 시에는 정관에 의해 정해지고, 신주 발행 시에는 이사회의 결정을 통해 정해집니다. 통상적으로 신주의 발행가액은 액면가액 이상이어야 합니다.

[2] 주식회사의 자본금

회사가 액면주식을 발행하는 경우, 주식회사의 자본금이란 발행주식의 액면총액(액면주식 1주의 가격 X 발행 주식의 총수)을 의미합니다(상법 제451조 제1항).

회사가 무액면주식을 발행하는 경우의 자본금은 주식 발행가액의 2분의1 이상의 금액으로서 이사회 또는 주주총회에서 자본금으로 계상하기로 한 금액의 총액을 의미합니다(상법 제451조 제2항). 그런데 무액면주식이 2011년 개정상법에서 도입된 것이라 생소해서 그런지 현재까지는 무액면주식을 발행하는 경우가 많지 않습니다.

[3] 주식회사 설립 시 최저자본금

2009년 이전에는 상법상 회사의 최저자본금이 5천만원으로 정해져 있었습니다. 따라서 주식회사를 설립하려면 최소한 5천만원을 자본금으로 납입해야 했습니다. 그런데 2009년 2월 개정상법에서 최저자본금 관련 규정이 삭제되면서 지금은 상법상 최저자본금과 관련된 제한 규정이 더 이상 존재하지 않습니다.

다만, 액면주식의 최소액면금액이 100원으로 정해져 있기 때문에 실질적으로 액면주식을 발행하는 경우의 최저자본금은 100원이라 할 수 있습니다(실무적으로는 최저자본금을 너무 작게 하면 나중에 사업자등록증을 발급받을 때 어려움이 있기 때문에 100만원 이상으로 하기를 권해 드립니다).

회사를 설립할 때에는 자본금뿐 아니라 수권주식의 수도 결정해야 합니다. 수권주식의 수는 법인등기부등본에 ‘발행할 주식의 총수’로 표시되는데, 이는 회사 설립 이후 주주총회에서 정관 개정의 절차를 거치지 않고 이사회가 수권주식의 수 범위 내에서 자유롭게 주식을 발행할 수 있다는 점에서 의미가 있습니다.

2011년 개정상법 이전에는 설립 시 최소한 수권주식의 4분의1 이상의 주식을 발행하도록 했습니다. 그로 인해 수권주식의 수는 최초 설립 시 발행하는 주식의 4배 이상으로 할 수 없었습니다. 그러나 2011년 개정상법에서 위 내용을 규정한 상법 제289조 제2항이 삭제되면서 현재는 ‘수권주식의 수(발행할 주식의 총수)’에 대해서도 아무런 제한이 없습니다.

하지만 법률상 가이드나 제한이 없다고 아무 기준 없이 수권주식의 수를 정할 수는 없을 것입니다. 수권주식의 수를 정할 때는 향후 엔젤투자, 시리즈 A 투자, 시리즈 B 투자 시 발행할 주식 수 등을 미리 계산해본 후 예측 수량보다 여유 있게 결정하는 것이 바람직합니다. 만일 수권주식의 수가 여유가 없는 경우에는 수권주식 수를 변경하기 위한 주주총회를 개최하고, 이러한 내용을 반영하는 변경 등기를 마치면 변경된 수권주식 수의 범위 내에서 이사회를 개최해 주식을 발행할 수 있습니다.
모쪼록 제 지식과 경험이 회사를 운영하는데 조금이나마 도움이 되어 회사를 우뚝 세우시길 기원합니다. 감사합니다.

스타트업에 특화된 경영지원 서비스 보기

[작성자] 법무법인 세움 정호석 변호사 / https://www.rocketpunch.com/@hoseok.jung

[출처] 법무법인 세움 / http://blog.naver.com/seumlaw/220310393329

J커브 성장을 위한 나침반, ‘서비스 통계 대시보드’ 개발기

‘수억 명의 사용자’ 같은 거대한 목표는 ‘감’으로는 결코 달성할 수 없다

각자가 만들고 있는 제품의 특성에 맞는 올바른 지표(Metric)를 선택하고, 그 지표를 꾸준히 개선해 나가는 것은 J 커브 성장을 달성하기 위한 가장 핵심적인 활동이다. 문제를 모르면 개선할 수도 없기 때문이다. 그런데 이런 고유한 지표를 확인하는 것 자체가 어렵다면 실제 업무에 있어서 활용도가 크게 떨어지기 때문에, 클릭 한번에 확인할 수 있는 ‘대시보드’를 만드는 것이 좋다.

이 활동의 중요성을 알고 있는 로켓펀치는 많은 노력을 들여 로켓펀치만의 지표를 구성하고 쉽게 확인할 수 있는 대시보드를 구성했다. 이 글에서는 그 과정에서 얻었던 지식들을 나누고자 한다.

대시보드 구상 단계

대시보드의 실제 개발에 앞서 실무적으로 고려해야 크게 두 가지다. ‘어떤 데이터를 보여줄 것인지’와 ‘어떤 시간 단위를 사용할 것인지’에 대한 결정이다.

보여줄 데이터에 대한 결정

로켓펀치는 사용자가 생성한 데이터를 재가공하여 또 다른 사용자들과 연결해 주는 ‘사용자 참여형 콘텐츠 플랫폼’이다. 이런 특성을 가지는 서비스의 성장에 가장 중요한 것은 사용자들을 점점 더 서비스에 많이 참여하도록 하는 것이다.

예를 들어 우리가 게시판 기반의 커뮤니티 서비스를 만들고 있다면, 회원 가입 없이 글만 읽던 사용자를 회원 가입을 하게 하고, 글을 쓰게 만드는 것이 참여 수준을 높이는 것이다. 작성되는 글(=콘텐츠)이 많아질 수록 더 많은 사람들이 그 글을 보기 위해 우리 서비스에 방문할 것이기 때문이다.

로켓펀치에는 회원가입 없이 다른 사용자들의 프로필이나 기업 정보, 채용 정보를 보는 ‘방문자’들이 있고, 본인의 프로필을 상세히 업데이트하고 기업 정보와 채용 정보도 기재하는 ‘회원’들이 있다. 로켓펀치가 올바른 방향으로 나아가고 있는지는 방문자들이 회원으로 전환되는 비율을 통해서 알 수 있으므로, 대시보드는 한눈에 사용자들의 ‘참여 수준’을 볼 수 있는 항목들로 구성이 되어야 한다.

예를 들면 아래와 같은 항목들을 한눈에 확인할 수 있는 funnel 분석 그래프를 대시보드에 표시하는 것이다.

– 전체 방문자 수

– 전체 방문자 수 대비 재방문자의 비율

– 전체 방문자 수 대비 회원 가입을 한 비율

– 회원 가입자 중에서 프로필을 상세히 업데이트 한 비율

데이터 처리 시간 단위에 대한 결정

데이터를 대시보드에 표시함에 있어서 ‘시간 단위’는 아주 중요한 요소다.

예를 들어 우리가 ‘메시징 플랫폼’을 만들고 있다고 가정해 보자. 메시징 플랫폼이 사람들에게 제대로 가치를 주고 있다면, 당연하게도 사람들이 하루에도 여러 번 사용해야 한다. 그런데 어떤 외적인 문제가 발생하여 사람들이 하루에 수회 이상 사용하던 경향이 1주에 수회 사용하는 것으로 바뀌어 가고 있다고 생각해보자. 이는 분명 커다란 문제이며 반드시 대응을 해야 한다. 그런데 통계 데이터를 주 단위로 설정해서 보고 있다면, 이런 변화를 인지하기는 어렵다. ‘주’를 단위를 잡았을 때는 그 주에 그 제품을 한 번이라도 사용했다면 ‘활성 사용자’로 표시가 되므로 일 수회 쓰 던 경향이, 주 수회 쓰는 경향으로 바뀌더라도 데이터 상으로는 변화가 없는 것이다. 매일 쓰는 것이 중요한 서비스라면 시간 단위는 ‘주’가 아니라 ‘일’이어야 한다.

다른 예로 ‘여행 상품 제공 플랫폼’을 생각해보자. 우리가 만들고 있는 서비스가 제대로 동작하고 있다면, 사용자가는 얼마 간 여행 상품 구매 활동을 한 후 우리 서비스를 잠시 떠나야 한다. 여행 과정이 완료되었기 때문이다. 일반적인 경제 활동 인구들은 휴가에 맞춰서 일년에 여행을 2~3번 정도 떠나기 때문에, 우리가 만드는 서비스를 통해 여행 상품 구매 활동에 일주일 정도를 쓰고 여행을 다녀온 후, 몇개월이 지나 다시 접속해서 여행 상품을 구매 하는 패턴은 지극히 자연스러운 경향이다. 그런데 이런 서비스를 ‘주’ 단위로 분석한다면 어떻게 될까? 아주 단순화시킨다면, 1주차의 활성 사용자가 2주차부터 24주차(=6개월)까지는 모두 0으로 표시될 것이다. 서비스는 제대로 동작하고 있음에도 불구하고 말이다. 따라서 사용자가 1년에 한두 번 사용해도 충분한 가치를 느낄 수 있는 서비스라면 데이터 분석의 시간 단위는 최소한 월 단위 이상, ‘월, 분기, 반기’ 등이 되어야 할 것이다.

로켓펀치는 스타트업 채용 정보 제공 플랫폼에서 개인과 기업이 비즈니스의 성장에 필요한 다양한 정보를 얻을 수 있는 네트워킹 플랫폼으로 진화하고 있다. 우리는 로켓펀치가 사용자들이 적어도 일주일에 한번씩은 접속하는 서비스가 되어야 한다고 생각하기 때문에, 데이터를 처리하는 기본 시간 단위를 ‘주’로 잡았다.

대시보드 구현 단계

구현 목표와 로켓펀치의 현황, 그리고 방향

필자(=정희동)가 로켓펀치에 합류하는 과정에서 접했던 로켓펀치의 큰 목표 중 하나는 ‘이용자 분석을 제대로 해 보고 싶다’는 것이었다. 매우 흥미로운 과제라고 생각했다. 이용자 분석을 바닥부터 할 수 있는 기회는 그리 흔치 않고, 많은 것을 할 수 있을 것이라 생각했기 때문이다. 구체적으로 이용자들이 얼마나 들어와서 어떤 행동을 하는지 funnel 형태로 보고 싶고, 각각의 행동에 어떤 이유가 있는지 알고 싶었다.

합류 후 곧바로 시스템에 대한 파악을 시작했다. 로켓펀치 웹 서비스의 로그는 Elasticsearch의 제품군들을 비롯한 몇 개의 도구들을 이용해서 저장되고 있었다 (상세 내용은 아래에 설명).

이용자 식별과 이용자들의 행동에 대한 정의를 마친 후 간단한 결과를 빠르게 내는 방향으로 작업을 시작했고, 앞으로의 분석에 걸림돌이 될 부분들을 빠뜨리고 넘어가지 않도록 주의를 기울였다.

기간의 정의

앞서 언급된 이유에 따라 데이터의 기본 지표는 일주일 단위로 생성하기로 했다. 또 로켓펀치 팀에서는 보통 일주일 단위로 새로 추가되거나 개선된 기능을 릴리즈 하기 때문에 일주일이라는 단위는 기본 단위로 적절하다고 생각되었다. 그리고 매주 지표를 생성해서 최근 12주를 비교하기로 했다.

이용자의 행동

정의한 행동은 크게 보았을 때 아래와 같다.

1. 회원 가입

2. 개인정보 입력

3. 사진 등록

4. 학력 및 경력 추가

5. 자기 소개 수정

6. 친구 추가 및 친구 수락

로켓펀치 웹 서비스를 이용할 때 이루어지는 위 행동들은 서로 다른 API 요청 경로(path of request for API)를 가진다. 그리고 해당 로그는 인코딩된 유저 식별자와 함께 저장되므로 로그인 후 어떤 행동을 했는지는 저장된 로그를 이용자별로 모아서 request path를 보는 것만으로 알 수 있었다.

로그가 저장되는 방식

현재 로켓펀치의 로그는 몇 가지 툴을 사용해 아래와 같은 방식으로 저장되고 있다.

1. 웹 서버 디스크에 로그가 저장됨

2. filebeat가 디스크의 로그를 읽어 별도 서버의 redis로 보냄(이 때 redis는 queue처럼 동작함)

3. redis와 같은 서버의 logstash가 redis에 저장된 로그를 읽어 별도 파일로 저장하고, elasticsearch의 인덱스에도 저장함

4. kibana에서 elasticsearch에 저장된 로그를 살펴볼 수 있음

아래는 elasticsearch에 저장된 로그의 모습이다(일부 항목만 표시).

{
“_index” : “rocketpunch”,
“_type” : “logs”,
“_id” : “AVlfyGjraKOw-4GiFG_H”,
“_source” : {
“offset” : 42279229,
“content_length” : “105455”,
“latency” : “0.303436994553”,
“user_id” : “—-“,
“timestamp” : “2017-01-02T15:24:43.584033Z”,
“ip” : “—–“,
“response_code” : “200”,
“referer” : “https://www.rocketpunch.com/,
“user_agent” : “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36”,
“request_id” : “—–“,
“path” : “/api/users/network_request”,
“method” : “GET”,
}
}

이용자별 로그 모아보기

elasticsearch에 저장된 로그는 kibana에서 찾아보기 아주 편하지만, 검색 결과를 원하는 모양으로 만들고 싶다면 결국 query를 사용해야만 했다. elasticsearch에서 공식적으로 지원하는 언어별 client가 몇 가지 있는데, 익숙한 python을 쓰기로 했다. 사실 이 결정을 내리기 전에 bulk api를 써봤는데, 속도가 꽤 느린데다 대용량 처리 중 오류가 나기도 했다.

1주일 동안의 로그를 읽어 아래와 같은 모양으로 만든다.

이용자 식별자, 시간, 행동, … (나머지 정보들)

이용자 식별자와 시간으로 정렬하면 하나씩 읽어 유저가 어떤 행동을 했는지 알 수 있다. 아래는 그 예시이다.

user_1 2017-01-02T18:58:57.356091Z REG
user_1 2017-01-02T18:59:11.388345Z DET
user_1 2017-01-02T19:04:08.287961Z CAR
user_1 2017-01-02T19:05:10.746819Z CAR
user_1 2017-01-02T19:06:28.057567Z CAR
user_1 2017-01-02T19:08:47.662613Z CAR
user_1 2017-01-02T19:12:04.052667Z EDU
user_1 2017-01-02T19:12:26.961197Z EDU

user_1은 회원 가입(REG) 직후 개인 정보를 입력했고(DET), 몇 가지 경력사항(CAR)과 학력사항(EDU)를 입력했다. 이처럼 간단하게 유저의 행동을 살펴볼 수 있고 원한다면 행동 패턴을 더 정의하고 다른 정보를 결합해 더 상세한 행동을 관찰할 수도 있을 것이다.

로그인하지 않은 유저들 다루기

지금까지 위에서 다룬 내용은 로그인한 유저의 행동을 로그로부터 알아내는 방법이었다. 하지만 로그인하지 않은 많은 유저들의 방문은 어떻게 살펴볼 수 있을까? 웹 서버에서 세션 key를 발급하고는 있지만 발급된 key의 정보를 오랜 기간 유지해야 하며 사람이 아닌 봇에 대한 처리 또한 간단하지만은 않은 일이다. Google Analytics와 비슷한 기능을 하는 piwik을 사용해보려 했지만 필요한 기능에 비해서 유지 및 관리 비용이 부담스러운 수준이었다. 그래서 예전부터 이용하던 Google Analytics에서 전체 이용자 수와 신규 이용자 수를 가져오기로 했다.

실제 대시보드 만들기

지표를 살펴보기 쉽도록 대시보드의 형태로 funnel 정보를 나타내야 했다. 간단한 표와 그래프를 보여주기 위한 도구로는 jupyter notebook을 골랐고, pandasmatplotlib를 활용했다.

지금까지 위에서 만든 데이터를 읽어 DataFrame으로 만들고 각각의 이용자 수와 비율을 동시에 표로 나타냈다. 이는 공휴일이나 연말연시같은 이벤트에 이용자 수가 영향을 받기에 반드시 비율을 같이 볼 필요가 있다고 생각했기 때문이다. 그리고 그래프를 그릴 때 전체 이용자 수와 신규 이용자(대부분 비로그인 이용자들)를 같이 나타내면 로그인 이용자들의 수가 비로그인 이용자 수에 비해 매우 적어 로그인한 이용자들의 행동은 그래프에서 아주 작게 나타난다. 그렇기 때문에 로그인 이용자들의 행동만 따로 그래프로 그려야 눈으로 비율의 변화 정도를 확인할 수 있었다. 아래는 그렇게 그린 funnel 분석 그래프이다.

 

 

남은 과제들

대시보드의 표와 그래프로 funnel 지표는 살펴보았다. 하지만 다음 과정인 ‘각 단계의 행동을 행하거나 행하지 않은 이유’를 알아내는 것은 아직 수행하지 못했다. 이를 위해서는 로그를 더 자세히 여러 가지 방식으로 살펴봄으로써 funnel의 단계별 행동 이외에도 이용자가 어떤 방식으로 서비스를 이용하는지 알아내는 작업이 필요하다.

그리고 로그인하지 않은 이용자의 행동과 가입 후 한 행동을 연결해야 한다. 로그인 후의 행동을 분석해서 이용자 경험을 개선하는 것도 중요하지만 가입 이전에 무슨 행동을 하다 가입에 이르게 되었는지를 제대로 수집할 수 있다면 신규 이용자들을 가입시키는 과정 또한 개선이 가능할 것이기 때문이다.

덧1) 로켓펀치의 데이터 분석, 성장 전략 노하우가 담긴 책 ‘그로스 해킹 – 성장의 시대를 위한 안내서’가 출간 되었습니다.

덧2) 로켓펀치의 다음 데이터 분석 프로젝트는 ‘스타트업 연봉 분석’입니다.

글쓴이 : 정희동 (Software Engineer @로켓펀치) & 조민희 (CEO @로켓펀치)

2016년 감사 인사

로켓펀치를 사랑해 주시는 모든 분들께.

안녕하세요! 2016년은 로켓펀치가 세상에 선 보인 후 가장 큰 변화가 있었던 한 해입니다.

과거 ‘Fast Follower’ 전략의 소품종 대량생산 산업이 성장을 주도했던 한국 사회가 필요로 했던 인재는 ‘주어진 일을 효율적으로 잘 수행할 수 있는 사람’이었습니다. 하지만 지금은 우리가 익히 알고 있는 변화들로, 주어진 틀에 인재를 끼워 맞출 수 없는 시대가 되어 가고 있습니다.

올해 로켓펀치는 이런 변화된 세상에 맞는 비즈니스 정보 플랫폼이 되기 위하여, 기업 정보 중심이었던 서비스를 개인 정보 중심으로 전면적으로 개편하였습니다. 쉽지 않은 변화였고 아직 저희 스스로 느끼는 부족한 점도 많지만, 재능 있는 사람들과 가능성 넘치는 일들의 연결하여 큰 사회적 가치를 만드는 일은, 저희의 사명이자 기쁨이기에 2017년도 이 목표를 향해 나아가려고 합니다.

다가올 새해에도 스타트업과 인재들의 성장을 도울 수 있는 로켓펀치 만들기 위한 노력 멈추지 않겠습니다.

올 한해 보내주신 지지와 도움 정말 감사합니다.

2016년 마지막 날,

로켓펀치 팀을 대표하여 조민희 드림.

+ 덧) 로켓펀치가 성장에 대한 고민을 나누고자 집필한 책 ‘그로스 해킹 – 성장의 시대를 위한 안내서’가 출간 되었습니다. 성장을 고민하는 모든 분들께 도움이 되기를 희망합니다.