스토리 홈

인터뷰

피드

뉴스

조회수 1322

책에선 도무지 알려주지 않는 리얼 민낯대화에 대한 썰

커뮤니케이션에 대한 수많은 명제들이 우글우글해요. 서점가면 두걸음에 10권씩 보이는게 커뮤니케이션 서적이고 온오프믹스 들어가보면 온갖 배너에 커뮤니케이션 천지에요. 자동차가 하늘을 날아다니고 인공지능과 대화가 가능한 시대가 되었지만, 어쩐 일인지 인간과의 대화는 갈수록 어려워지는 것 같아요. 우리는 대화에 대해 양가감정이 있어요. 개짱나서 말섞기도 싫고 혼자 박혀서 넷플릭스나 보고싶은 은둔의 혼과 그럼에도 사람들과 얘기하고 즐겁고 꽐라되고 우하하하 놀고싶은 인싸의 혼이죠. 사람의 영혼은 자신이 만들어나가지만 그릇은 타인과 함께 만들어나가는 것 같아요. 그 그릇은 수많은 대화와 단어, 스킨십으로 이루어져 있죠. 이토록 중요한 게 대화지만, 우린 그 난제를 해결하기 쉽지 않아요. 물론 이 글이 그 문제를 한 번에 해결해주지도 않아요. 하지만, 책에서 쉽게 알려주기 힘든(비문들이라서) 내용들을 곰곰히 생각해서 적어보았어요. 1. 기분나쁘게 듣지말란 소리가 기분나뻐조언과 꼰대질은 달라요. 꼰대질을 너무 무서워하면 아무 말도 할 수 없고, 조언을 남발하면 오지랖이 되죠. 그 중간선을 찾는게 진짜 어려워요. 그 중에서 조언을 빙자한 꼰대질의 대표 구문이 '기분 나쁘게 듣지마, 널 위해서 하는 말이야.' 에요. 널 위해서 해줄 수 있는 건 계좌이체가 제일이에요. 애시당초 팩폭을 하고싶거들랑, 그냥 '내 생각은 말이지..' 라고 말을 꺼내세요. 기분이 나쁘고 안나쁘고는 상대방이 알아서 결정할 일입니다.2. 기분이 안좋으면 들리지않는다.인간은 정보처리보다 분위기파악에 더 특화되어 있어요. 두뇌란 게 그래요. 정보는 생존과 관계가 없지만, 분위기와 눈치는 생존과 관계가 있거든요. 그래서 변연계와 편도체는 다닥다닥 붙어있고 뉘앙스와 맥락을 먼저 파악하려고 해요. 상대방이 얼마나 진리를 설파하는 지는 중요하지 않아요. 그냥 내 맘이 지금 불편하고 불안하면 아무 소리도 들리지 않아요. 상대방에게 뭔 말을 하고 싶거들랑 먼저 기분을 풀어주고 시작하세요. 애인과 싸울 때도 그래요. 일단 마음의 문이 닫히면 그 후엔 제 아무리 성현의 말이라고 할 지라도 의미없는 음파에 불과해져요. 소리는 귀로 듣지만 대화는 마음으로 듣는거에요.3. 팩트는중요치않다. 인정 못 받는게 더 크다.손흥민의 부드러운 피부를 인정대화에서 상처를 입는 건 팩트로 패배했기 때문이 아니에요. 모든 대화의 큰 기조는 '나 좀 알아줘' 에요. 이 험한 세상에서 내가 의미있는 존재란 걸 인정받고 싶어하는 게 사람이에요. 그 방식이 제각각 다를 뿐이지. 모두 자신을 증명하기 위해 살아가요. 대화의 기조는 상대를 인정해주는 데서 시작해요. 그래 네 말이 굉장히 일리가 있어. 맞아, 듣고보니 그래. 그건 놀라운 의견인걸? 등등 오글이터지는 말로 시작해요. 상대방에 말에 맞장구치고 끄덕여주는 건 단순히 이해의 표시가 아니라 당신이 내 앞에 의미있게 존재한다는 것을 긍정해주는 거에요.4. 대부분의 경우 경청이란 일단 니 말을 들을테니,내 말도 들으란거다.종종 경청을 잘하는 사람들은 두 가지 종류가 있어요. 공감력이 동물적이라서 몰입해서 듣는 경우와 다음 수를 위해서 일단 한 수 무르는 경우죠. 독서모임이든 네트워킹 파티든 대부분의 사회생활에선 후자쪽이 훨씬 많았어요. 일단 내 말을 하기 전에 니 말을 먼저 들어주겠다....라는 느낌이 강했달까요. 상대방 말을 들으면서 자기 생각 정리하고 있는 중이었어요. 어떻게 말할까아아아아...하고 말이죠. 마치 자기소개하면서 자기 차례 돌아오기 전까지의 여러분들 머릿속과 비슷해요. 그러니 상대방이 끄덕이며 잘 들어준다고 해서 내 말에 모두 동의하거나 잘 듣고있다고 생각하지 마세요. 5. 싸우려고 맘을 먹었을땐 앞 뒤 재지말고 덤벼대화의 종류엔 싸움도 있어요. 싸움이야말로 대화스킬의 결정체라고 할 수 있죠. 이 때 중요한 건 싸워서 얻는 게 싸움에 쏟아붓는 에너지와 후폭풍 대비 가치가 있는가를 따져보는 거에요. 가족과 애인과의 싸움은 무의미해요. 싸워서 얻는게 1도 없거든요. 하지만 사회생활은 다르죠. 원하는 것을 쟁취하고 나의 의견을 관철시키기 위해 가끔 우린 누군가를 조져놔야 하는 경우가 있어요. 이럴 땐 무조건 이겨야 해요. 이기세요. 욕이나 인격모독은 하지말고 말로 이기세요. 이미 말투에서 싸움의 뉘앙스가 묻어나면 둘 다 긴장하게 돼요. 그리고 방어태세를 갖추죠. 이 때 당신이 지면 당신은 대부분 호구가 되버린다구요. 괜히 지고 돌아오면 이불에다 화풀이만 하게 돼요. 그러지 말고 현장에서 이기세요. 그리고 실질적인 이득을 득하세요. 클라이언트가 말도 안되는 요구를 하거나 자꾸 금액을 깎거나 억지를 부리면서 무리한 조건을 내걸면 싸워서 이기셔야 해요. 어차피 후회하고 빡치는 건 매한가지지만 패배감은 들지 않게 말이죠.6. 안싸울거면 애교를섞어라반면 싸우지 말아야 할 상대도 있어요. 여자친구나 가족 등등 말이죠. 하지만 그렇다고 무조건 순종과 고분고분이 답은 아니에요. 나의 의견을 피력하고 싶을 때가 있잖아요. 그럴 땐 투정과 짜증에 살짝 애교를 섞어요. 애교가 섞이면 말의 스탠스가 조금 애매해져요. 싸우자는 건 아닌데... 뭔가 강하게 자기 의견을 어필하고 있는 느낌이 들죠. 말을 떠나서 분위기가 더 중요하다고 했잖아요. 같은 말인데도 귀여운 표정으로 단호하게 말하는 것과 개정색하고 말하는 것은 달라요. 일단 내가 정색하면 상대는 10km정도 떨어져서 마음의 문을 닫아버린다구요. 먹히는 말을 하고싶다면 상대방의 문을 열어둔 채 말하셔야 해요.7. 말을 해서 들어먹는 사람이 따로있다.그럼에도 안 들어먹는 사람이 있어요. 경청자세의 문제가 아니에요. 타협점을 찾을 의지가 있냐없냐의 문제죠. 상대방의 말을 2시간 내내 경청해놓고 결국 자기 하고싶은 대로 해버리는 건 경청이 아니에요. 그냥 듣고 흘린 거지. 집중해서 들었으면 상대방의 의견과 내 의견을 잘 섞어서 합의점을 찾으려는 노력을 해야해요. 그게 말을 들어먹는 거에요. 만약 내가 아무리 말해도 결국 모든 결론이 상대방 좋은 대로 흘러간다면 지금 당신은 놀아나고 있는거에요. 상대방의 친절한 표정과 말투에 속지말아요. 친절한데 지멋대로 하는 사람보다 개짜증내면서 '그럼 내가 뭘 양보해줬음 좋겠는데!' 라고 투덜대는 사람이 진정한 경청장인이에요.8. 가족끼리 대화가 될거란생각은 접도록하자.가족끼린 대화가 잘 안돼요. 기대치와 원 때문이에요. 나의 원과 너무 많은 영역이 겹치면 상대가 나 같을 거라는 착각에 빠져요. 하지만 물리적인 영역이 겹친다고 해서 대화가 겹치진 않아요. 서로 단어와 대화를 이해하는 배경지식은 달라요. 엄마는 60,70년대에 이미 단어의 뜻과 정의를 모두 익혔어요. 우린 80,90년대에 단어의 뜻을 알고 있어요. 살아가면서 그 간극은 점점 커져요. 서로 다른 언어를 배우고 이해한 채로 살아온 사람들이에요. 가족은 당신과 같지 않아요. 9. 가르치는 말투만큼 짜증나는 건 없다. 짜증을 내는 말투보다 더 짜증나는 건 가르치는 말투에요. 혹시 주변 친구에게서 '넌 진짜 말할 때마다 선생님같아' 라는 말을 들었다면 칭찬이 아니에요.10. 말을 안하면 호구가된다. 많이 하면 관종이 된다적당히 말하는 건 중요해요. 말이 많아지면 실수가 늘어요. 말을 안하면 오해가 늘죠. 적당한 말이란 건 딱 이 정도에요. 상대방 한 마디에 나 한 마디. 그 정도가 제일 적당한 것 같아요. 11. 맥락이 중요하다. 팩트는 집어치워대화를 하던 도중 상대방이 이런 말을 했어요.막 진짜 엄청 험난한 길을 걷는 사람들 있잖아. 그 K2봉 같이 가장 힘들다고 악명이 자자한 산을 오르는 사람들이나 이런 분들 보면 진짜 대단한 것 같아!근데 여기에서 꼭 한 명쯤은 이런 사람이 있더라구요."아냐! K2봉이 가장 힘든 산이 아냐. 실제론 에베레스트 남쪽사면이 가장 사망자가 많다구!"아니 이게 뭐죠? ....대화엔 맥락이 더 중요해요. 자잘한 팩트가 맞고 안맞고는 중요하지 않아요. 지금 상대방의 말은 힘든 것에 도전하는 사람들이 멋지다는 말이잖아요. 지금 K2가 험하냐, 에베레스트가 험하냐를 따지는 맥락이 아니에요. 저 정도 팩트체크는 그냥 맥락에 묻고 넘겨도 돼요. 일일이 하나하나 찝고 대화를 끊는 건 진짜 바보같은 대화법이에요.12. 질문은 최고의 대화법임. 돌아올 대답을 생각하고 말하자.내가 뭔 말을 했을 때 상대방이 어떤 대답을 할 지, 또는 어떤 감정선을 유지할 지 생각해봐야 해요. 대화는 생각을 쏟는게 아니에요. 상대방에게 질문을 던지고 서로의 세계를 탐사하고 이해하는 과정이지. 생각을 쏟을거면 대나무숲에 익명으로 그냥 글을 쓰세요. 뭔가 궁금한 게 있거나 이해가 안되는 부분이 있으면, 찬찬히 물어보세요. 상대방을 조져놓을 생각이 아니라면 돌아올 대답의 여지를 남겨둔 채 말이죠."사업을 할 마음이 있으세요?"이건 질문이 아니에요. '예'라고 대답하면 싸우자는 것 같고 '아니오' 라고 말해도 이상해요. 뭐라고 대답해도 결국 싸우자는 소리밖에 안되는 질문이잖아요. 이건 질문이 아니에요. 공격이에요. 13. 보통 사람들은 항상 욕을 하고 당신이 그 앞을 지나가는 거에요.사람들은 개개인으로 봤을 땐 모두 좋아요. 하지만 이상하게 사람들이 모이면 그 도덕성은 현저하게 떨어지죠. 그건 개인이 집단에 속해있을 때도 마찬가지에요. 사람은 기본적으로 자유를 갈구하지만 자유가 과도해지면 불안해지거든요. 그래서 책임이 줄어드는 집단, 사회, 익명이란 프레임 안에선 굉장히 공격적인 존재가 되기도 해요. 특히 내 눈앞에 보이지 않는 불특정누군가나, 나와 길거리에서 절대 마주치지 않을 것 같은 누군가를 평가할 때는 세상 장미칼을 빼들죠. 혹시 콘텐츠를 만들거나 저처럼 누군가에게 공개적인 무언가를 올리시는 분들은 악플과 비판에 힘들었던 적이 있을거에요. 꼭 이런 경우가 아니라도 뒷다마와 헛소리에 시달려본 분들이 있을거에요. 개의치 말아요.  사람들은 늘 공격할 거리를 찾아요. 도덕적인 가면 뒤에 숨겨진 넘치는 공격성을 어딘가에 풀고싶어 안달이 나있어요. 그저 그 앞을 당신이 살짝 지나간 것 뿐이에요. 당신에게 한 말이 아니니 걱정말아요. 지금 그 앞을 지나고 있다면 귀를 막고 얼른 도망치던가 아님 다 나오라고 해서 본때를 보여주도록 해요. 그리고 이기세요.14. 보통 대화를 아무리 잘해도 핵심은 1,2가지에요.대화를 5시간 내내 해도 결론은 1,2가지에요. 때론 없을 때도 있어요. 5시간의 내용은 중요하지 않아요. 5시간의 분위기가 더 중요해요. 생각해봐요. 소개팅할 때 그 시간동안 무슨 말했는지 다 기억나요? 안나요. 회의시간에 했던 말 다 기억나요? 안나요. 우리가 기억하는 건 그때 즐거웠다~ 라는 느낌적인 느낌 뿐이에요. 5시간의 대화는 그 분위기를 구성하기 위한 부품일 뿐이에요. 하나하나의 컨텐츠에 집중하지 말아요. 대화의 분위기에 더 집중하도록 해요.15. 사람들은 보통 자기가 무슨 말하는 지 잘 몰라요.보통 이걸 삼천포라고 하는데, 우리나라 말에선 더 심해져요. 한국말은 서술어와 주어가 멀어요. 중간에 수식어와 목적어가 잔뜩 들어가요. 서술어가 멀어질 수록 주어가 누구였는지 까먹게되요. 인간의 단기기억력은 고작해야 11단어래요. 실제로 대화를 하다가 접속사 하나만 들어가도 11단어를 훌쩍 넘어가요. 아까 한 말도 기억 안날때가 많아요. 사람은 자기가 무슨 말하는 지 잘 몰라요.(보통 대다수가 말하면서 생각하기 마련이거든요.) 대부분의 대화는 꼬리물기에요. 그냥 마지막 했던 말을 물고 다른 말을 하는 거에요. 그러니 대화의 내용과 논리성을 따지기 이전에, 대화의 마지막을 어떻게 끝낼 지 문미에 집중하세요. 문미가 분명해지면 다음 대화를 이어나갈 수 있어요.
조회수 536

새로운 도전, 만남, 기회

무모한 출발6월5일에 무심코 던진 카톡 안부 메시지가 시작이었다.6월8일 그 친구를 만나 얘기를 시작했고,6월19일에 같은 회사를 다니던 친구를 그에게 소개했다.7월에 퇴사결정을 내렸고,8월 말에 동반 퇴사를 했다.경험하지 읺았던 분야였지만,내가 가진 경험이 빛을 발할 수 있을거라는 무모한 자신감과 늦은 나이였지만, 지금이야말로 오랫동안 내가 할 수 있는 일을 만들어갈 수 있겠다는 막연한 긍정심 덕분이었다.우연한 안부 메시지가 새로운 기회를 열었고,기가 막힌 타이밍에 무모해보이는 결정을 내려버렸다.시작이 제일 어려울 뿐이다8월말 퇴사는 급작스럽고, 주변 사람들을 놀라게 했다.새로운 일을 얼마나 준비했냐는 주변의 질문에는 '2개월이 아니라, 평생을 준비해왔다'는 말이 더 정확할 것 같았다.이런 선택과 결정은 내 인생에는 낯설진 않은 광경이었다.그런 무모한 몇번의 결정이 지금의 나를 만들었고, 한번도 후회해본 적이 없는 의미있는 결정이었다는 것을 실제로 입증해왔다. 이번도 그럴거라 강하게 믿고 있다.그 사이 회사 이름도 만들고, 법인을 설립하고, 사무실 자리도 세팅하고, 명함을 팠고, 2개의 프로젝트도 새로운 법인명으로 계약을 했다. 처음 카톡을 던진 파트너와 그 지인을 포함하여 4명이 주축이 되어, 서로의 전문성과 믿음으로 하나씩 합을 마추고 있다.긴장되지만 흥미롭고, 불안하지만 흥분된다무모할 수 있었던 이유매 시간 주식 현황을 보고 있으면, 앞으로 1시간 안에 주가가 오를지 내릴지 파악하기 힘들다. 즉 눈 앞에 현상을 뚫어지게 바라만 봐서는 큰 흐름을 읽어내기 어렵다는 것이다. 한발 떨어져서 3개월, 1년, 3년의 흐름으로 주식 흐름을 파악하면, 지금이 어떤 추세 곡선에 있는지 유추할 수 있다.단언컨데, 우리가 살고 있는 현재는 인류가 한번도 경험하지 못한 변화를 맞이하고 있는 극적인 순간이다. 그 흐름이란게 매우 크고 느리게 움직이지만, 역사의 페이지가 넘어가고 있는 순간이라는 것을 이해하는건 매우 중요하다.지금 우리가 느끼는 흔들림이 찰랑대는 파도의 파동인지, 기울어지는 배의 움직임인지 구분해야 한다. 피칭과 롤링에 흔들리는 배라면 금방 중심을 잡겠지만, 외부의 충격이나 조류의 변화라면 그동안의 관성에 맡겨서는 안된다. 냉철한 판단과 과감한 결정이 필요하다.외고를 다니다 디자인에 입문한 것도,대학원을 뛰쳐나와 학위를 포기하고 벤쳐기업에 뛰어들고,디자인에서 벗어나 브랜드와 마케팅에 몸 담고,이제는 공간과 부동산 영역에 도전하는 건단순한 호기심 때문이 아니라, 다가올 기회를 봤기 때문이다.해왔던 방식에 의문을 던지자자신의 영역에 오래 있던 사람들은 본질적 질문을 스스로에게 던지기 어렵다. 의문을 깆더라도 자신의 일을 객관적으로 대하기도 어렵다. 그래서 다른 방식을 찾기가 쉽지 않은 것이다.환경이 변화하면, 새로운 솔루션을 찾아야 하는데, 익숙한 공식으로 성공해왔던 사람들은 변화에 적응하기 어렵다. 성공 패턴을 놓아버리기 매우 어렵기 때문이다.내가 할 일이 그것이고, 그걸 해내면 기회의 땅이 될거라 믿는다. 내년 이 맘때면, 멋진 결과들이 나와있을 것이다.지금은 이런 자신감이 필요한 때다.자신감을 가질만큼 파트너들의 시너지도 커지고 있다.짧은 시간이지만 하나씩 입증해가고 있다.멋진 기업, 멋진 혁신을 만들어 갈 것이다.이젠 디자이너의 시대, 기획자의 시대가 될 것이다.
조회수 1584

자바스크립트 기초 문법 정리 Part 1

웹 프로젝트 경험은 많지 않아서 JavaScript(이후 '자바스크립트'로 통칭)를 많이 다뤄보지 못했다. 그래서 Node.js(이후 '노드'로 통칭)를 배우기 전에 자바스크립트 기초 문법을 먼저 정리하고 시작하려고 한다. 이후 계속 노드를 공부하면서 자바스크립트에 대해서도 꾸준히 공부하고 정리할 예정이다.간략하게 정리를 한 글이니 혹시나 개발을 처음 공부하시는 분들은 다른 가이드를 찾아보시는 게 적합할 듯합니다. 이 글은 다른 개발 언어에 대한 경험이 있으신 저와 같은 상황인 분들이 빠르게 자바스크립트를 훑고 넘어가기 좋도록 정리하였습니다.출력[removed]("Hello World!");주석// 한 줄 주석/* 여러 줄주석*/<!-- HTML 주석 -->외부 자바스크립트 연동 - 기본형[removed][removed]변수변수에 저장할 수 있는 데이터의 종류: String / Number / Boolean / Nullvar message;    message = "Hello World!";문자열 안에 HTML 태그를 포함하여 출력하면 태그로 인식되어 출력됨var tag="Tag!!";문자열 데이터에서 숫자열 데이터로 바꾸는 경우var num=Number("7");논리형 데이터 var isChecked=true;var isSmall=150>100;  // truevar string=Boolean("hi");   // 0과 null을 제외한 모든 데이터 true 반환typeof변수에 저장된 데이터형 추출var num=10;[removed](typeof num);    // number가 출력됨비교 연산자다른 연산자들은 타 언어들과 동일하여 생략.var a=10;var b="10";// 데이터형과 무관하게 표기된 숫자만 비교[removed](a==b);   // true[removed](a!=b);    // false// 데이터형도 반영하여 비교[removed](a===b);   // false[removed](a!==b);    // true제어문Java의 문법과 동일if(조건식) {    실행문;} else if(조건식 2) {    실행문 2;} else {    실행문 3;}var 변수=초깃값;switch(변수) {    case 값 1:        실행문 1;        break;    case 값 2:         실행문 2;        break;    default:        실행문 3;var 변수=초깃값;while(조건식) {    실행문;    증감식;}var 변수=초깃값;do {    실행문;    증감식;} while(조건식)for(초깂값; 조건식; 증감식) {    실행문;}여기까지가 '자바스크립트 기초 문법 정리 Part 1'이후 포스팅에서는 자바스크립트의 객체와 함수, 이벤트에 대해 다룰 예정이다.각 객체에서 지원하는 메서드에 대해서는 이번 포스팅보다는 좀 더 자세하게 각 메서드에 대한 기능까지 정리할 것이다. 후에 이벤트까지 정리가 끝나면 보다 간략하게 한 게시글에서 확인할 수 있도록 모든 파트를 통합한 게시글을 포스팅해보자!참고문헌:Do it! 자바스크립트+제이쿼리 입문 - 정인용티스토리 블로그와 동시에 포스팅을 진행하고 있습니다.http://madeitwantit.tistory.com#트레바리 #개발자 #안드로이드 #앱개발 #Node.js #백엔드 #인사이트 #경험공유
조회수 396

프로그래밍 수업의 모든 것 — 엘리스 코스 매니저 인터뷰.

안녕하세요 엘리스입니다:)엘리스의 프로그래밍 수업은 누구에 의해서, 어떻게, 어떤 생각을 바탕으로 만들어질까요? 미래를 이끌어나갈 컴퓨터 사이언스 기술과 그 근간이 되는 교육 사이에서 좋은 프로그래밍 수업을 만들기 위해 치열하게 고민하는 엘리스의 코스 매니저가 직접 이야기합니다! 마침 엘리스는 코스 매니저 채용 중에 있으니 관심이 있다면 눈여겨 봐주세요.코스 매니저가 관여한 프로덕트로 인하여 사용자가 성장을 하고 있다면 그것은 충분히 의미 있는 일.# 안녕하세요 저는,“트라우마를 극복한 프로그래밍 수업 크리에이터.”Q. 자기소개 부탁드려요.A. 엘리스의 프로그래밍 과목을 만드는 코스 매니저 이용희입니다.Q. 엘리스에서 일하게 된 이유는 무엇인가요?A. 원래는 프로그래밍에 대한 트라우마가 있었어요. 하지만 기술 창업에 대한 꿈이 있었기 때문에 프로그래밍은 극복해야 할 산이었죠. 엘리스는 가장 뛰어난 기술자들이 모여 창업한 스타트업이에요. 당연히 기술 창업을 가장 가까이에서 경험할 수 있는 매력적인 곳으로 느껴졌죠. 그리고 프로그래밍 교육을 제공한다는 것 역시 기회로 느껴졌어요. 저와 같이 프로그래밍을 미워하고 두려워하는 사람들에게 보다 쉽게 배울 수 있는 환경을 마련해주고 싶다는 기대로 일을 시작하게 되었습니다.Q. 두려운 대상을 향해 몸을 던지셨군요! 그런데 코스 매니저가 프로그래밍을 몰라도 되나요?A. 많이 알면 알수록 당연히 좋아요. 많이 알고 있을수록 시도할 수 있는 것도 많고 학생에게 전달해줄 수 있는 것은 더욱더 많기 때문에요. 하지만 최소한으로는 Class가 뭔지 알고 있으면 OK. 예를 들어서 코드를 보고 이 코드가 어떤 목적을 갖는지 알 수 있으면 직접 코딩을 하지는 못한다고 해도 괜찮아요.Q. 코스 매니징 외에도 라이브 수업 참여, 조교, 챌린지 사회자 등 많은 역할을 하셨는데 이유가 있나요?A. 좋은 수업을 만들기 위한 첫 번째 방법은 코스를 만드는 모든 과정에 참여하는 사람들의 역할을 직접 체험해 보는 것이라고 생각했어요. 학생으로서, 조교로서, 사회자나 라이브 어시스턴트로서. 이렇게 하니까 학생으로서 수업을 접할 때의 감상은 무엇인지, 조교로서 가르쳤을 때는 어떤 어려움이 있는지를 알 수 있었어요. 라이브 수업 어시스턴트로 참여했을 때는 방송하시는 선생님들의 애로사항을 알 수 있겠더라고요.# 코스 매니징의 정수.“프로그래밍적 성장을 도움으로써 가치를 만들어 냅니다.”Q. 코스 매니징의 A to Z는? 구체적인 업무 프로세스가 궁금해요.A. 크게 기획 — 모집 — 제작 — 분석의 네 단계로 이루어져 있어요.수업 기획 — 어떤 과목을 만들 것인가? 주차별로 무엇을 다룰 것인가? 흥미로운 콘텐츠는?선생님, 조교 모집 — 엘리스가 구상한 수업을 가장 잘 전달할 수 있는 선생님과 조교를 모집.수업 제작 및 운영 — 실습 문제, 강의 자료 등을 엘리스의 색깔로 제작하여 수업을 운영.데이터 분석 — 학생들의 피드백과 데이터를 다음 수업의 발전 및 교육자와의 관계 개선에 반영.Q. 업무 방식은? 어떤 메리트가 있나요?A. 처음부터 끝까지 모든 과정을 주도해나가는 방식이에요. 어떤 회사를 가도 프로덕트의 end to end 프로세스를 전부 경험하기는 어려운데 엘리스에서는 그 전 과정을 경험할 수 있어요. 저는 이러한 경험이 교육 업계나 특정 프로덕트에만 적용할 수 있는게 아니라 다른 업계에 간다고 하더라도 충분히 전환될 수 있는 좋은 경험이라고 생각해요.Q. 미래 산업의 근간이 될 교육을 직접 만든다는 중책을 맡고 계신다고 생각하는데요, 좋은 프로그래밍 수업을 만들기 위해 어떤 노력들을 하시나요?A. 그런 영향을 미칠 수 있다는 게 무서운 일인 것도 같아요. 어떤 사람들은 엘리스를 통해서 프로그래밍을 처음 접하는 것일 수도 있는데 그 경험이 불쾌했다면 앞으로 프로그래밍을 배울 생각이 전혀 들지 않을 수도 있는 거잖아요. 그래서 최대한 다양한 피드백을 받아서 수렴하려고 해요. 외적으로는 대학강의, 수많은 수업들을 참고해요. 여러 강의를 보다보면 좋은 예도 많지만 모든 수업이 재미있지는 않아요. 중간에 듣다 마는 경우도 있고요. 그럴 때마다 내가 왜 중단했고 어떤 요소를 바꾸면 엘리스에서는 학생들이 끝까지 들을 수 있을까 고민해서 반영하려고 하죠.Q. 언제 보람을 느끼나요?A. 내가 관여한 프로덕트가 누군가에게 임팩트를 만들어내고 나뿐만 아니라 프로덕트를 사용하는 사람들이 성장을 하고 있다면 그것은 충분히 가치 있는 일인 것 같아요. 저희 플랫폼에서는 대시보드를 통해서, 그리고 학생이 코드를 어떻게 짜고 있는지 보면서 그 결과를 가시적으로 확인할 수 있어요. 누군가 제가 만든 코스를 수강함으로써 실질적으로 성장하는 게 눈에 보일 때 가장 큰 보람을 느끼는 것 같아요.한 번은 한 선생님께서 학생으로부터 ‘선생님 덕분에 취업할 수 있었어요’라는 메시지를 받은 것을 엘리스와 공유해주셨는데 그때 정말 행복하더라고요. 이게 엘리스가 추구하는 거다,라는 생각을 했어요. 엘리스도 하나의 커뮤니티이고 싶거든요. 이 경우에는 학생-선생님-엘리스가 서로의 영향으로 좋은 결과를 만들어 낸 거죠. 이런 접점을 앞으로 더 많이 만들려고 생각하고 있어요.대시보드에 나타나는 학생들의 학습 현황 및 성취도.# 엘리스는 이런 팀.“가치, 성장, 사람. 포기할 수 없는 세 가지가 있는 곳.”Q. 함께 일하는 동료들은 어떤 사람들인가요? 총평을 하자면?A. 항상 내가 최고의 사람들과 함께하고 있다라는 확신이 있어요. 각자 자기 분야에서 최고의 실력을 가진 사람들과 함께 일한다는 것만으로도 큰 자극이 되죠. 프로그래밍이든 스타트업 생존 노하우든 항상 뭔가를 새롭게 배우고 성장하게끔 동기부여를 해주는 사람들이에요. 저는 트라우마가 있었을 정도로 프로그래밍을 두려워했지만 이들과 함께 일하며 작은 피드백을 하나 듣는 것만으로도 제 실력이 빠르게 성장한다는 것을 몸소 느낄 수 있었어요. Q. 엘리스의 분위기, 팀 문화는 어떤가요?A. 새로운 것에 도전하는 것을 환영하는 수평적이고 자유로운 팀. 인턴도 아이디어를 제시할 수 있어요. 이 다음이 더 중요한데, 아이디어에서 그치는 게 아니라 활발한 피드백이 오가요. 아이디어를 실행하기 어렵다고 판단하더라도 왜 그렇고 어떻게 발전시킬 수 있는지 이야기하죠. 실행하게 되었을 때는 아이디어를 제시한 사람에게 일에 대한 권한이 전적으로 주어지고요. 저도 처음엔 파트타임 인턴이었지만, 이런 팀문화 덕분에 계속해서 업무 범위를 확장하고 제 역량을 키울 수 있었어요.# 코스 매니저 채용.“Generalist & Infinite Learner”Q. 현재 코스 매니저를 구인 중인데요. 코스 매니저에 적합한 성향이 있나요?A. Generalist, 그리고 Infinite Learner. 깊게 한 분야를 아는 사람보다는 얕고 넓게 아는 사람이 더 적합하다고 생각해요. 다르게 말하면 새로운 것을 시도하는 것을 좋아하고 새로운 것을 접할 때 포용력이 높은 사람이요. 두 번째로는 배움에 재미를 느끼는 사람. 엘리스는 교육 스타트업이고 코스 매니저는 직접 교육의 경험을 만드는 사람이니 스스로가 배움에서 행복을 느끼는 사람이라면 훨씬 더 재미있게 일할 수 있겠죠. 한 가지 덧붙이면, 데이터 분석을 배우고 싶은 분께 엘리스는 최고의 장소입니다.Q. 코스 매니저로서 갖추고 있으면 좋은 역량이나 자질이 있다면?A. 소통 능력과 균형 감각. 코스 매니저는 수업을 만드는 모든 단계에서 다양한 이해당사자들과 일하게 돼요. 이들과 원활하게 소통하고 의견을 공유하는 게 중요하죠. 그리고 다양한 사람들 사이에서 최고의 균형을 찾아내는 것도 중요해요. 예를 들어서 선생님의 경우 개발만 해왔고 교육이라는 것을 접해본 적이 없는 분들이 대부분이고, 학생은 프로그래밍을 처음 접하면 그 수업이 좋은 건지 아닌지 평가하기 어려워요. 때문에 코스 매니저가 이 둘 사이에 다리를 놓는 중재자의 역할을 하기 위해서는 다양한 시각에서 볼 수 있는 균형 감각이 필요하다고 생각해요.최고의 실력자들과 함께 일하며 프로덕트의 처음부터 끝까지를 만드는 경험을 통해서 사람들의 성장을 돕는 가치를 창출하고 싶으신 분이라면,>> 코스 매니저에 도전해 보세요! <<#엘리스 #코딩교육 #교육기업 #기업문화 #조직문화 #서비스소개 #팀원인터뷰 #팀원소개
조회수 1171

스푼 한국 마케팅팀의 Ted를 만나보세요!

이건 누가 봐도 테드스럽네!스푼에는 '테드스럽다'라는 고유명사가 있다. 분명 단어는 있는데 막상 말로 표현하기 어려운 그런 표현. 한국 마케팅팀의 리더이자 얼마 전 한 아이의 아빠의 삶이 시작된 그의 이야기를 지금 소개합니다!이거 먹을래?라고 묻는 테드나를 표현하는 한 마디"저를 표현하는 한 마디로 해달라고요? 저는 그냥 전데요? '테드스럽다' 또는 '용환스럽다' 아닌가요? 누가 봐도 이건 테드야!라고 밖에 표현이 안 되는 게 제 자신인 것 같아요. 근데 저는 돈스파이크 같은 사람이 되고 싶어요. 돈스파이크 너무 멋있지 않아요? 고기를 위한 삶.. 크.." (테드스러운 의식의 흐름의 대화)본인이 좋아하는 사진으로 넣어드렸습니다..듣고 싶은 당신의 스푼 라이프저도 리더가 처음이라서요"한국 마케팅팀 리더로서의 삶이요? 멤버가 늘어서 좋긴 한데 그만큼 시간이 참 부족해졌어요. 신경 써야 할 점이 한두 개가 아니더라고요. 예전엔 한 두 명 친구만 챙기면 됐는데 지금은 정말 많은 친구들을 챙기고 함께 가야 하니 어려워요. 저도 리더가 처음이니까요. 공사 분리가 되는 팀을 만들고 싶어서 노력 중이에요. 다들 모두 친하게 지내는 것에 대해서 늘 고맙고 좋지만 실속 없는 팀이 되고 싶지는 않아요. 회사는 성과를 내야 하는 곳이니까요. 제 생각에 저는 '친구 같은 꼰대' 같기도 해요. 저의 역할은 제가 잘날 필요가 없는 것 같아요. 저보다 더 잘난 친구를 더 잘할 수 있도록 이끌어주고 부족한 친구는 잘할 수 있도록 도와주는 것이 리더의 역할이라고 생각해요."스푼 대표 츤데레 맞으시죠?"사람들은 계속 잘해주면 그게 권리인 줄 알아요. 이런 말이 있잖아요. 호의가 계속되면 권리인 줄 안다고. 당연하게 받아들이는 걸 좋아하지 않아요. 츤츤 거리는 것도 아무에게나 그러지 않아요. 사실 저는 원래 말을 예쁘게 하지 못하는 편이라 사람들이 오해를 할 때가 있어요. 그래서 그 부분을 항상 고치려고 노력은 하고 있어요"한국팀 리더가 되기까지"저는 스푼이라는 서비스 이전부터 마이쿤에 합류했는데요. 그때부터 정말 많은 일들을 했었어요. 그땐 영업으로 들어왔는데, 말이 영업이지 사실 할 수 있는 모든 일은 다 했던 것 같아요. 원래 저는 장사하는 게 꿈이었는데 갑자기 '만땅' 이라는 배터리 교체 사업에 조인하게 되었어요. 그게 시작이었어요. 제가 뭔가 새로운 제안이 있으면 거부하지 않는 타입의 사람이거든요. 그래서 한다고 했어요. 그러다가 스푼이라는 서비스를 하게 되면서 갑자기 마케팅을 하게 되었고 그때부터 저도 배우면서 일을 하기 시작했어요. 어도비도, 프리미어도 심지어 광고 툴도 하나도 다룰 줄 몰랐던 시절이었어요. 그냥 부딪히면서 실전에서 모든 걸 배운 거죠.힘들고 첫 번째 사업이 망했을 때도 떠나지 않은 이유요? 일단 끝을 보고 싶었어요. 잘되건 망하건 시작했으니 끝을 보자라는 마음으로 여태 버텼던 것 같아요. 저희 모두 정말 그땐 목숨 걸고 시작했다고 생각했어요. 그래서 끝까지 이 사람들과 가고 싶었어요. 다시 과거로 돌아갈 수 있다고 해도 저는 같은 길을 선택할 거예요. 일단 이렇게 좋은 사람들 또 어디 가서 못 만나요. 결국 사람들 때문에 남은 거고, 사람들이 좋아서 여기까지 온 거죠. 여기서 일해보시면 아세요. 얼마나 좋은 사람들이랑 일하고 있는지"우리와 함께 일하고 싶다면서비스에 대한 애정, 타인에 대한 배려, 바른 인성"이 세 가지는 필수입니다. 능력도 물론 기본 베이스일지언정, 개념과 인성이 바르지 않다면 절대 우리와 함께 할 수 없어요. 일은 가르치면 돼요. 같이 배우면 되고요. 세상에 일 잘하는 사람은 많아요. 바른 인성과 개념이 잡힌 사람을 찾는 게 더 힘든 일인 것 같아요"EDM 좋아하는 테드알고 싶은 Ted의 이야기스스로도 독특한 거 인정하세요?"제가 예전엔 정말 이해가 안 갔어요. 대체 제가 뭐가 독특하단 건지.. 근데 이젠 인정하기로 했습니다. 왜냐고요? 사람들이 저랑 생각하게 너무 다르더라고요! 저는 그냥 인생을 좀 즐겁게 사는 것뿐이에요. 궁금하면 해보고, 새로운 게 있으면 알아보고.. 한 번 이런 에피소드가 있어요. 지나가다가 도를 아십니까 분들을 만났는데 따라가면 어떤 일이 생기는지 궁금해서 따라가 본 적도 있고요. 갔다 오니 호기심이 해결돼서 그 후론 안 따라가요!"남편 그리고 아빠로서의 Ted(A.k.a 최강 애처가)"아빠가 되긴 되었는데 사실 아직 실감이 나지 않아요. 근데 애를 보는 건 정말 좋아요. 예쁘고요 정말 귀여워요. 무엇보다 와이프에게 늘 고마운 마음이고, 제가 늘 구세주라고 불러요. 와이프를 만나기 전에는 매일 술을 마셨어서 동료들과 친구들이 간이 두 개냐며 걱정했었는데, 연애하고 결혼하면서 술을 끊었어요. 저희 와이프 안 만났으면 저는 아마 술만 마시다 지금 생존하지 못했을 수도 있어요(진짜 365일 중 360일 술을 먹었음) 그 정도로 와이프를 만나면서 제 삶이 달라졌어요. 예를 들면 말투와 태도도 더 좋은 사람으로 바뀌게 되었고, 좋은 남편 그리고 좋은 아빠가 되기 위해 노력하게 되었어요. 무엇보다 저희 와이프가 행복해야 저도 행복하더라고요. 세상에 이런 와이프 또 없습니다!"오른쪽 혀 내민 사람이 테드페스티벌 좋아하신다고 들었습니다"네 맞아요. 특히 EDM 페스티벌을 좋아하는데요. 11년도 처음 락페에 가보고 나서 푹 빠졌어요. 세상에 이런 문화가 있구나! 내가 인생을 헛살았구나! 할 정도로 재미있더라고요. 스트레스도 풀리고요. 음악과 술 그리고 사람들의 에너지가 좋아서 가게 되었는데, 지금은 아이가 생겨서 잠시 못 가게 되었어요. 그래도 아이가 조금만 더 크면 와이프랑 같이 유럽여행을 갈 거예요. 여행도 하고 큰 페스티벌도 함께 가는 게 꿈이에요."스푼에게 나는, 나는 스푼에게"저는 제일 바쁘고 허드렛일을 하는 사람이 되고 싶어요. 많은 사람들이 힘든 일을 하고 싶어 하지 않지만 저는 제가 그 부분을 채워서 구성원들에게 도움이 되고 싶어요. 그리고 늘 스푼이 사람을 먼저 생각하는 서비스이자 기업이 됐으면 좋겠어요. 우리가 이 정도로 성장할 수 있었던 것도 좋은 사람들이 있었기 때문이라 믿거든요."Ted는,1. 피부가 잘 타는 타입이라고 하십니다.(왜 이걸 말씀해주시는지는 모르겠습니다만.. 그저 '테드'스럽습니다..)2. 먹을걸 잘 나눠주는 이유는, 맛있는 건 함께 먹어야 한다고 믿기 때문3. 석양 보는 걸 굉장히 좋아합니다.4. 고기를 사랑해서 나중에 Meat company 사업을 꿈꾸신다고 합니다.팀원들이 Ted를 한마디로 표현한다면?Henie: 작은오빠 - "제이가 팀의 큰오빠면 테드는 작은오빠 느낌, 치고 박다가도 어쩔 땐 죽이 잘 맞는 그런 느낌의 친구 같은 작은오빠ㅋㅋㅋ"Cherish: 마음 따뜻한 고슴도치 -  "한 번씩 독설을 하지만 마음은 따뜻함"Ceci: 포크 - "스푼 라디오를 너무 사랑하니까 스푼의 짝꿍인 포크...."Jay: 기대 이상 - "무엇을 생각하던 생각보다 잘한다"Sunny: 츤데레의 끝판왕 - 밑도 끝도 '최강' 츤데레. 도무지 어디까지 츤츤거릴지 모르음 그렇게 잘해주실 거면 대놓고 잘해주시면 안 돼요? ㅠ_ㅠ?William: 돌고래 - 어디로 튈지 모르는 아이디어와 통통 튀는 매력으로 나에게 항상 새로움을 느끼게 해주는 존재Summer: 도토리 - "닮음ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ"Chloe: └0┐- "의외의 모습이 많기 때문!"
조회수 1352

경험 부족한 스타트업의 devops 도입기 2편

출처 : 구글 이미지 검색그 동안 테스트코드작성, 코드리뷰를 집중적으로 수행했는데요. 아직은 엔지니어 모두가 걸음마 단계여서 실무리듬에 코드리뷰와 TDD를 끼워넣진 않았습니다. 대신 각자 리서치를 수행하고 매주 수요일 SW 세미나에서 lesson&learn 공유하는 식으로 devops를 공부했습니다.회고2주를 되돌아보고 느낌점을 한 문장으로 요약하면 다음과 같습니다.기술부채의 이자율은 고정 값이 아니다. 시간이 흐를수록 점점 더 높아진다.코드리뷰부터 말씀드리겠습니다. android와 iOS의 경우 앱 개발기간 3개월 동안 커밋한 어떠한 코드도 리뷰하지 않은 상황이었습니다. devops를 계기로 두 프로젝트 간의 코드리뷰를 드디어 시작했는데요. 방대한 코드를 빠르게 이해하기 위해 코드리뷰에 앞서 시각화된 자료를 준비해 아키텍쳐리뷰부터 수행하였습니다. 아니나 다를까 두 클라이언트의 유저스토리가 완벽하게 똑같음에도 불구하고 클래스 설계며 구현상의 코드며 개발 상의 내용이 완전히 갈라져 있음을 목도했습니다.출처 : 구글 이미지 검색iOS, android 환경적 차이로인해 어쩔 수 없이 코드의 다름이 나타나는 경우도 있었지만 대다수의 차이는 코드리뷰를 하지 않아서였습니다. 코드리뷰를 진행하면서 조금 신기했던 사실은 아주 간단한 요구사항(기능)도 개발자 개성에따라 구현법이 각양각생이라는 점입니다. 한 가지 문제에도 다양한 해결법이 존재하는만큼 각 구현법 마다 강점과 약점이 존재하기 때문에 코드리뷰의 필요성이 생각보다 더 크다는 점을 깨달았습니다. 앞으로 클라이언트에는 고도화된 유저스토리가 계속 추가될 예정인데 두 클라이언트간 갈라진 구현상의 설계는 분명히 피처 딜리버리에 병목지점으로 작용될 것입니다. 두 갈래로 나뉜 클라이언트를 어떻게 설계적으로 통합시켜 나갈지 지속적으로 고민해봐야 겠습니다. 또한 더 이상 차이가 벌어지지 않도록 지금부터 추가되는 피쳐들이라도 코드리뷰를 수행하는 환경에서 개발되도록 해야할 의무감도 느꼈습니다.테스트 코드도 마찬가지로 기술부채가 생각보다 많이 쌓였음을 깨달았습니다. 스위처의 클라이언트의 기술적 난이도는 낮은 편입니다. 그런데 그럼에도 불구하고 기존 코드에 테스트코드를 입혀 SUT로 만드는 일은 여간 까다로운 일이 아니었습니다. 기존 코드는 비즈니스로직과 I/O(DB,Network, BLE), UI 코드간의 커플링이 높아서 막상 어느것 하나 테스트코드를 입히기 쉽지 않았습니다. 테스트코드를 작성하기 위해서는 논리단위의 클래스들을 떼어내는 리팩토링이 병행되어야만 했습니다. 테스트코드 없이 작성한 코드는 시간이 지날 수록 테스트코드가 비집고 들어갈 틈 또한 점점 없애는듯 합니다. 그래도 이러한 현상들은 몸소 체험하면서 확신을 갖게된 사실도 있었습니다.테스트코드가 존재함으로서 SUT의 설계는 옳은방향으로 향한다.기존 코드에 테스트코드를 입히려고 이리저리 애쓰다보면 무관한 기능들이 뭉쳐있는 비대한 클래스는 발견하게 됩니다. 테스트코드를 입히기 까다로운 이 거대한 클래스를 쪼개야할 필요성을 느끼게 되는데요. 이 시점에서 개발자는 테스트코드가 있기 전에 절대 하지 않던 리팩토링 고민을 하게 됩니다. 치열하게 고민하는 과정에서 리팩토링에 실패하면 제대로된 테스트코드를 작성하기가 불가능해집니다. 즉, 테스트코드를 작성 했다면 분명히 설계상의 리팩토링이 일어 났을 확률이 높습니다.스위처 어플리케이션의 내 주변의 스위처 목록 페이지를 예를 들어보겠습니다. 해당 스크린에서는 유저가 여러개의 스위처를 확인하기 때문에 몇 가지 비즈니스 룰에 의해 스위처들의 정렬 순서가 결정됩니다. 그래서 유저는 여러개의 스위처가 검색되어도 내가 가장 사용할 확률이 높은 스위처를 최상단에서 만나는데요. 그 정렬 역할을 맡은 클래스가 switcher sorting(이름이 잘 기억안나네요..) 입니다.저희 안드로이드 개발자는 이 클래스를 첫 SUT로 만들기로 결정했고 일 주일간 테스트코드를 작성하려고 노력했습니다. 그러나, 생각보다 쉽지 않았습니다. SW세미나때 코드를 리뷰하면서 발견한 사실인데 swithcer sorting는 단순히 비즈니스룰에 사용되는 정보 뿐만 아니라 꽤나 무거운 무거운 switcher 클래스도 의존하고 있었습니다. 정작 sorting 우선순위를 결정하는데 필요한 정보는 switcher 클래스가 갖고있는 정보들 중 극히 일부분이었는데 말이죠. 이렇게 큰 클래스 때문에 테스트 코드를 짜려면 안드로이드 라이브러리인 BluetoothDevice와 Context 인스턴스를 공급하는 목업 클래스가 필요한 상황이 벌어질 수도 있었습니다. 더 큰 문제는 비대한 클래스로 인해서 test의 fixture를 구성하는데 수십 줄의 코드가 필요 했다는 사실입니다. 자연스럽게 테스크코드를 작성하면서 리팩토링의 필요성을 느끼게 되었습니다. 가까운 미래에 스위처 개발자가 성공적으로 switcher sorting 클래스를 SUT로 만들었다면 이 클래스의 설계 또한 분명 리팩토링을 거쳐 더 좋은 방향으로 거듭 났을 것 입니다.앞으로 2주간 할 일어떠한 일이든 균형이 중요하다고 생각합니다. 마냥 기술부채를 털어낸답시고 리서치와 공부만 하고 있을 수는 없습니다. 동아리가 아닌 회사이기 때문에 시장의 니즈에 맞춰서 분명히 다시 피쳐를 개발하는 속도를 높이는 가속 패달을 밟아야 할 시점이 올 것입니다.출처 : 구글 이미지 검색너무 이르지도 않게 그렇다고 너무 느리지도 않게 적절한 시점에 고객이 불만을 터뜨리지 않을 정도의 SW 안정성을 보장하는 최소한의 devops 수준을 달성해야합니다. 어느정도까지가 devops를 도입해야 오버엔지니어링이 아닌 기술부채를 탕감하면서 동시에 I/O 초중기 목표를 달성할 수 있는지 치열하게 고민하고 부딪혀보며 기민하게 대응해야 겠습니다.앞으로의 2주간 할 일은 다음 질문 두 가지에 대한 대답을 하면서 자연스럽게 도출될 것 같습니다.테스트코드 작성을 위한 TDD를 어떻게하면 엔지니어가 효과적으로 학습할 수 있을 것인가?코드리뷰를 스프린트 일과에 어떻게 자연스럽게 안착시킬 것인가?#스위쳐 #Switcher #개발 #개발팀 #문제해결 #인사이트 #DevOPS #데브옵스
조회수 759

아마존이 판매자인 당신에게 선사한 '황금같은 기회'

안녕하세요 대한민국 셀러들의 성공적인 아마존 진출을 도와주는 컨설팅 회사이자 대행사인 컨택틱의 이이삭 대표입니다.해외 진출을 꿈꾸는 이들은 아마존이라는 시장을 가장 먼저 떠올릴 것입니다. 이미 수년 전부터 기하급수적으로 성장을 하여 전 세계적으로 가장 큰 전자상거래 플랫폼이 된 아마존은 모든 글로벌셀러들이 입점하고 싶어 하는 플랫폼이 되었습니다. 이 글을 읽고 있는 여러분 또한 아마존에 입점할 의사가 있거나 이미 아마존에 입점하여 판매를 진행하고 있는 분들일 가능성이 높다고 생각합니다. 하지만 아마존의 진정한 의미와 가치를 알고 계십니까? 아마존이 있기 때문에, 달리 말해 아마존이 만약 없었다면 저희 글로벌 셀러들은 어떤 어렵고 험난한 방식으로 해외 진출을 해야 했을지 참 많은 분들이 간과하고 있는 것 같습니다. 이번 글은 아마존에 대한 실전 팁 또는 노하우가 아닌, 아마존이라는 시장이 글로벌 셀러인 우리에게 얼마나 귀한 ‘황금 같은 기회’를 제공한 것인지 하나씩 언급하며 설명드리고자 합니다.첫 번째로, 아마존이 없었다면 내 상품이 속한 시장이 과연 어떤 시장인지 조사하는 것이 매우 어려웠을 겁니다. 아마존은 이미 거의 전 세계에 존재하는 그 어떤 상품이라고 하더라도 판매 중입니다. 여러분들이 팔고자 하는 상품 또한 아마존에 이미 형성되어있을 가능성이 매우 높습니다. 아마존을 통해 이미 형성된 특정 세부 시장을 조사함으로써 여러분들은 ‘도박’이 아닌 ‘확신’을 가지고 해외 진출을 할 수 있게 된 것입니다. 아마존상에서 해당 특정 시장에 대한 조사를 통해 여러분들의 상품에 대한 ‘수요’와 ‘공급’을 알 수 있습니다. 아마존이 없었다면 어떻게 내 상품에 대한 시장성 및 경쟁력을 파악할 수 있었을까요? 통계? 오프라인 전시회? 페이스북? 오프라인으로는 제한과 제약이 너무 많습니다. 내 상품에 대한 소비자들의 관심도 (수요), 나와 직접적으로 경쟁하고 있는 브랜드 및 상품들 (공급), 그리고 그런 경쟁사들이 현재 공급하고 있는 현재 상황에서 고객들의 만족도 (틈새) 등을 전문 시장 조사 기업에게 의뢰하지 않는 이상 쉽게 얻을 수 있는 자료가 아닙니다. 그럼 오프라인이 아니라 온라인으로 조사를 한다고 해서 다르다고 생각하면 큰 오산입니다. 페이스북 구글 등을 통해서 시장 조사를 한다고 해서 과연 의미가 있을까요? 페이스북은 본래 SNS 플랫폼입니다. 시장 조사를 한다고 하면 어느 정도 할 수 있겠지만 애초에 만족할만한 조사 결과가 나오는 것 자체가 무리입니다. 구글도 구매 베이스의 검색 엔진이 아니라 순수 정보성 플랫폼입니다. 이런 수단을 통해 시장을 조사하는 것은 잘못된 추론을 할 수 있는 가능성을 가지고 있습니다. 그렇다면 아마존은 어떤가요? 아마존이야말로 사람들이 애초에 사이트에 접속한 순간부터 ‘구매’를 하겠다는 의지를 가지고 오는 사람들의 집합소입니다. 그런 사이트에서 내 상품 및 내 상품이 속한 시장에 대한 데이터를 수집할 수 있다면 그것보다 정확한 결과가 따로 없다는 것은 당연한 사실입니다.두 번째로, 아마존이 없었다면 내 상품에 관심 가질 만한 사람들을 직접 발 벗고 찾아야 했을 겁니다. 아마존은 모든 포커스를 전 세계 고객들을 아마존이라는 플랫폼으로 집중시켰습니다. 고객은 아마존이라는 사이트에 접속하면 본인이 원하는 상품을 손쉽게 구할 수 있고, FBA라는 수단을 통해 심지어 집 앞까지 수월하게 배송을 요청할 수 있습니다. 아마존의 시장 특성상 고객에게 ‘최저가’의 상품을 제공할 뿐만 아니라, 뛰어난 알고리즘과 카탈로그 정리 방식으로, 같은 상품은 1개의 리스팅만 존재하게끔 파격적이고 혁신적인 시스템을 만들었습니다. 이러한 특성을 고려하면 전 세계의 소비자들이 아마존으로 몰리는 것은 어찌 보면 당연한 것입니다. 이런 상황 속에서, 셀러는 단지 소정의 판매수수료를 지불함으로써 이렇게 지상 최고의 플랫폼에 판매할 권한이 생기게 됩니다. 불특정 다수에게 내 상품을 홍보하거나, 인터넷상으로 마케팅 비용을 막대하게 쏟아붓지 않아도, 아마존이라는 플랫폼 자체가 ‘고객을 모아놓았기’ 때문에 단순히 입점하는 것만으로도 판매자는 엄청난 판매 기회를 얻게 되는 것이나 다름없습니다.세 번째로, 아마존은 기업이 브랜딩 할 기회를 제공했습니다. 아마존은 단순히 상품을 판매하는 플랫폼을 넘어, ‘브랜드 자체가 성장할 수 있도록’ 기반을 마련했습니다. 다른 오픈마켓 사이트들과 달리, 아마존은 브랜드 오너들에게 큰 혜택을 제공합니다. 상세 설명을 부각시키게 해주기도 하며, 동영상을 첨부할 수 있게도 해주며, 아마존 안에 브랜드 스토어 (미니 홈페이지)를 만들 수 있게 하는 등, 단순히 많은 제품을 판매하는 것에만 포커스를 두는 게 아니라, 각 브랜드가 성장할 수 있게 하는 일에도 일조하고 있습니다. 실제로 완전히 신생 브랜드임에도 불구하고, 아마존에서 제품에 대한 반응이 좋아 대규모 브랜드로 성장한 사례들이 굉장히 많습니다. 아마존을 통한 브랜딩은 즉, ‘거품 없는, 정말 메리트 있는, 좋은 상품을 취급하는 브랜드들이 아마존 소비자들의 실질적인 구매 경험과 상품 사용 검증을 통해 성장하는 것’이라고 할 수 있습니다. 아마존 소비자들은 ‘좋은 상품’을 구매하고 싶어 합니다. 좋은 상품을 제공할 수 있다면, 그게 비록 신생 브랜드라고 하더라도 아마존은 그들에게 성장할 기회를 제공하는 플랫폼입니다.아마존이 판매자들에게 주는 황금 같은 기회는 위에 언급한 세 가지 외에도 셀 수도 없이 많습니다. 아마존은 완벽한 중개인으로서, 소비자들에게는 최고의 쇼핑 경험을, 판매자들에게는 최대의 판매 기회를 제공하는 플랫폼입니다. 이런 특성을 제대로 이해한 자들만이 아마존에 대한 감사함을 진심으로 느낄 것이며, 아마존이 제공하는 기회를 십분 활용하여 사업을 확장할 수 있을 것입니다. 컨택틱의 모든 교육은 파트너인 글로벌셀러창업연구소와 접수하고 진행합니다. 교육 신청은 아래 링크나 글로벌셀러창업연구소의 홈페이지를 통해 접수 가능합니다.컨택틱의 모든 교육은 파트너인 글로벌셀러창업연구소와 접수하고 진행합니다. 교육 신청은 아래 링크나 글로벌셀러창업연구소의 홈페이지를 통해 접수 가능합니다.오프라인 아마존 입문 과정오프라인 아마존 기초/심화 과정온라인 아마존 입문 과정그럼 오늘도 즐거운 글로벌 셀링 되세요!감사합니다.컨택틱서울특별시 서초구 서초대로 356, 606호(서초동, 서초지웰타워)대표 전화: 02-538-3939이메일: [email protected]홈페이지: https://www.kontactic.com네이버 블로그: https://blog.naver.com/kontactic카카오 브런치: https://brunch.co.kr/@allaboutamazon유튜브 채널: https://www.youtube.com/c/kontactic
조회수 987

옴니채널(Omnichannel) 환경에서 모바일앱의 역할

2011년 ‘쇼핑의 미래’라고 표현 했던 옴니채널은 부분적이고 점진적으로 실현되어 왔습니다. ICSC(The International Council of Shopping Centeres)의 2017년 조사에 따르면 온라인으로 구매하고 매장에서 수령하는 BOPUS(Buy Online, Pick Up in Store) 비율이 전체의 37%이며 해가 지날수록 조금씩 증가한다고 합니다.디지털 영역의 포식자인 아마존(Amazon)이 오프라인에 진출해 매장을 혁신하고 있으며, 와비파커(Warby Parker)와 보노보스(Bonobos)는 이미 오프라인 매장을 이용해 고객 경험을 끌어올리며 온라인 매출을 증가시키는 성공을 거두었습니다. 국내의 많은 소매업체(Retailer)들도 크고 작은 시도를 이어오고 있다고 합니다.점차 소매업의 기본이 되고있는 옴니채널의 모든 면모를 살펴볼 수는 없지만, 적어도 옴니채널 환경에서 앱이 어떤 역할을 할 수 있을지를 조명해보면서 퍼즐의 한 조각을 맞춰보려 합니다. 주요 판매 채널오프라인 매장은 온라인 매장이 가질 수 없는 분명한 강점이 있습니다. 바로 상품을 직접 경험할 수 있다는 점입니다. 특히 의류는 직접 착용한 후에 안심하고 구매할 수 있는 상품이며, 일반적인 상품의 경우에도 인터넷으로 구매 후 반품을 하려면 적지 않은 수고를 들이게 되기 때문에 가능하면 매장에서 직접 확인한 후 구매하는 것을 선호하는 심리가 있습니다.교보문고는 2015년 말에 상징적인 매장인 광화문점의 목 좋은 위치에 있던 매대들을 없애고 도서관처럼 앉아서 책을 볼 수 있는 장소를 마련하는 파격을 실행 했습니다. ‘복합문화공간’을 만들어서 서점을 책을 파는 곳이 아닌 책과 함께하는 라이프스타일을 느낄 수 있는 곳으로 인식시키려는 시도라는 평가를 받았지요.조금 다른 각도로 이 변화를 해석해 보면 재미있습니다. 교보문고는 ‘바로드림서비스’가 있습니다. 원하는 책을 교보문고의 인터넷(모바일) 서점에서 주문하고, 교보문고의 오프라인 매장에서 찾아가는 방법입니다. 이 ‘바로드림서비스’로 발생하는 매출액은 이미 2012년에 모바일 교보문고 전체 매출액의 35.8%에 이릅니다.인터넷으로 책을 구매하면 다음 날에 집에서 받아볼 수 있음에도 불구하고 매장에서 바로드림으로 구매하는 현상은, 책 역시 직접 경험해보고 구매해야 한다는 심리에서 비롯된 것이라고 생각합니다. 고개를 돌려 책장을 살펴보면 구매는 했지만 끝까지 읽지 못한 책들이 누구에게나 있을 것입니다. 읽지 못한 책으로 채워지고 있는 책장을 보며 ‘앞으로는 책을 직접 읽어보고 사야겠다’는 다짐을 하는 분도 많을 것 같습니다. 그래서 서점에 들러 관심 있는 책을 읽어본 후 구매를 결심하게 되지요.(읽던 책이 마음에 들면 앉은 자리에서 일어날 필요 없이 바로드림으로 구매할 수 있다)‘바로드림’이 이런 수요를 효과적으로 흡수하고 있습니다. 그런데 특이한 점은 매장까지 와서 내용을 확인한 상품을 계산대로 가져가지 않고 앱으로 구매한다는 점인데요, 주요 원인으로 추가 할인제도를 들 수 있습니다. 현장구매에는 적용되지 않는 할인이 모바일로는 제공되는 경우가 생각보다 많이 있습니다.그리고 앱으로 구매하면 구매내역을 체계적으로 관리할 수 있습니다. 자신의 구매내역, 그에 따른 로열티 프로그램, 상품의 재주문이나 환불 등을 쉽게 확인하고 효율적으로 처리하기 위해서 앱을 사용하는 습관이 오프라인에서도 이어지게 되는 것입니다.또한 결제가 간편한 것도 확실한 장점입니다. 계산대 앞에 줄을 서고, 신용카드를 건네고, 회원번호를 입력해서 포인트를 적립하는 지루한 경험은 앱을 사용함으로써 쉽게 피할 수 있습니다. 이러한 장점들로 인해서 상품의 실제 구매는 주로 앱에서 발생하고 상품에 대한 경험은 오프라인에서 이루어지는 옴니채널 쇼핑 패턴이 자리 잡았습니다. 개인화를 위한 데이터 공급옴니채널이 고도화되기 위해서는 사용자 데이터가 반드시 필요합니다. 브랜드나 상품이 사용자에게 도달하기 위해 활용하는 다양한 종류의 채널 – 홈페이지, 모바일앱, 오프라인 매장 등 – 에서 최상의 사용자 경험을 이끌어내기 위해서는 동일 사용자를 식별할 수 있어야 하기 때문입니다. 쉽게 말해, 온라인 스토어 VIP 회원이 오프라인 매장에서 뉴비(Newbie) 취급을 받는 일이 없어야 한다는 얘기입니다.오프라인 매장에 고객이 방문하면 점원들은 저마다의 스킬을 활용해 고객을 분석하기 시작합니다. 자주 오는 손님인지, 어떤 취향인지, 무슨 상품에 관심이 있을지에 대한 해답을 직관과 경험을 동원해 알아내려고 노력합니다. 감각적인 분석력에 노련한 접근방식이 더해지면 판매에 성공할 확률도 높을 것입니다.쇼핑 데이터의 금맥인 앱의 데이터가 오프라인에 더해진다면 어떨까요? 앱에는 고객의 구매 기록이 관리되고 있으며, 이는 가장 최근에 구매한 상품은 무엇인지, 어떤 상품들을 구매 했는지 등 사용자의 취향을 알려주는 확실한 데이터가 있다는 의미입니다. 이외에도 고객의 인구통계정보나 회원 등급 데이터 역시 현장에서 활용할만한 가치가 있는 데이터입니다.고객이 매장에 들어오는 시점에 앱에서 받은 사용자 데이터가 점원과 POS에 전달된다고 가정해 봅시다. 필요한 사용자 데이터를 학습한 점원은 기존보다 짧은 시간 안에 더 적은 노력으로 고객이 필요로 하는 핵심에 도달할 수 있을 것입니다. 물론 고객의 시간도 절약되는 것이지요.그리고 계산대에서는 온라인 계정에 존재하는 쿠폰을 자동으로 적용해 주거나, 매장 근처에 거주하는 고객에게는 무료 배송 서비스를 안내할 수도 있을 것입니다. 이런 예기치 못했던 환대는 기억할만한 쇼핑 경험을 고객에게 제공하면서 앞으로의 판매에 긍정적인 영향을 주게 되겠지요. 서로 다른 채널의 데이터를 통합함으로써 얻을 수 있는 효과를 단적으로 보여주는 예시입니다.
조회수 745

[Buzzvil Culture] Strategy Talk for Engineer Hiring : How we hire engineers

 버즈빌에서는 전사 차원에서 고민하고 있는 회사의 현안과 전략적 방향성에 대해 모두와 함께 공유하고 의견을 나눈다는 취지 하에 한 달에 한 번 Strategy Talk을 진행하고 있습니다. Strategy Talk의 주제는 매 달의 화두와 고민에 맞게 진행되고 있는데요. 지난 번에 버즈빌 블로그를 통해 소개드렸던 Machine Learning(AI) 부터 프로덕트 로드맵, 시장 동향, 그리고 회사의 비전과 미션 등 다양한 주제로 진행되고 있습니다. 이번 달, Strategy Talk은 ‘버즈빌의 Engineer Hiring Strategy’ 라는 주제로 진행되었습니다. 이번 세션은 버즈빌의 Product side를 총괄하고 있는 Young의 주도하에 진행되었는데요. 세션을 통하여 왜 버즈빌이 더 많은 엔지니어가 필요한지에 대한 배경부터 어떤 방법들을 통해 채용을 해 나갈 것인지, 나아가 버즈빌이 어떤 모습으로 변해갈 것인지에 대한 내용을 공유하고 함께 논의하는 시간을 가졌습니다.새로운 개발자들을 대규모 채용하는 것이 어떤 의미가 있을까요? 기본적으로 새로운 사업을 만들어가며 공격적으로 성장하고 현재 리소스의 한계 때문에 진행하지 못하고 있는 기존 Product의 개선 작업들을 진행 하기 위해서는 당연히 충분한 개발자들이 합류하는 것이 필요합니다. 뿐만아니라 다양한 경험을 가진 더 많은 개발자를 채용하는 것은 ‘버즈빌의 개발문화’와도 큰 연관이 있습니다. 버즈빌은 좋은 개발문화를 가지고 있기로 유명합니다. 수평 / 자율 / 성장 삼박자가 고루 갖추어진 환경이라고 할 수 있는데요. 개발팀의 개발자들 모두가 동등한 Software Engineer로 일하고 있고 그만큼 개발 과정에서 의견 교환이 자유롭게 일어납니다. 누군가의 일방적인 지시가 아닌 모두가 최적이라고 합의할 수 있는 방향으로 개발을 진행해 나가고 있습니다. 뿐만아니라 개발 과정에서 각각의 엔지니어가 본인의 업무를 맡아 주도적으로 처리해 나가며 자신이 맡은 이슈에 대해 주인의식을 가지고 일하고 있습니다. 따라서 특정 개발 방향이 주어져서 틀에 박힌 개발을 해야한다거나 다른 사람의 눈치를 보면서 맞춰가는 개발을 해야하는 건 버즈빌의 개발문화와는 거리가 멀다고 할 수 있습니다. 그리고 개인의 성장을 위해 여러가지 지원을 하고 있는데요. 업무를 진행하는 과정중에 필요하다면 AWS의 다양한 서비스를 포함한 여러가지 툴들을 자유롭게 사용해 볼 수 있습니다. 외부에서 열리는 세미나 / 강연등에 참여하는 것을 독려하며 회사에서 관련비용을 지원하기도 합니다. 이러한 개발문화를 가지고 있기에 버즈빌은 개발자들이 자신의 역량을 100% 발휘할 수 있고 새로운 것들을 배워가며 성장해 나가기에는 최적의 조건을 가지고 있다고 할 수 있습니다. (버즈빌에 개발문화에 대한 보다 자세한 내용은 여기를 참고해 주세요!)이러한 버즈빌의 개발 문화를 유지하고 더 나아가 발전시켜 나가기 위해서도 다양한 경험을 가진 많은 엔지니어들이 합류하는 것이 긍정적인 영향을 미치리라 생각합니다. 지금도 내부적으로 개발자들이 돌아가면서 기술 관련 세미나를 진행하면서 서로의 노하우와 새로운 기술에 대한 논의들을 하고는 있지만 더 많은 개발자들이 합류 하면서 이런 기회 들을 더욱 확장해 나갈 수 있음은 물론 관심사가 맞는 개발자들 끼리 모여 관련 주제로 스터디 모임을 진행한다거나 새로운 사업모델 발굴을 위해서 버즈빌의 자원들을 활용하여 새로운 프로젝트들도 진행해 볼 수 있을 것입니다.
조회수 684

숙박앱에 필요한와이즈트래커 리포트 Top 3

숙박앱은 O2O 서비스를 선도하는 사업 중 하나로 빠르게 시장을 확보하기 위한 다수의 앱이 생산되면서, 유사한 경쟁 앱 속에서 차별화 된 서비스로 고객을 잡기 위한 노력이 치열한 사업영역 이기도 합니다. 그래서 숙박 앱 운영에 도움이 될 와이즈트래커의 리포트 3가지를 소개하고자 합니다.1. 상품 카테고리 리포트숙박의 등급은 생각보다 다양합니다. 그러나 숙박 앱에서 한 화면에 보여지는 컨텐츠는 1~2개이며, 이후에는 지속적인 스크롤링으로 원하는 숙박장소를 찾기 때문에 사용자가 선호하는 컨텐츠를 상단에 효과적으로 배치하는 게 중요합니다.상품 카테고리 리포트는 각 숙박 카테고리별로 방문수(=유니크 조회수), 평균 체류시간 등 인게이지먼트 지표와 더불어 객실선택, 예약하기, 주문, 매출액 등 다양한 컨버전 지표를 함께 제공합니다. 나아가 상품 리포트를 통해서 ‘특급’이란 카테고리 중 실제 어떤 호텔이 효과가 좋았는지를 파악할 수 있습니다.이러한 데이터는 컨텐츠 배치 뿐만 아니라, 제휴 영역을 확장하는 데도 어떤 카테고리에 집중해야 할지 참고할 수 있는 유용한 데이터입니다.2. 화면 이동경로 리포트숙박 앱 UI는 매우 심플하고 직관적인 편입니다. 사용자는 예약이 앱 실행의 주 목적이기 때문에, 퍼블리셔는 보통 첫 화면에 컨텐츠를 스크롤링해서 볼 수 있도록 구성하지만 의외로 예약에 접근하는 행동패턴은 다양할 수 있습니다.샘플 데이터처럼 목적을 갖고 검색을 통해 빠르게 상품 정보를 획득하고자 하는 사용자의 비중이 많다면, 모바일 기기에 적합한 내부 검색엔진 편의성 및 결과 화면의 퀄리티가 매우 중요할 것이며 이는 예약율과 직결될 수 있습니다. 반대로 검색했는데 만족하지 못한 결과 값을 제공했다면, 높은 외부 유출 비율을 나타낼 것입니다.화면 이동경로 리포트는 이러한 다양한 사용자들의 행동패턴을 타겟별로 4가지 타입(A화면 이후, A화면 전/후, A화면 도달경로, A화면에서 B화면을 도달하는 경로)으로 분석하여 네비게이션 개선에 통찰력을 얻을 수 있는 데이터를 제공합니다.3. 내부 검색어 리포트 숙박 앱에서 검색엔진을 사용하는 빈도는 꽤 높습니다. 앱을 실행하자마자 검색하는 사용자는 서핑을 즐겨하기보단 자신이 원하는 컨텐츠(정보)만을 빠르게 받고 싶은 성향이 있습니다. 해당 사용자에겐 효과적인 검색결과 화면을 제공하는 것이 핵심입니다.검색결과 화면은 2가지가 필히 고려돼야 합니다.1) 검색결과와 관련성 높은 결과 값 제시( 방대한 결과값은 오히려 재검색하게 하여 불편함을 제공)2) 검색결과 값이 없을 경우 대안을 제시( 빈 페이지 제시는 매우 부정적인 경험으로 기억)내부 검색어 리포트는 사용자의 검색빈도가 높은 인기 키워드를 파악할 수 있으며, 검색 실패수 지표를 통해 온전한 결과 값을 제시하지 못한 경우를 찾아 검색엔진 개선의 방향을 잡을 수 있습니다.
조회수 1382

<나의 첫 번째 울릉살이>참여자 모집

신비로운 섬 울릉에서 '나를 기록한다'는,그 단순한 행위에 집중해보는 건 어떨까요?1. 참여대상- 울릉에 머물며 '나'와 '섬'을 자유롭게 기록하고 싶은 청년2. 주요일정- 설명회 (18.07.26 목요일 저녁 7시 30분, 서울 영등포구 영신로 183 서울하우징랩)* 울릉살이에 대한 궁금증과 기대를 함께 나누는 시간- 최소한의 준비 (18.08.09-10 @ 서울)*최종 참여자들이 함께 모여, 울릉살이를 위한 몸과 마음의 준비를 하는 시간- 울릉살이 (18.08.18-09.01 @울릉)*내가 머무는 시공간과 기록하는 행위에 집중하는 시간- 정리하기 (18.09.01-09.02 @울릉 or 포항)*섬을 떠나기 전 지난 울릉살이를 함께 되돌아보는 시간  3. 참여자 혜택- 숙소 및 왕복 선박비 지원, 드로잉 워크숍 등 각종 문화활동 참여 가능4. 비용- 울릉살이 경비 (식비, 교통비 등)*최소한의 소정의 참가비가 있을 수 있으며, 최종 참여자분들께 추후 자세히 안내 예정다시 한번 고민해주세요.<나의 첫 번째 울릉살이>는 단순히 함께 떠나는 여행이 아니에요. 완벽하게 제공되는 체험 프로그램도 아니에요. 울릉에 머물며 기록하는 그 단순한 행위에 집중합니다.불편한 것들이 많을 거에요. 낯선 환경에서 보내는 시간, 새로운 사람들과 마주하는 시간, 고독에 마주해보는 시간, 그 모든 것들이 힘들고 불편할 수 있어요. 하지만 그럼에도 불구하고, 울릉에 나를 비춰보며, 글이든, 그림이든, 사진이든, 내가 원하는 도구로 내가 만나고 겪는 나, 내가 머무르는 장소, 그 모든 것을 솔직하게 기록해보는 것. 그것이 <나의 첫 번째 울릉살이>가 당신에게 제안하는 유일한 것이자 모든 것입니다. 불편함을 있는 그대로 인정하고 울릉이라는 섬이 가진 원시성에 집중하다보면, 그 어떤 곳에서보다 자연스러운 나와 더 가깝게 마주할 수 있을 거에요. <나의 첫 번째 울릉살이>가 추구하는 네 가지 가치  1. 자기중심적일 것. 타인의 경험에 의존하기보다, 나만의 욕망에 기준해서 자기 중심적인 시간이 되었으면 좋겠어요. 프로그램을 쫓아다니지 않는, 각자가 주인공이 되었으면 좋겠어요. 2. 간섭하지 않고 관계할 것. 서로가 각자의 욕망에 집중하되, 함께 연대하면 좋겠습니다. 함께 하면서도 온전히 혼자일 수 있도록, 개인 간 안전거리를 존중하면 좋겠습니다. 3. 기대와 환상을 갖지 않을 것. "어디까지 가봤니?"라는 질문에 매몰되지 않았으면 좋겠어요. 비가 오면 오는대로, 날이 더우면 더운대로, 내가 보내는 시간에 정직하고, 내가 머무르는 공간에 충실하면 어떨까요? 4. 솔직하게 기록할 것. 기록은 내가 내 행위를 존중하는 가장 좋은 방법입니다. 뛰어나게 잘 기록할 이유도 없고, 인정받아야할 필요도 없이, 그저 내가 마주한 세계를 생생하게 겪어가며 솔직하게 기록하면 좋겠어요. 글이든 그림이든 사진이든 무엇이든 좋습니다. 내가 만나고 겪는 나, 내가 머무르는 공간, 그 모든 것을 기록했으면 합니다. 그럼에도 불구하고, <나의 첫 번째 울릉살이>를 시작하려는 당신에게고맙습니다. 환영합니다. <나의 첫 번째 울릉살이> 초대장을 보낼게요.<나의 첫 번째 울릉살이> 참여 신청 (~18.08.02 목요일까지)<나의 첫 번째 울릉살이> 설명회 참여 신청 ('18.07.26 목요일 저녁 7시 30분) #로모 #기업문화 #조직문화 #사내문화 #기업소개
조회수 1935

Backbone 적용기

Backbone이란?Backbone은 자바스크립트 프레임워크로 MVC 패턴을 적용하여 웹 애플리케이션 개발할 수 있도록 돕는 유용한 프레임워크입니다. MVC 패턴에 대해서는 밑에 더 자세히 설명하기로 하고 간단히 Backbone을 적용한 후의 장점을 소개하면 깔끔하게 뷰와 로직을 분리할 수 있어 코드를 유지 보수하는데 드는 시간이 줄며 기능 수정 혹은 기능 확장이 쉬워진다는 점등을 들 수 있습니다.또한, Backbone에서는 Underscore 라이브러리를 사용하는데, 이 라이브러리에서 제공하는 템플레이트 기능을 통해 뷰의 재사용과 설계를 쉽게 할 수 있다는 점도 장점입니다.만약 서버 측에서 RESTful한 URL을 제공한다면, Backbone을 사용하여 얻을 수 있는 이점이 더 확실해집니다. 모델에 RESTful한 URL을 제공하면, 간단하게 서버와 동기화하면서 그에 따르는 뷰의 변화 따위를 손쉽게 구현할 수 있습니다.RESTful한 인터페이스 설계에 대해서 궁금하시다면 이전에 올라온 글을 참조해보세요. Backbone 기반으로 설계된 여러 웹 애플리케이션 중에는 여러분이 잘 알고 있을만한 서비스들도 있을 것입니다.MVC 패턴?이미 MVC라는 용어에 익숙하신 분들도 많겠지만, 생소하신 분들을 위하여 간단히 정리해보면 MVC 패턴은 디자인 패턴 중의 하나로 모델(실제 쓰일 데이터)과 모델을 보여줄 뷰(인터페이스) 그리고 사용자로부터의 입력을 받아 모델과 뷰를 중재하는 컨트롤러로 나누어서 구현을 해나가는 방식을 말합니다. GoF 책에도 이 패턴이 소개되어 있지요.모델은 뷰나 컨트롤러와 무관하게 작성되는데 그런 모델을 뷰가 관찰하고 있다가 모델의 변화에 따라 적절히 뷰의 모습을 바꾸게 되므로 서로 투명하게 작동하게 됩니다. 즉 모델만 잘 설계해서 만들어주고 그에 따르는 뷰의 모습만 정의하면 그다음부터는 지저분하게 모델의 상태에 따르는 코드를 직접 처리할 필요가 없다는 장점이 있습니다.Backbone이 MVC 패턴을 적용하기 위한 프레임워크라고 하였지만, 실제로 Backbone에서는 MVC 패턴의 변형인 MVR 패턴을 사용합니다. 컨트롤러 대신 Router가 쓰이는 형식인데, 이 링크에서 Backbone의 Router에 대한 자세한 설명을 제공하고 있습니다. 하지만 Router가 컨트롤러의 역할을 대행하는 것은 아니고, 대부분의 Backbone 예제를 살펴보면 실제로 컨트롤러가 담당하는 업무들을 뷰에 이관하여 처리하는 것을 볼 수 있습니다. MV* 패턴 중에는 MVP 패턴이나 MVA 패턴 같은 MVC 패턴의 변형들이 존재합니다만 그 바탕을 이루는 Model-View의 관계는 변하지 않는 것을 볼 수 있습니다.Simple code snippet간단한 예제를 통해 실제 코드 상에서 어떤 식으로 Backbone을 적용하는지 알아보겠습니다.모델먼저 모델을 정의해야 합니다. 가령 밑의 코드에서는 사각형 모델을 정의하고 있는데요, 기본값을 지정해 줄 수 있고, 사각형 모델과 관련된 함수들을 정의해놓은 것을 볼 수 있습니다.var Shape = Backbone.Model.extend({ defaults: { x:50, y:50, width:150, height:150, color:'black' }, setTopLeft: function(x,y) { this.set({ x:x, y:y }); }, setDim: function(w,h) { this.set({ width:w, height:h }); }, });이렇게 Backbone.Model.extend 함수를 통해 모델의 청사진을 구성하게 됩니다. 이 모델을 이용하여 뷰를 구성할 수 있습니다.콜렉션Backbone.Collection.extend({ model: Shape });많은 상황에서 복수의 모델을 다루게 될 일이 생깁니다. 가령, 게시판에 올라온 글들은 게시물의 집합이라고 볼 수 있겠죠. 콜렉션을 통해서 이러한 복수의 모델의 집합을 만들어낼 수 있습니다. 위의 코드에서는 앞서 소개한 Shape 모델의 콜렉션을 정의한 것을 볼 수 있습니다. 모델과 마찬가지로 콜렉션도 뷰에 바인딩할 수 있고, 콜렉션에 관련한 이벤트(change, add, remove)를 뷰과 관찰하게 할 수 있습니다. 또한, Underscore 라이브러리에서는 콜렉션과 밀접하게 관련된 여러 함수를제공합니다.뷰var DocumentRow = Backbone.View.extend({ tagName: "li", className: "document-row", initialize: function() { this.model.bind('change:name', this.render); }, events: { "click .icon": "open", "click .button.edit": "openEditDialog", "click .button.delete": "destroy" }, render: function() { // render or update something } });기본적으로 뷰에 뷰와 관련된 모델이나 콜렉션을 바인딩하게 되는데요, 이 바인딩을 통해 뷰는 모델이나 콜렉션의 상태를 관찰하고 변화를 감지하여 바인딩 시 전달한 핸들러를 통해 적절한 행동을 수행할 수 있게 됩니다. 위의 예제를 보면 모델의 name 속성 변경 시 render 함수를 호출하도록 바인딩한 것을 알 수 있습니다. 또한, 뷰에 관련한 이벤트와 그에 관련된 핸들러를 events에 정의해놓을 수 있습니다. 보통 render 함수 내에서 뷰를 구성하거나 혹은 바인딩 된 모델, 콜렉션의 변화에 따르는 뷰의 변화를 적용하게 됩니다.뷰에 관련된 더 자세한 사항은 뷰 문서를 참조하시기 바랍니다.템플레이트var compiled = _.template("hello: <%= name %>"); compiled({name : 'moe'}); => "hello: moe"Underscore에서 제공하는 템플레이트 기능을 이용하여 문자열을 곧바로 html 요소로 만들어낼 수 있습니다. 또한, 템플레이트 내에 자바스크립트 함수 등을 삽입하는 기능도 제공합니다. 기본적으로 Underscore에서 템플레이트 기능을 제공하지만, 그 외에도 여러 라이브러리가 있습니다.가령 mustache를 이용해서도 똑같은 기능을 할 수 있습니다. 필요에 따라 유연하게 템플레이트 라이브러리를 바꿀 수 있다는 점이 매력이라고 볼 수 있습니다. Backbone 공식 사이트에서도 이러한 템플레이트 라이브러리를 이용하는 것을 권장하고 있습니다.Ember.jsBackbone이 나름의 역사가 있는 프레임워크이기 때문에 많이 쓰이고 있지만, 그 외에도 비슷한 기능을 제공하는 프레임워크가 많습니다. 그 중의 하나인 Ember.js가 있습니다. Ember.js의 장점이라면 기본적으로 Handlebars라는 템플레이트 라이브러리를 지원함과 동시에 Backbone보다 심화된 여러 기능을 제공하는 점이 있습니다.그러면서도 사용의 꼴이 Backbone과 비슷하므로 만약 Backbone을 사용해 본 적이 있다면 적응하기도 쉽습니다. 참고로 아래에 여러 MVC프레임워크를 소개하고 장/단점을 분석한 사이트의 링크를 달아두었는데 여타의 프레임워크보다 더 좋은 점수를 받기도 하였습니다.Backbone 말고 다른 MVC프레임워크를 원한다면, 특히 자체 템플레이트 라이브러리를 지원하는 프레임워크를 원한다면, Ember.js 사용을 고려해 보는 것이 어떨까요?더 읽어볼 만 한 것An Intro to Backbone.jsBackbone.js by exampleBackbone Tutorials위의 사이트들은 제가 Backbone을 공부하면서 참고한 사이트들입니다. 영문 사이트이지만 코드만 훑어 봐도 그 의도와 얼개는 파악할 수 있을 것으로 생각합니다. Backbone 공식 사이트에서 제공하는 튜토리얼 사이트도 방문해볼 가치가 있습니다. Backbone을 이용하여 개발한 간단한 서비스의 소스코드를 공개해 놓았습니다.The Top 10 Javascript MVC Frameworks ReviewedJourney Through The JavaScript MVC Jungle위 두 사이트에서는 앞서서 소개한 Backbone과 Ember.js 외의 여러 MV*패턴 프레임워크를 소개하고 장단점에 대하여 분석해놓았습니다.마치며이상으로 Backbone 도입과 그에 따르는 장점을 살펴보았습니다. 일반적인 홈페이지와 제작과는 약간 양상이 다른 웹플리케이션(웹 + 애플리케이션)개발자 분들은 프로젝트에 MVC 패턴 프레임워크를 적용해 보면 어떨까 하는 생각이 듭니다. 프로젝트의 생산성에 크게 이바지할 수 있으리라 생각됩니다.#스포카 #개발 #개발자 #인사이트 #Backbone #일지 #개발팀

기업문화 엿볼 때, 더팀스

로그인

/