스토리 홈

인터뷰

피드

뉴스

조회수 200

나를 위한 여유라는 것은

나를 죽일 것만 같았던 더위가 언제 그랬냔듯이 사라지고 어느새 찬바람이 부네요. 달력을 보니 벌써 8월이 막바지에 이르렀습니다. 늘 이맘때쯤 드는 생각이 있죠. 뭐?! 벌써 올해가 4달 밖에 안 남았다고? 그리고 이 생각도 함께 들 겁니다. 내가 올해 초에 어떤 계획을 세웠더라...나는그동안 뭘 한 거지......라는 생각. 다들 그런 생각했던 거 맞죠? (나만 한 거 아니죠...)저는 올해 여유 있게 살자는 결심을 했습니다. 누군가는 그것도 결심이냐며, 그 정도의 결심이면 못 지키는 게 더 이상한 게 아니냐 하는 생각이 들 수도 있겠습니다만, 제게는 절실하고도 절절한 결심이었습니다.제 일을 시작하고 나서는 출근도 따로 없었지만, 퇴근은 더더욱 없었습니다. 머리 속에 해야 할 일들이 가득해서 뭐라도 하고 있지 않으면 금세 불안해졌기 때문입니다. 노느니 일하는 게 더 마음이 편한 그런 이상한 상태. 2년 전 2016년 크리스마스이브, 그날도 역시 그런 날들 중의 하루였습니다. 남들은 커플과 신나서 놀러 다닐 바로 그 시간에 저는 사무실에 혼자 남아서 열심히 일을 하고 있었는데요. 그런데 갑자기 그런 생각이 들었습니다.회사를 만들고 하나부터 열까지 모든 것들을 혼자서 맨땅에 삽질하며 하나씩 배워나가며 일궈오느라 고생 고생해서 이제 먹고살 수는 있을 것 같긴 한데, 그러나 그렇다고 아직 안정적이지는 못하고, 성공한 거라고는 더더욱이나 말할 수 없고, 뭔가 조금만 더 하면 될 것도 같은데, 그렇다고 무엇이 어떻게 되어야 하는 건지는 모르겠는,,, 그래서 뭐가 될지 모르니 뭐라도 더 해보자고 더 가열차게 일만 계속하고 있는 그런 상태..... 와... 근데 이러다 죽으면너무 억울하겠는데?저는 할머니가 될 때까지 스트레스컴퍼니를 하면서 세상을 이롭게 하는 게 꿈입니다. 그런데 할머니가 되기도 전에 혼자서 일만 하다가 어느 날 갑자기 이 세상에서 사라져 버리면 어쩌나 하는 생각이 든 겁니다. 그럼 정말 너무 억울할 것 같더라고요. 그래서 그런 생각이 들자마자 바로 짐을 챙겨 나오며, 내년에는 좀 더 여유를 가져야겠다고 다짐했습니다. 이렇게 계속 달리기만 해서는 결승점까지 가보지도 못하고 쓰러져버릴지도 모르니 좀 쉬면서 가야겠다고. 그래서 내년엔 꼭 여행도 다니고 남들처럼 보란 듯이 좀 놀아보겠다고 결심을 했습니다. 그때부터 저의 매년 새해 결심은 여유를 갖는 것이 되었습니다.   정말 즐거웠어! 부산아~그러나 여유라는 게 막 가져야지! 한다고 해서 막 손에 잡히고 그러는 건 아니더라고요. 뭘 하면서 쉬어야 하나 손가락을 굴리며 고민하던 때 제 손에 잡힌 포스터 한 장, 부산에 있는 친구가 올린 연말 파티 초대장이었어요. 그걸 보자마자 아! 이거다. 싶었죠. 그날로 짐을 싸서 내려갔어요. 나 가요! 부. 산. 으.로!! 그렇게 부산에서 새해를 맞으면서 산책도 하고 울산에 있는 좋아하는 친구도 만나고, 새로운 사람들도 만나서 수다도 떨고 맛있는 것도 먹으면서 빈둥거리며 며칠을 쉬다가 서울로 올라왔는데요. 다시 몇 달간 버틸 수 있겠다 싶은 새로운 에너지가 생기더라고요. 뿜뿜!  그런데 그 후로 왠지 쉬어야 한다는 강박이 머릿속에 자리를 잡아버렸는지 서울을 떠날 기회가 생기면 어떻게든 그 기회를 잡으려고 애를 쓰고 있더라고요. 덕분에 작년 가을엔 일본, 겨울엔 제주로 여행을 떠났습니다. 아자!!응?친구들과 함께 수다떨며 바라보던 강... 이름은 까먹었네...내 마음의 무게만큼 푹푹 파인 발자국인가....내가 이 걸 보려고 그 먼 길을 간 겁니다!!근데 저는 그렇게 신이 나서 제주를 다녀온 후에 앓아누웠더랬습니다... 끙. 저는 대학원을 다니고 있는데 그 시기가 딱 기말고사 시즌이었거든요. 그럼에도 불구하고 어떻게든 여행을 가야 할 것만 같아서 전공책과 노트북을 싸 짊어지고 비행기에 올랐었는데 가서 안 먹던 고기를 잔뜩 먹고, 밤늦게까지 안 자고, 새벽에 일어나서 레포트를 쓰는 투혼을 발휘하고는 결국 집에 돌아와서 뻗어버렸습니다. 아... 아..... 무작정 여행을 간다고 해서, 서울을 떠났다고 해서 모두 재충전이 되는 것은 아니라는 사실을 병원을 순례하며 깨달았습니다. 털썩.이 중에서 제일 바보는 나인가 보오...Q : 사람이 변하려면 사는 곳이 바뀌거나, 만나는 사람이 바뀌거나 시간을 쓰는 방법이 바뀌어야 한다고 하더군요. 그렇다면 바쁘게만 살아온 내 마음에 여유를 가지려면 무엇이 필요할까요?A: 여행을 떠나는 한 번의 이벤트가 잠시 동안의 행복을 가져다줄 순 있겠지만, 그보다 훨씬 더 긴 나머지의 시간들을 오로지 잠깐 동안의 여행만을 기다리며 보낸다는 건, 다른 사람들은 몰라도 저에게는 그다지 행복하지 않은 선택이더라고요. 덕분에 저는 평범한 일상에서 갖는 나를 위한 작은 여유가 더 중요한 사람이라는 걸 깨달았습니다  Q : 그럼 나를 위한 작은 여유는 어떻게 가질 수 있는 거죠?  A : 그냥 내가 좋아하는 것을 하는 시간을 늘리면 되지 않을까요? 근데 그러려면 내가 무엇을 좋아하는지 싫어하는지 알고 있어야 해요. 그걸 모르면 아무것도 할 수가 없으니까요. 내가 무엇을 좋아하는지 알아야 오로지 나만을 위한 시간과 여유를 선물해줄 수 있어요.내가 좋아하는 것들 저는 좋아하는 사람들과 이야기하면서 에너지를 충전하는 사람이에요. 그래서 저랑 비슷한 에너지를 가진 사람들과 한참을 떠들고 나면 기분이 좋아진답니다. 제 도움이 필요한 사람들에게 경험을 나눠주는 것도 좋아해요. 사람들이 제 이야기를 듣고 마음이 움직이고 변화하는 모습을 보면 그렇게 기쁠 수가 없더라고요. 그래서 저는 사람들과 감정을 나누는 모임을 계속 열고, 그들의 위한 또 새로운 것을 만드는 것을 즐기고 있나 봐요.그렇게 관계 속에서 얻는 즐거움도 좋아하지만, 나이를 먹으면서 좋은 것 중에 하나는 혼자서도 잘 놀게 되었다는 거예요. 저는 이제 식당에 가서 혼자 밥도 잘 먹는답니다. 얼마 전에는 팝콘이 먹고 싶어서 혼자 영화도 보러 갔다니까요. 후후. 생각해보니 옛날엔 혼자서 10km 마라톤을 뛰었던 적도 있었는데요. 정말 힘들더군요.. 이제 그런 짓은 하지 않으려고요.. ; 그렇지만 운동을 지속하는 건 진짜 중요해요. 그래서 필라테스를 끝내고 무슨 운동을 할까 하다가 거의 10년 만에 스윙댄스를 다시 시작했는데, 제 몸이 스텝을 기억하고 있더라고요. 이렇게 기특할 수가! 한참을 스텝을 밟으며 몸을 움직이고 나면 정말 기분이 좋아진답니다.한강에 나가서 강물을 한없이 바라보는 것도 좋아하고요. 차 안에서 혼자 노래 부르는 것도 좋아해요. 집이 서울이 아니다 보니 이동거리가 기본 한 시간이 넘거든요. 그래서 그 시간에 노래를 들으면서 신나게 소리를 지르는데요. 그럼 기분이 나아진답니다. 서점에 가서 책 표지를 보는 것도 좋아하고요. 책 사는 것도 좋아해요. 예전에는 좋아하는 책들을 잔뜩 사서 책꽂이에 꽂아놓고 언젠가는 저 것들이 다 내 머릿속에 들어가 있겠지 싶어서 뿌듯해하고 그랬는데요. 어느 순간 다 부질없다 싶더라고요. 그래서 싹 다 헌책방에 보내버렸어요. 그 후로는 꼭 읽을 책들만 사고 있는데요. 지금은 심리학대학원에 다니다 보니 제 책꽂이엔 거의 다 심리학 책들 뿐인데 그래도 안 읽은 것보다 읽은 것들이 더 많네요. 나중에는 스트레스컴퍼니 사무실을 제 상품들과 함께 심리학 책들이 함께 있는 서점으로 꾸며도 좋겠다는 생각이 들어요. 그래서 오시는 손님들께 상품과 함께 책도 추천해드리고 같이 앉아서 수다도 떨고 모임도 열고 분노캔들도 태우고 그러면 참 재밌겠죠! 내년쯤엔 이렇게 도란도란 이야기를 나눌 수 있는 예쁜 공간을 만들어볼게요!저는 이렇게 가만히 앉아서 상상하는 것도 참 좋아해요. 다음엔 뭘 만들어 볼까? 이런 걸 만들면 어떨까? 이렇게 하면 더 재밌지 않을까? 틈만 나면 이러고 있는 걸 보면 저는 천상 생산자인가 봐요. 이렇게 생각한 걸 현실로 만들어낼 수 있는 디자이너가 되어서 참 다행이랍니다. 헤헷 얼마 전에 어느 사이트에 회원 가입을 하는데 존경하는 사람 이름을 적으라고 하더라고요. 그걸 보자마자 버틀란드 러셀이라고 쓸까. 아니면 빅터 프랭클을 쓸까 하고 잠시 동안 고민을 하다가 빅터라고 적었어요. 빅터 프랭클의 죽음의 수용소에서 라는 책을 참 좋아하거든요. 그의 로고테라피 이론도 정말 좋아한답니다.고레다 히로카즈 감독의 영화를 좋아해요. "그렇게 아버지가 된다"라는 영화는 모든 30대가 꼭 보아야 하는 영화라고 생각해요. 안 보셨다면, 꼭 한번 보시길 추천해요. 이번에 개봉한 어느 가족을 못 봐서 아쉬워하고 있는 데 어떻게든 시간 내서 꼭 챙겨보려고요. 음악은 가리지 않고 듣지만, 쾅쾅거리는 음악은 별로예요. 노래를 들을 땐 음색에 영향을 많이 받는 편이라 케빈오의 부드러운, 커피소년의 조곤조곤한, 치즈의 청량한 목소리를 좋아해요. 에릭남이나 애즈원의 달콤한 목소리도 좋고, 우효의 담담한 목소리, 벤의 낭랑한 목소리도 좋아합니다. 이렇게 써놓고 보니 저는 꽤 소리에 민감한 사람이네요. 아, 민감한 거 또 있는데. 날씨! 더운 건 그래도 잘 참는 편인데, 추운 건 정말 못 참아요.. 그래서 선풍기 바람도 싫어하는데, 올해 폭염은 좀 힘들긴 하더라고요. 근데 올 겨울은 더 춥다면서요? 벌써부터 걱정이라니까요. 추운 겨울에는 따뜻한 나라에 가서 살다가 날씨 풀리면 다시 돌아오고 그렇게 살 수 있으면 얼마나 좋을까요.그리고 단순 노동하는 것도 좋아해요. 아무 생각 없이 손을 움직이다 보면 머릿속이 좀 비워지는 느낌이 들거든요. 그래서 저는 굳이 노동집약적인 분노캔들을 만들었나 봐요. 감정카드는 또 어떻고요. 카드들을 쭉 늘어놓고 하나씩 모아서 50개를 채우는 일도 만만치 않답니다. 게다가 작년에는 극복양말 1,000개를 엄마랑 둘이서 포장한 적도 있다니까요. 스트레스컴퍼니는 리얼 가내수공업을 실천하고 있습니다. (어머니 사랑합니다.)그렇지만 뭐니 뭐니 해도 좋아하는 음악을 틀어놓고 조용한 공간에서 혼자 글도 쓰고, 작업도 하다가, 노래도 부르다가, 책도 읽다가, 디자인도 하다가, 빈둥거리기도 하는, 누구에게도 방해받지 않는 평화로운 시간을 좋아해요. 어쩌면 그래서 저는 크리스마스날도 사무실에 있었는지도 모르겠군요....험;;;  내가 뭘 좋아하는 지 알아야 오로지 나만을 위한 여유를 선물해줄 수 있어요.당신은무엇을 좋아하는 사람인가요?자, 이제 당신의 차례예요. 당신은 무엇을 좋아하는 사람인지 찬찬히 생각해보세요. 한 번도 깊게 생각해본 적이 없다면, 처음엔 생각이 잘 생각이 안 날 수도 있어요. 그래도 그렇다고 포기하지 말고 계속 자신에게 질문을 던져봤으면 좋겠어요. 이건 그럴만한 가치가 있는 일이니까요. 부모님이 원하는 것, 남들이 좋아하는 것, 사회가 해야 한다고 말하는 것이 아닌, 온.전.히.당.신.이.좋.아.하.는.것.말이예요. 그것을 찾으세요. 당신이 좋아하는 것들이 당신을 더 당신답게 만들어줄 거예요. 자신을 믿으세요. 당신은 지금 그대로도 충분히 아름다우니까요. 저는 가끔 기분이 다운되면 커피소년 노래를 들으면서 그래도 괜찮다고 나를 위로해주곤 하는데요. 오늘은 이 노래를 들어야 겠네요. 노래를 틀어놓고 눈을 감고 가사를 들어보세요. 분명 당신도 좋아하게 될 거예요. -그냥 거기에 있어요-커피소년  1.내 마음이 조급할 때모두 날 앞서가는 것 같을 때모든 것들이 다 사라지는 것 같을 때특히 아무 일 없을때무언가 꼭 해야 할 것 같을 때여전히 사라지지 않는 이 불안한 마음(후렴)당신은 당신 그대로 있으세요변한 건 아무것도 없는걸요더 잘하려거나 조급해 마요있는 그대로 그냥 두세요당신은 여전히 아름다워요그들도 아름답지만 그건 다른 문제예요당신이어서 할 수 있는 건그 누구도 따라 하지 못해요그냥 거기에 있어요2.유독 우울했던 날내 삶에 어떤 기대도 없던 날사람들 속에서 외로웠던 그 날에다들 어떻게 사는지나는 잘살고 있는 건지창에 비친 내 모습 초라해 보일 때(후렴)당신은 당신 그대로 있으세요변한 건 아무것도 없는걸요더 잘하려거나 조급해 마요있는 그대로 그냥 두세요당신은 여전히 아름다워요그들도 아름답지만 그건 다른 문제예요당신이어서 할 수 있는 건그 누구도 따라 하지 못해요그냥 거기에 있어요스트레스컴퍼니는 당신과 나의 스트레스를 해소하기 위해 태어났습니다.당신이 스트레스에 굴복하지 않고, 즐겁게 극복할 수 있도록 세상에 없던 상품을 만들고활용해서 교육 프로그램을 진행합니다.www.stresscompany.net 스트레스컴퍼니의 모든 상품은 스트레스컴퍼니샵에서 구매 가능합니다.ⓒ스트레스컴퍼니 - 무단 전재-재배포 금지#스트레스컴퍼니 #심리스타트업 #스트레스관리 #서비스소개 #제품소개
조회수 1321

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

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

중국 역사속 인물로 보는 스타트업

 난 중국의 역사를 참 좋아한다. 열국지, 초한지, 삼국지 같은 책을 읽다 보면 현실에서 어떻게 해야 할 지 어느 정도 해답이 오기도 하고, 무엇보다 영화나 TV는 저리가라 할 정도로 드라마틱한 인생역정을 그 안에서 볼 수 있기 때문이다. 그리고 중국의 긴 역사 속에서도, 맨손으로 일어나 나라를 세웠거나, 불리한 상황을 어떻게든 역전해서 성공을 일궈낸 인물들의 일대기를 보다 보면, 이것도 하나의 스타트업이 아닌가 하는 생각이 불현듯 들 때가 있다. 오늘의 주제는 그렇게 정해졌다. 부담없이, 역사 상식 하나 얻어간다 생각하고 읽으면 딱 좋을 것 같다.1. '존버'의 대가 진 문공 흔히 '중원의 패자'나 '패자'같은 어구를 보게 된다. 이 단어를 보면서, 어릴 적에는 대체 뭘 팬다는 건지, 아니면 진 사람이라서 패자인 건지, 졌으면 왜 저렇게 띄워주는지 의아해했던 기억이 있다. '패자'라는 것은 춘추전국시대에 만들어진 단어로, 원래는 주나라 왕을 모시고(존왕) 오랑캐를 물리치는(양이) 제후국들 중에서 리더 격의 지위를 인정받은 나라의 군주를 일컫는 말이기도 하였고, 이렇게 유명한 군주 중에 '춘추오패'라는 인물들이 있다. 사전지식은 이쯤하고, 이 춘추오패의 다섯 명 중에 특히 드라마틱한 인생을 산 양반이 한 명 있으니, 그게 바로 진(晉) 문공 희중이이다.  거두절미하고 간략하게 말하면, 아버지 진 헌공이 사람을 잘못 들여서, 이 사람이 헌공의 세 아들을 서로 이간질을 시켜 태자는 자결시키고, 둘째(중이)와 셋째(이오)는 각자 도망쳤다가 헌공이 죽자 셋째아들이 돌아와 군주가 되었는데, 형이 아직 살아있으니 계속 자객을 보내 목숨을 끊으려 하는 바람에 정처없이 떠돌다가 초나라와 진(秦)나라의 도움을 받아 나라를 되찾고 중원의 패자가 된다는 스토리이다. 이렇게 말하면 별 것 아닌 몽테크리스토 백작이나 소공녀 같은 스토리라고 생각이 들 지도 모르겠다. 그러나 중요한 것은, 이 양반이 떠돌아다닌 기간이 19년이라는 것이다. 떠돌아다니면서 동네 농부들한테 모욕도 당하고(나중에 그 지방 전체를 개박살냈다고...), 조(曺)나라에 갔더니 환대를 받길래 '사람이 됐구만' 싶더니 목욕하는 걸 훔쳐보려 하기도 하고(중이는 눈에 눈동자가 둘인 중동에 갈비뼈가 통으로 되어있는 변협의 상이라는 소문이 있었다), 같은 춘추오패 중 한 명인 제 환공의 후대 아래 제나라 공녀와 결혼하여 자식을 보기도 하고, 하여간 별 일을 다 겪게 된다. 문공이 아닌 떨거지 공자 중이 시절에도, 그를 끝까지 따라다니던 가신들이 있었다. 같이 밥 빌어먹고 거지꼴이 되어가며 19년의 방랑 생활을 함께 한 인물들인데, 나중에 공의 자리에 즉위했을 때 그에 걸맞는 후한 보상을 얻은 것은 물론이다. 이쯤에서 감이 올 것이다. 진 문공이 스타트업과 무슨 관계가 있는지. 돈도 사람도 없이 초라한 유랑객에 불과했던 초기 상태에서 죽도록 고생을 하다 제 환공의 환대 아래 숨을 좀 돌리며 앞으로의 계획과 방향을 잡고(시드 투자), 초나라와 진나라에서 병력을 빌려(시리즈 A) 사업을 성공시키고 급기야는 중원의 패자 위치에까지 오르게 된 것을 보면, 스타트업의 성공과 맥락이 닿아있다는 느낌이 들 것이다. 그렇다. '존버'는 승리하는 것이다. 물론 진 문공이 자신을 도와준 사람들과 모욕한 사람들을 나누어 확실히 보답할 것은 보답하고, 응징할 것은 응징할 수 있을 만큼 대단한 인재였기 때문인 것도 있다. 실제로, 이후 초나라와 국경지대에서 싸움을 벌이게 되었을 때, 은의에 대한 보답으로 36킬로미터 정도를 그냥 후퇴해주었다는 일화를 보면 알 수 있는 부분이다. 갈비뼈 훔쳐보려고 했던 조나라는 작신작신 밟아줬다고 하고. 내가 모시는 이 사람에 대한 확신이 있다면, 이 사업 모델에 대한 확신이 있다면 우리도 19년까진 아니더라도 몇 년 정도는 '존버'하면서 대기만성을 노리는 것도 좋지 않을까.*워렌 버핏은 이런 말을 한 적이 없다.2. 혼자서는 승리할 수 없다, 초패왕 항우/듣는 리더십의 귀재, 한고조 유방 장기를 두어본 적이 한두번쯤은 있을 것이다. 아니면 장기판에서 말이 움직이는 것 정도는 보았거나. 장기판에서 해서체로 정갈하게 쓰여진 빨간색 말 중에는 '漢'이 있고, 초서체로 멋드러지게 쓰여진 초록색 말 중에는 '楚'가 있다. 초한전쟁에서 모티브를 따온 것이 그 연원이다. 요즘도 '항우장사'라는 말을 하는지는 모르겠지만, 옛날에는 기골이 장대하고 힘이 센 사람을 일컬어 항우장사라는 말을 했었다. 그만큼 힘, 무력, 용기와 담대함을 상징할 정도로 항우는 힘이 세고 용감했다는 뜻이다. 옛 초나라의 명장 항연 장군의 자손으로 명문가의 자제이기도 했다. 금수저였던 것이다. 반면 유방은, 술과 여자를 좋아하고 예의를 몰랐으며, 군신간에도 예의가 없어 술자리에서 위아래 없이 어울리고, 유학자나 선비가 지나가면 욕보여서 쫓아내는 것을 즐겨했다고 할 정도로 촌부 그 자체였다. 금수저는 커녕 흙수저 축에도 못 끼는 동네 한량이었음은 물론이다. 하지만 진시황 사후 어지러워진 중국 대륙을 통일하고, 중국인들이 아직도 숭상해 마지않는 진정한 의미의 통일국가 한나라를 세운 것은 유방이었다. 심지어 유방은 항우랑 싸우면 매번 지기만 했고, 이긴 것은 마지막 해하의 전투 단 한 번뿐이다. 짜증나게도 항우는 잘생기기까지 했다고 한다. 대체 글자도 제대로 모르는 촌놈이 명문가의 잘생기고 힘센 금수저를 이긴 비결은 무엇이었을까? 항우의 치명적인 단점은, 남의 의견에 귀를 기울이지 않았다는 점이다. 항우 세력의 대표적인 책략가 중 '범증'이라는 뛰어난 인물이 있었다. 항우가 아버지와 같다고 하여 중보(仲父)라고 부를 정도로 따랐던 이 사람은, 초나라가 유방의 세력을 박살내고 홍문에서 연회를 치렀을 때에 유방을 죽이라고 명령을 내렸지만, 항우가 듣지 않아 다 잡은 고기를 촉 땅으로 놓아주는 것을 그저 지켜볼 수 밖에 없었다. 결국 나중에 둘 사이가 악화되었고, 범증은 사직서를 쓰고 고향으로 돌아가던 중 울화병이 도져 죽게 된다. 논공행상에서도 항우의 단점은 크게 드러난다. 기분에 따라, 개인적인 사감에 따라 논공행상을 하니 바른말하고 일 잘하는 부하들의 불만이 크게 드러날 수 밖에 없다. 항우가 중국 대륙을 거의 통일했음에도 불구하고 끊임없는 반란과 배반에 시달린 것은 그 용인술에 있다. 반면 유방을 보자. 진나라를 공략할 때에 역이기라는 사람이 결정적인 정보를 손에 쥐고 유방을 찾았다. 평소부터 학자와 선비를 무시하던 그는 날도 더운지라 편안한 복장에 발을 씻으며 역이기를 맞았고, 이에 기분이 상한 역이기는 대노하며 그대로 돌아가려 했다. 유방은 뭔가 일이 잘못되었다는 생각이 들자 바로 옷을 제대로 갖추어 입고 손님을 맞는 예의로서 역이기를 다시금 맞아 사죄했다. 필요하다고 생각되면 남의 의견을 바르게 경청하고, 그에 따라 실행할 줄 아는 사람이었던 것이다. 논공행상 부분 역시 항우와 큰 차이를 보인다. 촌무지렁이 시절부터 유방을 따르던 사람 중에 소하라는 인물이 있다. 그야말로 행정의 귀재였던 그는, 유방이 항우를 물리치고 중국을 통일하여 한나라를 세우자 가장 큰 공을 인정받게 되었고, 전장에서 직접 전투를 지휘하던 장수들이 불만에 차 '목숨걸고 싸운 우리보다 뒤에서 붓만 놀리던 사람이 공이 큰 건 말이 안된다'며 항의하자, 유방은 사냥개와 사냥꾼의 비유를 들며 소하의 특권과 특혜를 유지하였다. 허례허식만을 좇고, 나의 의견이 곧 옳은 의견인 줄 아는 많은 이들에게 묻고 싶다. 집안 좋고 잘생기고 힘도 장사인 금수저가 결국 패배하여 자결하고, 필부의 집안에서 태어나 술과 여자를 좋아하던 한량이 그 금수저를 이긴 이유가 무엇인지 알고 있느냐고.*잘 듣는다는 것은 이렇게나 중요하지만, 그래도 인종차별은 하면 안 된다고 생각한다.3. 초기 멤버가 관우랑 장비네요? 촉한 소열제 유비 스타트업에서 초기 멤버의 중요성은 더 말할 것도 없을 것이다. 실패하면 같이 망하고, 성공하면 함께 그 기쁨을 누릴 수 있는 초기 멤버는, 억만금과도 바꿀 수 없는 가치가 있다고 생각한다. 모두가 알고 있을 삼국지의 그 유비이지만, 말이 좋아 황족이고 황숙이지 그저 떨거지에 불과한 양반이다. 삼국지연의에서는 '중산정왕의 후예' 운운하지만 유비가 한나라의 황실과 갖는 관계성은, 주변 사람 중에 아무나 전주 이씨 한 명을 붙잡았을 때 그 사람과 세종대왕이 어떤 관계인지 알아보는 것과 별반 다르지 않다. 황족임에는 틀림없지만, 정통 명문을 이어갔다면 촌구석에서 돗자리를 짜고 있었겠는가. 그 유비를 삼국의 한 축으로 올려놓을 수 있던 원동력은, 사람의 됨됨이를 파악하는 귀신같은 능력도 물론 있었지만, 역시 굵직굵직한 초기 멤버들의 능력이 아니었을까 싶다. 하긴 스티브 잡스도 어쩌다 만난 동네 친구가 워즈니악이었으니까, 이런 멤버 구성은 그야말로 하늘이 내려주는 것이 아닐까. 옆동네 대기업에서 스카웃 제의와 함께 핑키파이...아니 적토마를 받으면서도 형님께 갈 수 있다며 좋아하고, 삼국시대에서 유일하게 전장에서 적장의 목을 친(삼국지연의에 수많은 일기투 장면이 나오지만 실제 역사에 남아있는 건 관우가 안량을 벤 것 뿐이라고 한다) 데다가, 나중에는 한 지방의 도독을 맡을 정도의 능력을 가진 사람과, 그 관우가 '걔가 저보다 세요ㅎㅎ'라고 말해서 조조를 긴장하게 만들거나, 장판파에서 20기의 기병으로 500기의 호표기를 상대로 버텨낸 맹장이 초기 멤버라면 어디에 가도 일단 한 자리는 해먹을 수 있지 않을까 싶다. 간손미 간손미 하면서 조롱하지만 간옹, 손건, 미축같은 이들도 비범한 인재였음에는 분명하다. 거기에 제갈량이나 마초같은 인물까지 가면 굳이 설명할 필요가 있겠는가. 조조처럼 잘 나가는 환관의 자식이라 위세가 등등했던 것도 아니고, 손권처럼 지연과 혈연으로 얽힌 지방을 터전으로 삼을 수 있던 것도 아닌 유비가 결국 나라를 세울 정도로 성공한 것은 인재와 팀 구성의 중요성을 반증하는 결과라고 할 수 있다. 모사재인 성사재천이라는 말이 있다지만, 인재가 없으면 일조차 꾸밀 수 없다.*동네 친구가 얼마나 중요한 지는 말 할 필요도 없다. 이래서 친구를 잘 사귀어야 하는가 보다.4. 성공했다고 변하면 바로 훅 가는 겁니다, 진무제 사마염 요 위의 삼국시대에서 가열차게 치고 받던 위, 한, 오는 결국 사마의의 자손들이 통수를 치고 진나라를 세움으로써 결말이 나게 된다. 삼국지연의에 빠져서 열심히 책을 읽던 이들이 갑분싸라는 말의 뜻을 깨닫게 되는 부분이며, 수많은 삼국지 팬들이 후반부를 그리 좋아하지 않게 되는 이유이기도 하다. 그렇게 진나라를 세웠으면 제대로 다스려서 태평성대를 이루기라도 해야지, 3대가 채 지나기 전에 나라를 말아먹어 5호 16국 시대를 연 장본인이 바로 사마염이다. 즉위 초반에는 개념찬 인물이었다. 꿩의 머리털을 이어 만든 사치스러운 모자 중에 '치두구'라는 물건이 있었는데, 수하 중 한 명이 이것들 사마염에게 바치자 즉각 태워버리라고 말할 정도로 검소한 생활을 유지했고, 영명하고 사리분별이 밝아 그야말로 명군이 될 것이라 모두가 믿어 의심치 않았다고 한다. 그러나 지리적 이점을 이용하여 마지막까지 버티던 오나라를 멸망시키고 중국 대륙을 통일하고 나니까 긴장이 풀린 것일까, 아니면 흔히 말하는 '현타'가 온 것일까, 바로 태세를 전환하여 세상의 온갖 사치와 향락에 빠져살게 된다. 당시 중국 대륙의 호구 수가 약 1,600만명 정도였다고 하는데, 후궁 1만명을 들여 매일 밤마다 양이 끄는 수레를 타고 그 수레가 멈추는 곳의 후궁과 밤을 보냈다고 한다. 태워버리라고 했던 치두구를 산더미처럼 쌓아놓고 '이까짓게 뭐라고 그렇게 무서워했는지'라며 껄껄 웃었다는 기록도 있고, 그나마 남아있던 바른말 하는 신하가 '폐하는 후한의 환제와 영제처럼 사치하고 부패한 군주입니다'라는 말을 해도 그저 웃어넘길 뿐 아무것도 나아지는 것이 없었다고 한다. 결국 지적 능력에 문제가 있는 아들 사마충이 황위에 오르고, 팔왕의 난과 영가의 난을 통해 4대만에 진나라를 말아먹고 사마예가 동진을 세우게 되는 원인을 만든다. 동진 역시 그리 오래가지 않아 망하게 되었고. 물론 진나라가 오래가지 못한 데에는 구품관인법의 시행으로 인한 귀족들의 카르텔 형성과 심각한 권력 독점, 사치, 부패도 있었고, 어린 나이의 황제들이 휘깍휘깍 죽어나가 권위가 약화된 것도 원인이 있었지만, 그런 풍조를 제 때에 정리하고 확립하지 못한 사마염의 잘못이 가장 크다고 보는 시각이 많다. 비록 사마염은 할아버지 사마의와 아버지 사마소가 이뤄놓은 업적에 방점을 찍기만 했다는 평가를 많이 받지만, 나름 명군의 자질을 갖춘 인재였다. 99%를 이룩해도 마지막 1%를 만족시키지 못하면 결국 실패라는 점에서, 전대의 과업을 완수하는 것으로도 충분한 능력이 있음을 입증한 것은 맞다. 그러나 성공한 뒤에 초심을 잃고 사람이 변질된다면, 결국 좋은 결과를 얻기 힘들다는 것을 알 수 있다. 여담으로 구품관인법에 대해서 말하자면, 중정이라는 기관을 통해 관직에 오를 사람을 평가하고 천거하는 방식이었기에 쉽게 카르텔 형성이 가능했고, 공정한 평가가 이루어지기보다는 중정의 비위를 맞추느라 굽신거리는 사람이 벼슬에 오르는 경우가 더 많았다. 결국 뜻 있고 능력있는 이들은 죽림칠현으로 대표되는 청류파가 되어 시골 산천에 은거하게 되었으니, 누군가의 추천에 의한 채용이 어떠한 결과를 낳는지는 이렇듯 역사가 말해주고 있다. *항상 우리는 초심을 잃지 말아야 한다.성공한 뒤에도, 연애할 때도.5. 스타트업 끝판왕, 명태조 홍무제 주원장 앞서 말한 진 문공은 그야말로 떠돌이 왕자였으며, 유방은 작은 동네의 이장이라도 해먹었고 동네 사람들이 두루 따르는지라 자기 세력이 있는 사람이었다. 유비도 알게모르게 황실의 종친이라는 부분에서 대의명분이나 도덕성 면에서 얻은 이득이 많다. 하지만 명태조 주원장만큼 정말 아무것도 없는 거지에서 일국의 황제로까지 올라온 입지전적인 인물은 세계사를 찾아봐도 없다. 어떤 정도냐면, 주원장은 고아였고, 거지였다. 하다하다 먹고 살 수가 없어서 승려 생활을 했던 적도 있다. 심지어 명나라도 도적무리인 홍건적 세력을 바탕으로 세웠다. 원나라 말기에 나라가 슬슬 망조가 들고, 사람들이 온통 굶어죽어 일가친척 의지할 곳이 없자 홍건적에 가입하여 세력을 키웠고, 그렇게 슬금슬금 세력을 키워나가다 결국 중국 대륙을 통일까지 해버리고 황제의 자리에 올랐다. 인품이 썩 훌륭하지는 않았는지 탁발승 생활을 할 때의 수치심이 평생 트라우마가 되어 대머리 독(禿)자를 쓰면 목이 날아갔다거나,  왕권 강화를 위한 숙청을 너무 해서 9만 명이 넘게 죽어나갔다거나 하는 일들이 있었지만, 백성들은 풍족하고 살기 좋은 나라를 만들었다며 온통 찬양하였다고 한다.  스타트업 업계에도 유복한 가정에서 태어나 성공하는 이들이 있고, 더러는 호부 밑에 견자 없다는 말이 마냥 맞는 말은 아니라는 것을 몸으로 보여주는 이들도 있다. 중요한 것은 집안, 학벌, 재력과 같이 주어진 것이 아니라, 스스로 쟁취하고 체득하는 것들임을 보여주는 완벽한 예시가 주원장이라고 할 수 있다. 파나소닉의 창립자 마츠시타 코노스케는 초졸이었고, 손정의는 재일교포라며 머리에 돌을 맞기도 했다. 잡스와 워즈니악은 별 볼일 없는 동네 청년들이었으며, 제프 베조스는 창고에서 아마존을 시작했다....다들 대머리인 걸 보면 역시 주원장은 옳았던 걸까. 여튼 중요한 것은 무엇을 가지고 있느냐가 아니라, 무엇을 얻어내는가가 아닐까 싶다.*성공을 위해서라면 자라나라 머리머리를 외치지 않을 용기가 필요할 지도 모른다.#더팀스 #THETEAMS #역사로보는 #스타트업 #자라나라머리머리 #역사에서 #배우기\ 
조회수 2654

Top Ten Things to do in Seoul for Gamers

Whether you live in Korea or you finally planned a backpacking tour through Asia, Seoul is a must-see city for travelers interested in a unique culture, great food, and of course, K-pop. With so much to offer, many nerdy attractions are better known to locals and not often represented on popular tourist sites. Here is a list of 10 experiences Seoul has to offer for nerds, gamers, or anyone exploring the city. Video Game Alley Thousands of games to buy! Source: Kiss My Kimchi Although this sounds pretty self-explanatory, the alley is actually a basement in Yongsan filled to the brim with all types of video games imaginable. Not only can you find new games and old classics, they also have a lot of unique games only sold in Asia. This place is a must visit for any games enthusiast who wants to expand their collection.Location: Within Yongsan Electronics Market off Sinyongsan Station (Line 4)Retro Game Bar Tetris themed bar. Source: Retro Game Bar Want to enjoy games and drinks? This is the place for you. Come alone, with friends, or coworkers to watch livestream eSports games on TVs throughout the joint or challenge each other in video and tabletop games. RGB also hosts a variety of different events like DnD Sunday and FIFA Tournaments throughout the week. Even casual gamers will have fun drinking and enjoying other typical bar games like beer pong and darts.Location: 407-26 Seogyo-dong, Mapo-gu, Seoul, South KoreaLilyCat Cat Café Cute cats hanging out. Source: Facebook Cats, tea, and games, what’s not to like? In addition to adorable furry companions, LilyCat also has board games, making it one of the few board game cafés in Seoul. While sipping your drink and watching the cats jump and play, you can also rent out a variety of different board games to pass the time.Location: Myeongdong 2(i)-ga, Jung-gu, Seoul, South KoreaBANG The entrance to one of Seoul's many PC Bang. Source: Flickr Bang, which means “rooms” in Korean, are exactly what they sound like: rooms. These rooms have a variety of activities depending on the type of bang you visit. Most popular are PC Bang, which have speedy internet, lots of comfy chairs, and big screen TVs to game the day or night away. A few other variations include Cartoon Bang and PlayStation Bang, where you can read comic books or play FIFA with friends.Location: Spread out throughout SeoulVR Park Family enjoying the fun "ride." Source: VR Park Movie Company CGV and VR developers Barunson came together to bring you an amazing VR game experience in Yeongdeungpo Times Square. There you can spend hours on rollercoasters, playing the drums, and shooting a bow and arrow without actually going anywhere. What looks to be a theatre theater lined with seats and controllers, becomes an immersive experience for all ages.Location: 15, Yeongjung-ro, Yeongdeungpo-gu, Seoul, South KoreaCinema World Restaurant The outside of the restaurant and museum. Source: Facebook If you need your nerdy food fix, you may have to travel a couple hours south of Seoul over to Daegu. Here, you can find great food and an enormous collection of memorabilia from Marvel to Star Wars. The youthful collection was amassed by designer Woong Cho, who created the museum and filled it with small figurines, life-sized statues and everything in between. Go to the third floor to see the collection and then enjoy delicious food in the café or on the rooftop terrace.Location: 290 (Daeungpyeong-dong 437-1), Gyeongsan 712-130Seoul Animation Center The Center hosting an animation festival. Source: Wikipedia Cartoon characters are scattered across the path on the way to the entrance of this museum. The center includes a cartoon museum that showcases a themed exhibition hall and a room to build your own cartoon character. The library inside also has an expansive collection of animated films and books for visitors to watch, read and enjoy. The rest of the center shows animators at work and even lets you create your own Claymation video. All around, a great place for anime lovers.Location: 8-145 Yejang-dong, Jung-gu, Seoul 100-250, South KoreaConventions and Festivals Seoul Comic Con 2017. Source: Seoul Comic Con The ever popular “Cons” often come to Seoul to showcase what’s new in tech, games, and the industry as a whole. While they only come once a year, there is a high chance to catch one while in Korea. Boardgame Con hosts contests and other events centering on the best international board games while Pokémon World Festival celebrates everything Pokémon-related, especially Pikachu. Checking for events monthly can help you plan, which experiences you want to attend.Location: VariesSeoul Escape Room A cool poster for one of the escape room themes. Source: Seoul Escape While this isn’t exactly playable on your PS4, the escape room experience is a fun way to think through strategy and teamwork that you would have used playing League. Escape rooms have grown in popularity throughout the world and Seoul is not exempt. The premise is different depending on the escape room theme chosen, but you and a group of friends or strangers are put into a room and must solve riddles and follow clues within the time limit in order to escape. A fun blend of mystery, drama and stress will have you wanting to try all 17 rooms. Because many of the rooms must remain secret, you’ll just have to go Seoul and try one for yourself.Location: 156, Wausan-ro, Mapo-gu 3rd Floor, Seoul 04061, South KoreaLotte World An inside look into the famous Lotte World. Source: Wikipedia No top ten list in Seoul would be complete without mentioning Lotte World. The world’s largest indoor theme park is also home to an enormous arcade. Although there is nothing specifically unusual about this arcade, there are tons of games to play and its location inside Lotte World makes it worth visiting. You can explore rides and do some shopping as well. Another floor of Lotte also has the SBS Theme Studio where you can watch KIGL (Korean Internet Game League) and other internet gaming competitions. Well worth a visit!Location: 240 Olympic-ro, Jamsil 3(sam)-dong, Songpa-gu, Seoul, South Korea  Whether you live in Korea or you finally planned a backpacking tour through Asia, Seoul is a must-see city for travelers interested in a unique culture, great food, and of course, K-pop. With so much to offer, many nerdy attractions are better known to locals and not often represented on popular tourist sites. Here is a list of 10 experiences Seoul has to offer for nerds, gamers, or anyone exploring the city. Video Game Alley Thousands of games to buy! Source: Kiss My Kimchi  Although this sounds pretty self-explanatory, the alley is actually a basement in Yongsan filled to the brim with all types of video games imaginable. Not only can you find new games and old classics, they also have a lot of unique games only sold in Asia. This place is a must visit for any games enthusiast who wants to expand their collection.Location: Within Yongsan Electronics Market off Sinyongsan Station (Line 4) 
조회수 1697

개발자 직군 파헤치기 3 | 블록체인 개발자

이번 포스팅은 블록체인 개발자!2017년 대한민국은 가상화폐의 광풍에 휩싸이게 된다. 남녀노소 가릴 것 없이 많은 사람들이 가상화폐에 투자를 했다. 전 세계에 유례가 없을 정도로 국내 가상화폐 투자 열기는 뜨거웠으며 해외의 가상화폐 투자자들은 국내 투자자들의 움직임에 예의주시하면서 투자할 정도였다.이와 동시에 가상화폐의 기술적 원천이 된 블록체인(Block Chain) 기술에 대한 관심도 증가했다. 제2의 인터넷이 될 거라는 찬사를 받으면서 가상화폐의 부상은 뜨거운 관심의 대상이었다. 정부의 가상화폐 규제가 있었지만 시장에서는 블록체인 기술의 잠재적 가능성에 주목을 하면서 이것을 가지고 어떻게 혁신적인 서비스를 제공할지 고심하고 있다. 이에 따라 일반 개발자는 물론이고 기업에서도 블록체인 개발자에 대한 수요와 관심이 늘고 있다.이러한 관심 때문에 개발자를 꿈꾸는 많은 분들이 블록체인 개발자는 무엇을 하고 어떻게 될 수 있는 것인지 궁금해하고 있다. 그래서 이번 포스팅에서는 블록체인 개발자가 되기 위해서는 어떻게 해야 하는지와 더불어, 블록체인 기술에 대한 전망 그리고 블록체인 개발자의 시장 수요에 대한 글을 써 볼 것이다.*이 글은 블록체인 기술에 대한 자세한 설명은 하지 않고 있습니다.*Photo by Andre Francois on Unsplash미래를 여는 신기술, 블록체인의 전망블록체인 기술이 뜨고 있다고 하지만 도대체 어떤 분야에서 적용될 수 있기에 이렇게 많은 관심을 받고 있는 것일까? '딱 이 분야가 유망합니다'라고 말하기가 어려울 정도로 블록체인은 폭넓은 분야에 걸쳐서 파괴적인 혁신성을 가지고 있다. 그중  몇 가지만 추려서 이야기하고자 한다.1. 금융, 은행블록체인의 기술의 특징은 탈 중앙화, 신뢰성, 보안성이다. 전문가들은 기존의 은행들이 하던 업무를 핀테크 기업들이 혁신적인 서비스와 가격으로 대체할 것으로 예상한다. 블록체인 기술이 가지고 있는 신뢰성과 보안성으로 인해 일반 기업들도 거대 은행이 보유하고 있는 보안성을 획득할 수 있는 것이다. 거래 과정에서 제3자를 거치지 않기 때문에 거래의 속도와 효율성 그리고 경제성이 크게 증가한다.핀테크 스타트업뿐만 아니라 거대 금융권의 은행들이나 기존의 대기업들도 블록체인 기술을 이용한 서비스를 발 빠르게 준비하고 있다. 마스터카드는 블록체인 기술을 통해 즉석 지불 시스템을 개발하고 있다. 또한 글로벌 기업 IBM은 서로 다른 국가에 위치한 금융 기관이 블록체인 기술을 이용해서 결제를 처리할 수 있도록 하는 뱅킹 솔루션을 개발했다.현재 이더리움이 선도하는 스마트 계약도 금융권에서 주목하는 분야다. 스마트 계약은 특정 조건이 충족되면 은행과 같은 제3자를 거치지 않고 계약을 이행하게끔 도와준다. 예를 들어, 납품 기업과 발주 기업이 스마트 계약을 맺었다. 납품 기업이 발주 기업의 창고에 물품을 보내고 물품이 도착을 하면(IOT 센서로 감지된다) 납품 기업은 자동으로 결제 대금을 자동으로 받게 된다.2. 물류위에서 블록체인 기술의 특징 중 신뢰성과 보안성을 언급했다. 정보의 신뢰성과 보안성은 물류 시스템에도 파급력을 미칠 것이다. 많은 전문가들이 블록체인으로 인해 물류 시스템에 혁신적인 변화가 가능하다고 말한다. 블록체인 기술이 어떻게 물류 시스템에 적용될 수 있는지 직접 예시로 살펴보자.영국의 소프트웨어 회사 프로비넌스는 블록체인 기술을 이용해서 소매업자와 식당들이 원래 계약했던 대로 재료가 들어오는지 확인할 수 있게 만들었다. 트래킹(tracking) 기술과 결합하여 만든 이 소프트웨어는 재료가 수확되는 과정부터 최종 소비자가 구매하는 단계까지 꼼꼼히 추적하고 관리한다. 공급망의 모든 단계에서 변경 불가능한 데이터가 블록에 추가된다. 이 소프트웨어를 통해 소비자들은 자신이 무엇을 먹는지, 기업이 불법 조업을 통해 재료를 조달한 것이 아닌지, 이 농작물에 대한 적절한 보상이 농부에게 돌아갔는지, 이 식재료가 유기농이 맞는지 명확하게 확인할 수 있다.한편, 중국의 월마트와 IBM이 협력해 중국에서 유통되는 돼지고기의 유통 전 과정을 블록체인 기술을 활용해 추적을 하기도 했다. 월마트는 더 나아가 농산물 공급망의 모든 단계를 추적하기 위한 프로젝트를 IBM과 진행하고 있다. 또한 영국의 신생기업 에버레저는 블록체인 기술을 이용해 다이아몬드와 같은 고부가 가치 상품들의 원산지 추적과 인증을 IBM 블록체인 기술을 활용하고 있다.3. 디지털 콘텐츠블록체인 기술로 디지털 콘텐츠에 대한 지적 재산권 보호를 더 확실하게 할 수 있다. 기존에는 불법적인 경로로 승인되지 않은 디지털 콘텐츠들이 유포가 됐다. 하지만 블록체인 기술로 온라인 콘텐츠에 대한 저작권, 권한, 결제를 관리할 수 있도록 작업할 수 있다. 블록체인 기술을 통해 콘텐츠 원저자의 증명을 더 쉽게 하고 해당 콘텐츠에 누가 접근을 했는지 추적할 수 있다.또한 항상 이슈가 되어 왔던 뮤지션들의 음반 판매 금액에 대해서도 블록체인 기술이 혁신을 가져다줄 것이다. 기존의 중간 단계의 서비스를 없애고 비용을 절감해서 음반 제작자들에게 더 많은 몫이 돌아갈 수 있다. 위에서 언급한 스마트 계약을 통해 라이선스 이슈의 문제들도 해결할 수 있다.블록체인 개발자, 얼마나 핫해?블록체인 기술에 대한 뜨거운 관심에 힘입어 블록체인 개발자에 대한 수요도 크게 증가하고 있다. 아직은 국내에서 가상화폐에 대한 비즈니스가 주를 이루고 있지만 정부의 정책과 시장의 기대와 맞물려 그 수요는 더욱더 커질 예정이다. 여기 블록체인 개발자의 수요에 대한 기사 있다.기사에 따르면 지난 1분기 취업사이트 잡코리아에 블록체인 키워드로 등록된 채용공고는 총 1500여 건이다. 이는 전년 동기 대비 9배 이상 늘어난 수치라고 한다. 또 잡코리아가 분석한 결과 지난해 하반기부터 암호화폐 개발자 수요가 급증했다고 한다. 지난해 1분기와 비교하면 올해 1분기 등록건수는 9배 이상이며 직전 분기와 비교해도 3배에 달한다.다른 아웃소싱 플랫폼 사이트도 비슷하다. 4만 7천 명의 유저를 보유한 위시캣에 따르면 2014년 8월부터 지난달까지 등록된 암호화폐 관련 프로젝트는 108건이다. 그리고 이 중에 절반인 55번이 올해 1분기에 등록이 되었다고 한다. 개발자 커뮤니티 OKKY에 올라온 구인 글에는 월 급여 900만 원을 제시하고 암호화폐 개발하는 개발자를 찾고 있었다. 또 구인 사이트에 올라온 암호화폐 거래소 프로젝트 중 개발비용이 45일 동안 2억 5천만 원에 이른 사례도 있었다.기사에 나온 것처럼 블록체인 개발자의 수요는 암호화폐에 집중되어 있기는 하지만 빠르게 증가하고 있다. 또 많은 기업들이 암호화폐가 아닌 다른 비즈니스의 모델을 찾으면서 블록체인 서비스를 준비하고 있다. 블록체인 개발자는 말 그대로 요즘 가장 핫하다고 할 수 있다.그래서 블록체인 개발자 되기 위해서는?이렇게 핫한 블록체인 개발자가 되기 위해서는 어떤 기술들을 공부해야 할까? 물론 어떤 분야의 개발자가 된다는 것이 특정 기술을 익힌다고 되는 것은 아니다. 웹 개발자가 된다고 해서 자바스크립트와 HTML, CSS를 익힌다고 되는 것이 아닌 것처럼 말이다. 회사마다 진행하는 프로젝트가 있고 그것에 맞춘 기술 스택들을 익혀야 한다. 하지만, 그럼에도 블록체인 개발에 있어서 주류가 되는 기술들은 있다. 이것들을 공부해 가면서 블록체인 개발자를 준비한다면 한층 더 수월해질 것이다.1.솔리디티(Solidity)솔리디티는 블록체인 플랫폼에서 스마트 계약을 만들기 위한 프로그래밍 언어다. 이더리움의 핵심인 스마트 계약을 만들기 위해서는 솔리디티를 배워야 한다. 솔리디티는 EVM(Ethereum Virtual Machine)에서 돌아가도록 설계되었고, 자바스크립트와 비슷한 문법 구조를 갖고 있다. 자바스크립트를 알고 있다면 배우기가 훨씬 수월할 것이다.블록체인은 다양한 분야가 존재하지만 그중 스마트 계약은 가장 대표적인 혁신 기술이다. 그 스마트 계약 기술을 선도하는 이더리움 프로젝트를 다루기 위해서는 솔리디티를 배우는 것이 필수적이다. 블록체인 개발에도 다양한 기술 스택들이 있겠지만 주류 기술을 배운다고 하면 솔리디티를 배워야 한다.솔리디티를 배우기 위해서는 다양한 방법이 있겠지만, 유데미의 강좌를 들으면서 공부하는 것을 추천한다. 저렴한 가격에 퀄리티 높은 강좌를 들을 수 있다. 자세한 사항은 이곳을 참고하면 된다.2.하이퍼레저(Hyperledger)블록체인이 개념이 퍼블릭 네트워크 기반의 시스템이기는 하지만 누구나 데이터를 볼 수 있기 때문에 기밀문서 관리에는 사용되기 힘들다. 특히 금융권이나 기업 문서 같은 경우는 더더욱 그러하다. 그래서 폐쇄적인 프라이빗 네트워크 내에서 블록체인을 활용할 수 있는 기술이 필요하다.하이퍼레저는 이러한 프라이빗 블록체인을 필요로 하는 기업들의 연합체라고 볼 수 있다. 이 기업들은 컨소시엄을 맺고 프라이빗 블록체인을 더 발전시키려고 다양한 분야에서 협업하고 있다. 하이퍼레저 프로젝트는 리눅스 재단에서 주도하며 금융, 은행, 제조, 기술 등 다양한 분야에 관여한다. 그리고 이 프로젝트는 스마트 계약, 분산 합의 네트워크에 목표를 두고 있다.지금까지 에어버스, 엑센츄어, 바이두, IBM, J.P 모건, 히타치, 삼성 SDS 등 다양한 기업이 하이퍼레저에 포함되어 있다. 그만큼 많은 기업들이 하이퍼레저 프로젝트에 관심을 가지고 있다. 하이퍼레저 역시 유데미의 강좌를 통해서 배울 수 있다. 자세한 사항은 이곳을 참고하면 된다.블록체인 개발자의 첫걸음블록체인 개발자가 되기 위해서는 위의 기술 스택뿐만 아니라 기본적으로 백엔드에 대한 지식과 최소한 암호 기법에 대한 기본 지식이 있어야 한다. 또한, 블록체인의 많은 API 및 SDK가 자바스크립트와 nod.js로 이루어져 있다. 무엇부터 시작해야 할지 모르는 분이라면 자바스크립트부터 시작하면서 첫걸음을 떼는 것을 추천한다.블록체인은 IT 기술의 최전선에 있는 기술이다. 그렇기 때문에 산업 동향을 항상 예의주시하면서 빠르게 움직여야 한다. 기업이 원하는 블록체인 기술 스택을 빠르게 습득하고 그에 맞는 실력을 갖추는 것이 중요하다.지금까지 블록체인 개발자에 대해 알아보았다. 많은 내용들을 다루다 보니 각각에 내용들에 깊이 있게 다루지는 못했다. 그래도 이 글을 통해 블록체인 개발자가 되기 위한 가닥은 잡을 수 있었으면 좋겠다.
조회수 6128

UI 사용성 평가, 쉽고 간편하게 하는 방법 #2

지난 글에서 UI 사용성 평가를 간단하게 하는 방법에 대해 소개하였었습니다.UI 사용성 평가, 쉽고 간편하게 하는 방법 (https://www.theteams.kr/teams/143/post/64513)그리고 '진행순서&방법'에 대해서는 가장 중요한 부분으로써 따로 분리하여 더 자세히 소개하겠다고 글 말미에 알렸었는데 오늘 본 글을 통해서 바로 그 부분을 소개하고자 합니다. 따라서 이 글의 문맥을 이해하기 위해, 먼저 지난 글을 확인하시는 것을 권해 드립니다. (그냥 보시면 뜬금없는 전개...)먼저 지난 글을 통해 DIY 사용성 평가 방법의 ‘진행순서&방법’에는 다음과 같은 6단계의 순서로  이루어졌다고 소개하였습니다.인사(4분) > 배경 질문(2분) > 둘러보기(3분) > 과제(35분) > 심층질문(5분) > 마무리(5분)본 글 속 상황은 본격적으로 위 6가지의 진행과정이 시작되는 순간으로써 테스트 참여자와 진행자가 디바이스 앞에 나란히 앉아 있는 상황입니다. 그리고 이런 상황에 처한 진행자의 단계별 진행 방법을 자세히 소개합니다.또한 글을 시작하기에 앞서,내용의 대부분은 질문에 대한 부분이 차지하고 있는데 바로 이 질문이 사용성 평가의 핵심이기 때문입니다.그렇기에 꼭 당부하고 싶은 부분은 테스트 간 질문 시에는  ‘왜?’라는 이유를 들을 수 있는 개방형 질문으로 하는 것을 반드시 권합니다. 개방형 질문을 잘 사용할 경우 폐쇄형 질문으로는 결코 알 수 없는 깊숙이 숨겨진 부분을 발견할 수 있기 때문입니다. 이에 대한 재밌는 영상이 있어서 아래  첨부하였으니 재미 삼아 가볍게 보실 수 있습니다.사전 준비테스트하려는 환경의 디바이스 (PC나 모바일 등), 스크린 녹화 프로그램, 스크립트 및 평가지 등을 준비한다.모바일 애플리케이션 등을  테스트하기 위해서는 모바일 화면을 PC로 볼 수 있게 하는 미러링 도구가 필요한데, 찾아보면 다양한 도구가 존재한다. 알고 있는 맥 기준 무료 도구로는 다음과 같은 도구가 있다.iPhone - Mac기본 맥 애플리케이션인 ‘Quick Time Player’로 가능하다. 아이폰과 맥을 USB 케이블로 연결하여 앱 스크린을 녹화할 수 있다.Android - Mac&Windows'모비즌'(https://www.mobizen.com)이란 도구가 있다'Quick Time Player' 를 통한 미러링 녹화 화면1. 인사(4분)참여자가 진행과정을 이해한 상태에서 평가에 임할 수 있도록 진행방법을 설명한다.‘안녕하세요 저는  oo입니다. 우리는 만들고 있는 서비스를 평가해 보고자 하며 약 1시간 정도 소요될 예정입니다'…(중략)'우리가 평가하려는 대상은 참여자가 아닌 서비스라는 것을  기억해주세요. 참여자의 행동이 옳은지 그른지 판단하는 것이 아니므로 어떤 행동을 하시더라도 틀린 행동이 아닙니다. 그러니 실수할까 봐 걱정하지 않으셔도 괜찮습니다.'…(중략)‘부정적인 의견에 우리가 불쾌할까 봐 걱정하지 마시고 생각하는 바를 명확히 알려주세요. 개선점을 찾기 위해 진행하는 것이니까요. 머릿속에서 생각하시는 모든 것을 입으로 소리 내어 표현해주세요.'…(중략)‘어떤 질문이든 편하게 해주셔도 좋습니다. 다만 질문의 답은 바로 드리지 못할 수도 있습니다. 왜냐하면 도와줄 사람 없이 어떻게 행동하실지 알아보기 위해 진행하는 것이니까요. 끝까지 궁금증이 풀리지 않은 부분은 평가를 마친 후 알려 드리겠습니다.'…(중략)‘평가 중인 화면과 대화는 녹화되고 있으나 얼굴이 나오지는 않으니 안심하셔도 좋습니다. 또한 절대 공개되지 않습니다.'이러한 내용들을 미리 안내하는 것은 중요하다.참여자들의 솔직한 의견을 듣고자 함을 미리 알릴 수 있는 과정이자, 평가 중 여러 어려운 상황을 미리 방어할 수 있기 때문이다. 또한 얼굴이 녹화될까 봐 걱정하시는 분들이 대단히 많으니 이에 대해서도 미리 알려드리는 게 좋다.2. 배경 질문(2분)참여자에 대해 몇 가지 질문을 던지다. 참여자의 긴장을 풀어주며 사전 지식을 가늠할 수 있다‘직업이 어떻게  되시나요?... 정확히 어떤 일을 하는 직업이죠?'…(중략)‘그렇다면 평소 인터넷 또는 스마트폰 사용시간이 어떻게 되나요?'…(중략)‘어떤 목적으로 주로 사용하시는지 비율과 함께 대략적으로나마 말씀해주세요'…(중략)‘평소 어떤 서비스를 많이 사용하시나요... 왜죠?'참여자가 어떤 사람이고 사용 행동 패턴은 어떤지 대강 감이 올 정도의 질문 몇 개로 시작하는 게 좋다.만약 질문에 정확한 답을 듣지 못하더라도 괜찮다. 이 과정의 목적은 진행자가 참여자의 이야기를 주의 깊게 듣고 있다는 사실을 전하며 답하는 내용에는 옳고 틀림이 없다는 것을 확인해 주는 과정이다.3. 둘러보기(3분)서비스 첫 화면의 첫인상으로 서비스가 제대로 이해를 전달하는지 파악한다.‘아직 클릭 또는 터치하지 마시고 먼저 첫 화면만을 둘러본 뒤 전체적인 느낌을 말씀해주세요... 왜 그렇게 느끼셨죠?'…(중략)‘제일 처음 어떤 부분이 시선을  사로잡았나요?... 그것은 왜죠?'…(중략)‘이 서비스는 어떤 서비스로  추측되시나요?... 그것은 왜죠?'…(중략)‘이 사이트에서 도움될 만한 부분이 있는지 생각해보시겠어요?'…(중략)‘가장 먼저 무엇을 클릭 또는   터치하시겠습니까?... 선택한 이유는 무엇이죠?'첫 느낌을 물어볼 때 많은 사람들은 서비스의 미적인 부분에 대해서  이야기하기도 하지만 이 반응에  일희일비하지 않아도 괜찮다. 그보다 더욱 신경 써야 할 부분은 서비스 자체가 사용자에게 한눈에  이해되는 것이기 때문이다.  그리고 앞서 소개했다시피 질문 후 어째서 그렇게 생각하였는지 알기 위해 ‘왜?’라는 질문도 더하도록 한다.4. 과제(35분)평가의 핵심적인 부분으로 참여자가 일련의 과정을 수행하는 모습을 관찰하는 부분이다.‘이제 몇 가지 과제를 해볼 텐데 머릿속에 떠오르는 내용들은 소리 내어 말씀해주시면 도움이 됩니다'…(중략)‘가장 먼저 하고 싶던 부분을 스스로 진행해보세요'…(중략)‘왜 죠?... 지금 어떤 느낌이 드나요?...  그다음엔 무얼 하실 건가요?'…(중략)‘이제 과제를 하나씩 드릴 텐데요 ex. 회원가입 후 로그인해보세요... 비밀번호 잊었다고 가정하고 비밀번호를 찾아보세요'이와 같이 스스로 서비스를 마음껏 이용해 보게 한 뒤, 다음 차례로 미리 준비해둔 과제를 3~4개 제공한다. 그리고 참여자 스스로 생각과 의견을 많이 말할 수 있도록 좋은 질문과 함께 역시  ‘왜?’라는 이유를 묻도록 한다.5. 심층질문(5분)과제 간에 행동을 유도할까 봐 미처 하지 못했던 질문을 할 수 있다.‘과제는 다 마쳤고 몇 가지 여쭤보겠습니다. ex. 가이드가 있었는데 왜 스킵하셨나요?'…(중략)‘그렇다면 ex. 가이드에 주의를 기울이지 않은 이유는 무엇인가요?'…(중략)‘아까 질문에 답 못해드렸는데 그것은 ex. 갤러리 화면 이었습니다. 이에 대해 어떤 생각이 드나요?'위 예시의 질문들은 과제 수행 중 질문하였다면 참여자에게 미리 편견을 주거나 행동을 유도할 수 있었을 것이다. 때문에 이러한 종류의 문의는 꼭 심층질문으로 따로 빼서 질문하도록 한다. 질문에 답하지 못했던 부분도 마찬가지이다.6. 마무리감사인사와 함께 마친다.이것으로 스타트업에서 사용할 수 있는 사용성 평가 방법인 'DIY 사용성 평가' 방법에 대해 소개를 마쳤습니다.[사용자를 생각하게 하지 마 Don't make me think] 책의 내용을 참고하여 직접 실무에서 사용했던 방법들을 덧붙여 작성하였는데 역시 자세한 내용은 책을 추천합니다.쓰다 보니 ‘왜?’라는 질문을 짧게 넣기 위해서 공격적이고 단편적으로 작성된 경향이 있는 것 같습니다. 여러분이 실제 사용할 시에는 좀 더 부드럽게 질문하길 권해드리며, 또한 단편적인 면만이 아닌 '왜 좋고, 왜 나쁜지' 양측 의견을 모두 들을 수 있도록 질문하길 권해드립니다.한 달에  한 번씩 UX나 실무 관련 글을 작성하고자 합니다. 다음 글은 내년 1월에 뵙겠습니다.새해 복 많이 받으세요!참조 : [사용자를 생각하게 하지 마 Don't make me think]#텐시티 #UI #UX #사용성개선 #사용성평가 #업무프로세스 #인사이트
조회수 718

궁금해서 여행다녀오겠습니다 - 2

세계 일주의 기획: 더 크게 놀아보자 나는 더 큰 판을 벌여 보기로 했다. '500일간의 세계일주'라는 좀 더 큰 판. 도시를 하나씩 차례차례 방문하던 것을 넘어, 전 세계 모든 도시를 다 가보려는 계획을 세우기 시작했다. 그러기 위해 많은 시간과 돈이 필요한 만큼, 차근차근 준비가 필요했다. 가장 중요한 건 돈, 시간, 사전 준비 여행기획이였다. 여행에 장시간이 필요하니, 회사를 퇴사하고 가야 함이 명백했고, 그러기 위해 퇴사 전까지 계속 월급을 모았고, 투자를 통해 자산을 좀 더 늘렸다. 그렇게 5년 동안 차근차근 준비를 해나갔다. 어떻게 제대로 준비할 수 있을까? Test Trip 진행  나는 사전 준비에도 많은 공을 들였다. 다른 도시에 갔을 때 서울과의 비교를 하지 않기 위해 한국 전국일주부터 시작했다. (서울은 너무 큰 도시라서, 세계의 많은 도시들을 서울과 비교할 수는 없기 때문이다) 실제 장기여행에 무엇이 필요한가를 확인하기 위해, 중국-싱가폴-일본으로 1달간 여행, 선진국만 갈지, 전 세계를 다 갈지 결정하기 위해 일부러 중국 내륙(시안-청두-충칭), 태국, 캄보디아를 방문했다. 1. 방문 도시의 선정여행의 시작은 방문할 나라와 도시를 선정하는 것이다. 사람들(인류)에 대해 더 잘 알기 위해, 사람이 많은 나라와 도시들을 방문하고자 했고, 영향력을 고려하기 위해 소득수준(1인당GDP)을 기준으로 삼았다. 그렇게 인구를 기준으로 4가지로 분류, 소득수준(1인당GDP)를 기준으로 3가지로 분류하였다. (그럼 경우의 수를 따져보면, 총 4 x 3 = 12가지로 세계 모든 나라를 나눌 수 있다.)이번 여행에서 다녀온 70개국을 인구와 인당 GDP 기준으로 분류핵심 국가 = Main 관찰 대상 도시들이 있는 국가세계의 모든 나라를 조사한 결과, 반드시 가봐야 할 곳이라고 하얀색에 해당되는 국가(표에서 빨간색 테두리 부분)는 총 42개국이었다. 그중 카자흐스탄(동선), 사우디아라비아(비자), 베네수엘라(치안)를  (C-나 14개국 중 3개국을 제외하고 11개국) 제외하고 39개국을 전부 방문하기로 했다. (여행의 많은 시간을 39개국을 관찰하는 데 사용했다.) 기타 국가 핵심국가 외에도 방문한 국가 들이 있다. 기타국가에 포함되는 나라는 방문한 국가 외에도 많은 국가들이 있으나, 중요도, 시간, 동선을 고려하여 결정했다- 작지만 잘 사는 나라 6개국(***)- 아직은 소득 수준이 낮지만 가능성 있는 나라 5개국 (*) - 기타 국가 20개국(11*** + 9****) 2. 관점 설계 : 다른 관점을 가지고, 다르게 보자[도시를 바라보는 두 가지 관점] 1. 개인적 관점: 사람들은 돈과 시간을 어떻게 사용하는가  - 의, 식, 주, 교육, 의료, 이동, 커뮤니케이션, 레저, 쇼핑 2. 사회적 관점: 사회가 사람들에게 어떻게 영향을 미치는가  - 정치, 종교, 경제/기업, 과학/기술, 예술/미디어 세계 일주의 시작은 내가 가장 잘 아는 도시, 일본 도쿄였다. 도쿄에서 한 달간 체류하면서, 도시를 어떻게 관찰해야 더 잘 이해할 수 있을까 를 고민했다. 처음으로 한 도시에 장기체류를 하니, 약간의 사는 느낌을 가질 수 있었고, 많은 관점이 변했다.현지인과의 관계도 '한 번 볼 사이'에서 '친구가 될 수 있는 사이'로 변했기 때문에 더 깊은 이야기를 나눌 수도 있었다. 그러던 중 '일본인은 입장에서는 이런 건 어떻게 보일까'라는 생각이 문득문득 들었고, 곧 '일본인도, 한국인도 다 같은 인간'이라는 결론에 도달했다. 그로 인해 여행에서 '미국인'과 '일본인' 등 각각의 인종 혹은 국민성을 정의하기 위해 차이점에 집중하기보다는, 인류라는 관점에서 모든 국가의 사람들을 관통하는 공통점에 집중해서 바라보게 되었다. 도시들에 방문하면 볼 수 있는 것들은 박물관, 미술관, 시장 등등의 장소가 있는데, 그런 장소들을 관통하는 개념에 대해 고민했다. 결론적으로는 나는 도시를 개인적 관점과 사회적 관점에서 바라보기로 했다.  3. 배경 지식 쌓기 본격적인 여행 준비는 3가지로 진행됐다. 1. 책 읽기 2. 스터디 하기 3. 실질적 준비먼저 세계일주를 위해, 다른 사람들의 세계일주 책부터, 다양한 주제를 가지고 쓴 역사서들을 봤다. 나의 세계일주를 하는데 영향을 준 책은 아래 5권이다. - 그랜드투어 / 설혜심 - 월가의 전설 세계를 가다 / 짐로저스 - 관찰의 힘 / 얀 칩체이스 - 나는 세계일주로 경제를 배웠다 / 코너 우드먼 - 메가시티, 세계도시 경쟁력 / 동아일보 발간 소책자사람들과 소모임도 만들어서 진행했다. - World Study / 1개 국가를 전담하여 조사하여 공유 - Sight & Insight / 한국에서 여러 장 소 방문하고, 관찰기 쓰기 - The Great Peoples / 인류에 영향을 미친 사람 조사 후 공유 그 외 실질적 준비로는 한국 생활 정리 (보험, 핸드폰 등 정리) 및 실제 출국 준비 (비자, 예방접종, 국제현금카드) 등이 있었다. 세계 여행 기획서 여행의 결과 : 39개국에 대한 방대한 기록"무엇이 사람들(인류)에게 영향을 미쳐서, 사람들(인류)은 어떻게 시간을 보내며 살아가고 있을까요? 앞으로 어떻게 살게 될까?" 내가 궁금했던 질문에 대한 답을 찾기 위해 여행을 다니면서 도시마다 정리를 하다 보니 아래와 같은 방대한 자료가 만들어졌다. 여행의 정리 - 행(Row)이 한 개 도시이고, 열(Column)이 관찰한 주요 관점이다앞으로 이 자료를 바탕으로 내가 관찰한 다양한 도시의 모습을 하나씩 소개해볼 예정이다. 
조회수 6071

개발자 채용 시 기술검증 어떻게 할 것인가

eBrain에서 진행하는 "개발자 채용 시 기술검증 어떻게 할 것인가"라는 미니 워크숍을 다녀왔다. 항상 고민하고 있는 주제이기도 하고 개인적으로 팬심(?)을 가지고 있는 김창준님의 강의라 한시간 거리를 극복했다.  이미 창천향로님이 강의 내용을 잘 정리해 주셨다. 하지만 내 자신의 학습을 위해 강의 내용을 재해석 해서 적어 본다. 빠져든다! 1. 현재 기술력 검증의 문제점최근의 개발자 채용에 사용되는 기술력 검증 방식은 다음과 같은 것들이 있다.  온라인 코딩 테스트 (최근에 여러 가지 플랫폼도 있다)손 코딩 테스트기술 인터뷰과제 제출이 중 최근에는 주로 알고리즘에 대한 코딩 테스트가 주가 되는 것 같다. 생각보다 난이도가 있어서 재직자들이 “이런 문제면 저는 못 들어왔을 것 같아요”라고 하는 경우도 있다. 코딩 테스트에 대해 두 가지 사례를 들어 질문을 던져 본다.  삼각형 판별 문제삼각형 판별 문제는 세 좌표가 주어졌을 때 이 삼각형이 어떤 삼각형인지 (정삼각형, 이등변 삼각형, 둔각 삼각형 등)를 맞추는 것이다. 이 프로그램이 잘 동작하는지를 검증하는 것이 QA 동네의 ‘Hello World’ 문제다. 이 문제가 주어지면 초보자들은 그냥 문제를 푼다. 하지만 전문가는 문제를 풀지 않고 “이 프로그램을 누가 쓸 것인가요?”를 물어본다. 콘텍스트에 따라서 완전히 다른 테스트의 설계가 필요하기 때문이다.  코딩 테스트도 이와 비슷하다. 코딩 테스트는 단순화된 문제를 푼다. 즉 맥락이 제거된 상태에서의 문제를 푼다. 실무는 종합적인 환경에서 이뤄진다. 따라서 이 문제를 잘 푼다는 것이 실무를 잘할 수 있는 것을 의미하지 않을 수 있다.  질문) 우리의 코딩 테스트는 과연 실무에서의 실력과 높은 상관관계가 있는가?  전문성 연구개발자는 종종 전문성의 연구 대상이 되곤 한다. 이때 연구비를 이유로 주로 혼자서 빠르게 풀 수 있는 문제로 실험이 이뤄진다. 하지만 이런 식의 실험들에서 “토이 문제”가 아닌 “복잡하고 확장된 문제"를 전달했을 때 전혀 다른 결과가 도출된다는것을 알게 되었다.  복잡한 문제, 즉 실제 문제를 풀 때는 인지적 전략이 많이 바뀐다. 또한 사회적 요소도 필요하다. 이런것들을 “토이 문제”로 검증하기는 쉽지 않다. X를 테스트하면 X를 잘하는 사람을 뽑게 된다.  즉, 알고리즘 코딩 테스트를 하면 알고리즘 코딩 테스트에 능한 사람을 뽑게 된다. 질문) 실무에 최대한 가까운 상황을 제한된 면접 시간 내에 만들어 내려면 어떻게 해야 할까? 2. 개발자 채용은 어떻게 해야 할까?채용이 더 크리티컬 한 곳이 있다. 델타포스, 네이비씰과 같은 특수부대이다. 이곳에서는 사람을 어떻게 뽑을까?  작전 지역을 설정 해 두고, 보급품과 군사장비를 실제 작전 수행 환경과 같이 조성해 놓는다. 그곳에서 직접 작전을 수행하는 것을 시뮬레이션 한다.이를  교관이 직접 따라가며 기록과 채점을 한다.  개발자의 면접 시에도 최대한 실제와 비슷한 환경을 구축하는 것이 좋다. 코딩 문제처럼 맞고 틀림만 보는 것이 아니라 과정에 대한 채점이 이뤄져야 한다. 3. 효과적인 기술력 검증을 위해서는 어떻게 준비해야 하는가?1) 우리가 하는 일을 분석한다.  우리가 하는 일에 코딩만 있는 것이 아니다. 설계도 하고, 버그도 찾고, 장애 해결도 하고, 커뮤니케이션도 한다.  2) 대표 케이스들을 뽑거나 만들어 내야 한다.  예를 들어 새롭게 코드를 작성하는 것보다 기존의 기능을 파악해서 코드를 수정하는 일을 더 많이 한다면 이런 상황을 문제로 만드는 것이 좋다.  3) 대표 케이스들로 파일럿 테스트를 해본다.  우리 회사의 뛰어난 개발자 3명과 평범한 개발자 3명에게 이 문제를 풀게 해보고 이를 기준으로 채점표를 만들어야 한다. 어느 누가 평가해도 비슷하게 나오도록 해야 한다. 뛰어난 개발자의 문제 풀이 방식을 기준으로 채점 기준을 만들 수 있다. 예를 들면 다음과 채점 기준이 나올 수 있다.  질문을 5개 이상 한다.코딩하는 과정에서 반복적인 실행을 한다. 4) 면접 후에는 결과에 대한 논의가 필요하다.  특정 항목에 대해 채점 기준이 다른 경우 이에 대한 논의 과정이 필요하다. 이는 면접관의 훈련에 도움이 된다.   4. 실습실제로 면접 문제 만드는 것을 실습해 보자.1) 수강생의 제안다음과 같은 면접 문제는 어떨까요?첫날 출근을 했는데 회사 웹서비스가 죽었습니다. 어떻게 하면 좋을까요? 2) 코칭좀 더 게임스럽게 만들어 본다. 실제 토이 서버를 죽여 놓고, 쉘을 주면서 실제로 어떻게 해결 하는지 살펴본다.옆에 조언을 줄 수 있는 가상의 3년 차 팀원(NPC처럼)을 제공한다. 제한된 답변을 하도록 한다.면접자가 다음과 같은 경우면 더 높은 점수를 줄 수 있다. 실제 업무를 할 때에는 이런 상황까지 이어진다는 것을 유념하자.  문제의 원인을 밝힌 이후에 이 문제를 근본적으로 해결하기 위한 후속조치를 말한다. 개발팀 내에 이 원인과 해결에 대한 공유를 한다.  5. 질문 답변1) 필터링의 목적으로 코딩 테스트는 의미가 있나요? 간단한 문제를 던져서 못 푸는 사람을 필터링하는 것으로는 의미가 있다. 하지만 그 이상의 목적으로 사용하는 것은 조심해야 한다고 생각한다.코딩 테스트라는 과정은 특히 지원자에게 많은 비용이 드는 과정이기 때문에 조금 더 경제적인 방법들이 있다. 예를 들면 “행동 기반 인터뷰”가 있다. 과거에 있었던 행동에 대한 구체적인 질문을 던지는 것이다.또한 코딩 테스트는 지원자에게 상당히 스트레스를 주는 방법이고, 지능이 높은 사람은 오히려 스트레스에 취약하다는 연구가 있다. 따라서 코딩 테스트를 진행하더라도 스트레스를 덜 주는 방향을 고민해야 한다.  2) 블라인드 테스트(이력서를 보지 않고 면접)의 장단점? 결국 코딩 테스트에 적합한 사람을 뽑게 될 것 같다. 코딩 테스트라는 것이 훈련 과정이 필요하기 때문에 입사에 대한 갈망을 볼 수는 있겠다. 질문 시에는 실무와 관련이 깊은 질문을 하면 좋겠다. 역시나 과거의 행동에 기반한 질문이 편향이 적고 많은 정보를 얻을 수 있다. 예를 들면 “팀장이 한 달 걸릴 일을 일주일 만에 끝내라고 한 적이 있나요? 그때 어떻게 하셨나요?”와 같은 질문이다. 3) 끈기, 성실 여부를 판단할 수 있을까요? 주위에서 끈기, 성실이라는 키워드를 생각하면 떠오르는 사람이 있을 것이다. 그 사람의 구체적인 행동을 기반으로 면접 문제를 만들어내는 것이 좋다. 행동에 대한 질문을 할 때에는 과거에 대한 질문을 하는 것이 좋다. 사람은 미래에 대해서는 거짓을 이야기 하가 쉽지만 과거의 이야기를 할 때에는 과거의 상황을 조작하는 동시에 거짓말을 하기가 쉽지 않다.  4) 채용 여부는 실력에 기반하게 되는데, 결국 연봉은 연차에 따라 주게 된다. 좀 더 세밀하게 측정할 수 있는 방법이 있을까? 임시 월급을 주고, 1달 혹은 3달 뒤에 급여를 적용하는 방법이 있다. 실제 환경에서는 보다 정확하게 퍼포먼스를 측정할 수 있다.  하지만 입사할 때 연봉이 중요한 요소가 되지 않게 하는 것이 더 주요한 방법이다. 내재적 동기를 갖게 하는 것이 더 중요하다. 연봉 인상에 따른 동기는 최대 3 달이면 없어진다. 외재적 동기는 점점 내재적 동기를 감소시킨다. 그 일을 즐기지 않게 되고, 하기 싫어지고, 성과가 없어진다. 연봉 말고 다른 협상 거리를 많이 가지고 있어야 한다. 연봉이 여러 가지 조건 중 하나가 되어야 한다.  5) 현재 잘하는 사람을 기준으로 채점 기준을 만들었다면, 다른 장점이 있는 사람이 탈락되지 않을까? 만일 현재 채점기준에는 적합하지 않지만, 다른 측면에서 장점이 있는 사람이 있다면 그 측면을 반영한 채점 기준을 만들어야 한다.  채용에 대해서 틀린 선입견을 가지고 있는 경우가 많이 있다. 예를 들면 술을 잘 먹는 사람이 협력을 잘한다.라고 생각하는 것이다. 그 반례가 있는지를 생각해 보면 그런 선입견을 깨는데 도움이 된다.  6) 비개발자와 함께 면접을 할 때 합의가 힘든 경우가 있다.  회사 안에서 어떤 사람을 뽑고 싶은지 합의가 필요하다. 우리 회사에서 핵심 인재를 추린 다음에 이 사람들의 공통점을 찾아서 인재상을 만들어야 한다.  7) 전화면접 괜찮을까요? 화상면접이 더 효과적인진 않을까요? 억양이 포함되어 있는 대화는 90%의 정보를 전달할 수 있다고 본다. 그 사람의 생각을 충분히 전달받을 수 있기 때문에 화상면접이 크게 더 효과적이라고 생각하지는 않는다.  우리나라에서는 많이 하지 않지만 면접에 대한 비용이 저렴하기 때문에 전화면접이 효과적인 수단이라고 생각한다. 단, 전화면접을 하기 전에 기준이 명확해야 한다. 느낌만으로 판단을 내리는 것은 의미가 없다. 8) 사내 전문가가 없는 영역에 대한 채용을 해야 한다면? 회사 외부의 전문가 몇 분을 찾아가서 그분들의 경험을 듣는다. 그 경험들에 기반해서 면접 문제를 만든다. 도메인에 관계없는 전문성이 있는지는 검증할 수 있는 방법이 있다. 즉, 전문가의 특징이 있다. 전문가는 공부를 한다. 실력을 향상하기 위한 꾸준한 노력을 한다.전문가는 확정적이지 않고 유연하다. 9) 러닝 커브가 좋은 사람을 찾는 방법은? 소규모 회사일수록 현재는 저평가되어 있지만 성장 가능성이 있는 사람을 채용해야 한다. 사실 능력 좋은 사람이 노력도 많이 한다. 뛰어난 사람은 “의도적 수련”의 양이 많고 질이 좋다.  학습에 관련된 테스트를 할 수도 있다. 예를 들어 “새로운 언어로 작은 프로그램을 작성해 보세요. 그리고 그 과정을 타임 로그로 남겨보세요” 와 같은 문제를 보면 학습 자체에 대한 능력을 테스트할 수 있다.  10) 개발을 잘하는 친구는 리드를 안 하려고 하고, 상대적으로 부족한 친구는 리드를 하려고 합니다.  개발을 잘하는 것에 대해서 생각해 볼 필요가 있다. 보통 개발을 잘한다고 하면 코딩을 잘하는 것만 생각하지만 협력에 대한 것이 포함되어야 한다. 흔히 하는 실수가 코딩 실력만 보고 리더를 삼으려고 하는 것이다.  내가 좋아했던 상사를 생각해 보고 그 사람의 특징을 생각해 보는 것부터 시작해 보는 것이 좋겠다. 개발 트랙, 매니저 트랙으로 나눠서 이야기하는 것은 좋지 않다.   6. 후기좋은 시간이었다. 워크숍에 참여하고 나서 어떻게 실력을 검증할것인가에 대해 구체적인 방향이 잡혔다. 우리가 현재 하고 있는 것들 중에 도움이 되는것과 그렇지 않은것이 구분 되었다. 8퍼센트에 좋은 분을 모실 수 있게 하나씩 시도해 봐야겠다.#8퍼센트 #에잇퍼센트 #개발자 #워크숍 #워크샵 #채용워크숍 #채용워크샵 #후기 #참여후기
조회수 1812

Amazon SageMaker는 처음이지?

Overview브랜디 랩스를 사랑해주시는 여러분, 안녕하세요. 개발자 오-연주입니다. 지난 4월, Brandi Back-end 개발자 분들과 코엑스에서 열렸던 AWS Summit(04.18 - 04.19)에 다녀왔습니다!여러 세션을 듣는 와중에 우연히 AI machine learning 를 쉽게 도와주는 Cloud Machine learning Flatform인 Amazon SageMaker에 대해 들었습니다. 듣던 중 머닝러닝에서 학습을 시켜 그 데이터로 ‘Brandi 서비스와 연관지으면 어떨까’ 라는 생각을 했는데요. 그래서 오늘은 많은 분들의 관심사인 머신러닝 학습관련 Amazon Amazon SageMaker에 대한 글을 쓰려고 합니다.sage는 마법사, 현자라는 의미입니다.sageMaker를 create하자!“자, 퐈이팅 넘치게 신나게 sagemaker를 create해볼까요!” 했는데…Seoul Region이 없다!현재 지원되는 리전은 아직 네 군데입니다. 저는 제일 있어 보이는 미국 동부의 버지니아를 선택하겠습니다.1] EU (Iceland) 2] US West (Oregon) 3] USEast (N. Virginia) 4] US East (Ohio)SageMaker를 create하기 전에는 학습할 데이터와 학습 모델을 저장할 S3 Bucket이 필요합니다.1. Default 값으로 S3를 만드세요.중요한 점은, bucket 이름이 “sagemaker-” 로 시작되어야 한다는 것입니다. 그래야 나중에 notebook instance가 어느 곳에 데이터를 저장할지 알 수 있습니다.Next, Create bucket 버튼을 누르다 보니, S3 Bucket이 생성되었습니다.2. Create notebook instance 버튼을 눌러 SageMaker를 만들어 봅시다!원하는 이름을 지어줍니다. 저는 machineLearningTest 라고 지었어요. IAM role 선택하는 부분에서 None을 눌러 Default 값으로 sageMaker를 만듭니다.인고의 Pending 시간3. Pending이 끝나고 “open” action을 선택하면 Jupyter가 열립니다.Jupyter(Jupyter Notebook)는 오픈 소스로 라이브 코드, 등식, 코드에 대한 시각화를 위해 사용됩니다. 또한 description을 위한 텍스트 문서(마크다운 등)를 지원하는 웹 어플리케이션입니다. 이렇게 하면 코드에 대한 문서화가 가능합니다. 이 글에서는 Jupyter Notebook을 통해 데이터를 학습하고, 그 데이터를 테스트하겠습니다. 제가 진행한 전체 코드 스크립트(entire script)는 이 글의 마지막 부분에 기술있으니 참고해 주세요.자, 이제 드디어 머신러닝 학습을 시킬 차례입니다. 머신러닝 학습에 꼭 필요한 키워드 두 가지를 뽑아봤는데요. - Dataset: 정제된 데이터와 그 데이터에 대한 label을 정리해 놓은 데이터 모음      - Machine learning Algorithm: 기계학습 알고리즘 우리는 MNIST 데이터셋을 k-means 알고리즘으로 학습시킬 겁니다.1)MNIST Dataset기계학습 알고리즘을 사용할 때 가장 기본적으로 테스트하는 데이터셋으로 MNIST 데이터셋이 있습니다. 이것은 사람이 0부터 9까지 숫자 중 하나를 손글씨로 쓴 이미지 데이터와, 해당 이미지에 대한 레이블(0 - 9)이 6만 개 들어있는 학습 데이터셋입니다. 각 이미지는 가로와 세로가 각각 28 픽셀로서, 각 픽셀은 0부터 255 사이의 숫자가 있습니다. 다시 말해, 하나의 이미지는 28 x 28 = 784개의 숫자로 이루어진 데이터입니다. 하나의 이미지를 나타내는 데이터의 array > length가 784라고 표현할 수 있겠네요.MNIST dataset2)k-means지금 만든 SageMaker 학습 알고리즘은 AWS 튜토리얼에서 제시한 K-means를 사용할 예정입니다. k-means는 label 없이, 즉 정답을 모르는 상태로 학습을 하는 비지도 학습 (unsupervised learning) 알고리즘 중 가장 쉽고 많이 쓰입니다. 정답을 모르니, ‘비슷한 애들끼리 뭉쳐봐’ 라고 하고, 알고리즘은 비슷한 친구들끼리 뭉쳐 놓습니다. k-means에서 k는 ‘k개 덩어리로 뭉쳐주세요’라고 제시하는 숫자입니다. 우리는 0부터 9까지 비슷한 친구들끼리 모이게 하고 싶으니 k=10을 쓸 겁니다.지금부터 해야 할 TO DO!1. MNIST 데이터셋을 다운로드받고, 우리가 학습시키기 좋도록 정제하기(preprocessing)2. Amazon SageMaker를 통하여 데이터 학습시키기(training job)3. Amazon SageMaker를 통하여 학습된 데이터를 배포하기(Deploy the model)4. 배포된 모델에 요청을 보내 테스트 데이터에 대한 예측값을 받아오기(inference)4. Jupyter 노트북 인스턴스 생성하기Jupyter에 New Notebook(conda_python3)을 선택해 새로운 노트북을 생성합니다.5. 학습시키기 위한 기본 셋팅드디어 코딩 시작입니다! (의욕활활) 초기 설정해두었던 IAM role, S3 Bucket, MNIST 다운로드, 다운받은 데이터 등을 확인하세요. 글보다 코드로 주석을 보는 게 가독성이 더 좋습니다. 아래 노트북을 통해 마크다운, 주석처리를 통해 description을 해두었으니 참고 바랍니다.외부에서 MNIST 다운로드가 쉽도록 한 url로 MNIST를 다운받는데 성공했습니다. MNIST 데이터셋 내용물 중 하나를 jupyter notebook에 그려서 제대로 다운 받았는지 show_digit() 함수를 작성해 확인하겠습니다.서른 번째 데이터는 누군가 3을 손글씨로 쓴 이미지입니다.6. 머신러닝 학습하기이 세션에서는 기계학습 알고리즘 설정, 학습할 데이터 경로를 지정하겠습니다. 그 후 MNIST 학습 데이터를 S3 버킷에 옮겨 저장합니다.kmeans.fit() 함수를 호출해 직접 학습을 시켜볼까요? 학습 과정은 상당히 오래 걸린다고 했는데 다행히 4분 만에 학습이 끝났습니다.여기서 잠깐! 여기서 k = 10에 대해서 조금 더 알아보도록 할게요. cluster란 한 지점에 점을 찍고 데이터 분석을 한 뒤, 비슷한 데이터들의 군집을 만들어 주는 것입니다. k-means가 진행되면서 각 cluster의 중심이 서로가 잘 뭉치는 방향으로 이동합니다. 직접 그려봤어요(부끄).7. 학습된 모델을 배포하기학습을 시키면 테스트를 하거나 사용할 수 있어야겠죠? 학습된 모델을 배포해 주세요.8. 배포된 모델 테스트 진행하기배포된 모델에 valid_set 데이터로 검증 데이터를 진행합니다..predict() 함수를 호출하면 새로운 이미지가 어떤 cluster에 속했는지 예측 결과를 알려줍니다. 가장 가까운 cluster가 0번이라고 예측 결과를 반환했네요. 또한 cluster 중심과의 거리는 5.85라고 알려줍니다. 여기서 중요한 점은 cluster 번호와 실제 숫자는 일치하지 않는다는 겁니다. 알고리즘은 임의로 cluster 중심에 번호를 매기는데, 꼭 0번 클러스터가 숫자 ’0’을 뭉쳐놓은 건 아니에요!9. 데이터 예측해보기더 많은 데이터를 예측해볼까요? valid set에 있는 100개 데이터를 예측해봅시다! 각 cluster에 가까운 데이터들이 쭉 선정되었습니다. 정확하지는 않지만 비슷한 숫자 모양들이 서로 군집되어 나타납니다. 0과 2같은 숫자들은 잘 표현되지만, 알고리즘이 9랑 4를 헷갈리거나 5와 3을 헷갈리는 듯 하네요.FASHION MNIST로 SageMaker 머신러닝 학습 및 예측해보기자, 이제 몸도 풀었으니 제가 하고 싶었던 패션 관련 머신러닝 학습 및 예측을 진행해볼게요. 마침 옷 그림으로 MNIST와 매우 비슷한 데이터를 만들어 놓은 fashion-MNIST라는 데이터셋을 발견했어요!1. 패션 관련 MNIST 다운로드 받기패션 MNIST 데이터셋을 우선 다운받아 볼게요! 다운로드는 여기에서 받을 수 있습니다. 총 네 개의 파일을 다운로드 받으세요.- train-images-idx3-ubyte.gz : train set 이미지  - train-labels-idx1-ubyte.gz : train set 레이블  - t10k-images-idx3-ubyte.gz : test set 이미지  - t10k-labels-idx1-ubyte.gz : test set 레이블  다운로드 받은 패션 Mnist의 label은 아래와 같이 되어 있습니다. 숫자 0부터 9 대신에 각 이미지가 어떤 이미지인지 텍스트로 표현되어 있어요.LabelDescription0T-shirt/top1Trouser2Pullover3Dress4Coat5Sandal6Shirt7Sneaker8Bag9Ankle boot2. Fashion-MNIST 데이터셋을 이전에 사용했던 mnist.pkl.gz 와 같은 형태로 변환해주는 스크립트 작성해주기위에서 연습할 때는 mnist.pkl.gz 한 개 파일만 사용했는데요!?! 그래서 다운로드 받은 네 개의 파일을 똑같은 형식의 파일 하나로 만들어주는 파이썬 스크립트를 작성해 fashion-mnist.pkl.gz 파일로 만들었어요.import gzip import pickle import numpy as np # MNIST 데이터셋은 train, test 셋이 각각 image, label로 나누어 저장되어있는 4개의 파일로 구성 test_image_path = 't10k-images-idx3-ubyte.gz' test_label_path = 't10k-labels-idx1-ubyte.gz' train_label_path = 'train-labels-idx1-ubyte.gz' train_image_path = 'train-images-idx3-ubyte.gz' out_file_name = 'fashion-mnist.pkl.gz' # train label / images 추출 with gzip.open(train_label_path, 'rb') as train_label_f:     train_label = np.frombuffer(             train_label_f.read(), dtype=np.uint8, offset=8).astype(np.int64)   with gzip.open(train_image_path, 'rb') as train_image_f:     train_imgs = np.frombuffer(             train_image_f.read(), dtype=np.uint8, offset=16).reshape(-1, 784).astype(np.float32)   # test label / images 추출 with gzip.open(test_label_path, 'rb') as test_label_f:     test_label = np.frombuffer(test_label_f.read(), dtype=np.uint8, offset=8).astype(np.int64)   with gzip.open(test_image_path, 'rb') as test_image_f:     test_imgs = np.frombuffer(             test_image_f.read(), dtype=np.uint8, offset=16).reshape(-1, 784).astype(np.float32)   # 기존 60000개 training set에서 50000개는 train set으로 사용하고, 10000개는 valid set으로 활용 train_label, valid_label = train_label[:50000], train_label[50000:]  train_imgs, valid_imgs = train_imgs[:50000], train_imgs[50000:]   # train set, validati on set, test set을 튜플 자료형으로 저장 out_data = ((train_imgs, train_label),             (valid_imgs, valid_label),             (test_imgs, test_label))   # pickle file로 dataset 데이터 포맷 맞춰주기 with gzip.open(out_file_name, 'wb') as out_f:     pickle.dump(out_data, out_f) 이 과정을 통해 나온 결과물, fashion-mnist.pkl.gz 를 Jupyter Notebook이 있는 경로에 업로드합니다.fashion-mnist.pkl.gz가 업로드 되었습니다!3. 머신러닝 학습하기아까 사용했던 활용했던 숫자 MNIST 스크립트를 그대로 사용하겠습니다. show_digit()을 이름만 바꾼 show_fashion()으로 데이터를 살펴보니 드레스가 보입니다.조금 전에 했던 숫자 MNIST와 똑같은 과정을 SageMaker를 이용해, 학습 → 테스트 → 예측해보니 아래와 같은 예측 결과를 얻을 수 있었습니다. 신발은 신발끼리, 바지는 바지끼리, 가방은 가방끼리 분류된 게 너무나 신기합니다. (아까 진행한 숫자보다 더 학습이 잘 된 것 같은건 기분 탓일까요…?)머신러닝이라고 겁내지 않아도 됩니다! 유저들에게 더 좋은 서비스 제공할 수 있으니까요. 지금까지 브랜디 개발2팀의 단아한 개발자 오연ㅈ….참사를 막아주세요.앗, 잠시만요!! 중요한 것을 놓칠 뻔 했네요.저처럼 테스트를 하면 그냥 지나치지 마세요. 자동 결제로 출금되는 뼈 아픈 경험을 할 수도 있습니다. 반드시 이용했던 서비스들을 stop 하거나 terminate 해주세요. (Clean-up단계) 자세한 내용은 여기를 클릭하세요.지금까지 Brandi 개발 2팀, 단아한 개발자 오연주였습니다!# entire script (숫자 Mnist) # 오호 드디어 coding start! # 이제부터 Brandi의 단아한 개발자, 저를 따라오시면 됩니다 :) # 노트북 Block을 실행하는 방법은 Shift + Enter 입니다 from sagemaker import get_execution_role role = get_execution_role()  # 초기에 설정해 뒀던 IAM role 가져오기 bucket = 'sagemaker-julie-test' # 초기 단계에 만들었던 S3 Bucket 이름 적기 %%time import pickle, gzip, numpy, urllib.request, json   # 여기서 잠깐, 생소한 라이브러리 설명을 드릴게요! # pickle: python식 데이터 압축 포맷 # numpy: 수치 계산을 하기 위한 python package # Load the dataset urllib.request.urlretrieve("http://deeplearning.net/data/mnist/mnist.pkl.gz", "mnist.pkl.gz") with gzip.open('mnist.pkl.gz', 'rb') as f:     train_set, valid_set, test_set = pickle.load(f, encoding="latin1")     # matplotlib로 그리는 그림이 jupyter 노트북에 바로 보여줄 수 있도록 설정 %matplotlib inline import matplotlib.pyplot as plt # 도표나 그림을 그릴 수 있게 해주는 라이브러리 plt.rcParams["figure.figsize"] = (2, 10) # 그림의 크기 지정 def show_digit(img, caption='', subplot=None):     if subplot is None:         _,(subplot) = plt.subplots(1,1)         imgr = img.reshape((28, 28))     subplot.axis('off')     subplot.imshow(imgr, cmap='gray')     plt.title(caption)   # train_set의 그림과[0] 데이터 이름[1]을 예시로 보여준다 show_digit(train_set[0][30], 'This is a {}'.format(train_set[1][30]))   # 학습을 하기 위해 학습 알고리즘 및 데이터 경로 설정! from sagemaker import KMeans data_location = 's3://{}/kmeans_highlevel_example/data'.format(bucket) output_location = 's3://{}/kmeans_example/output'.format(bucket)   print('training data will be uploaded to: {}'.format(data_location)) print('training artifacts will be uploaded to: {}'.format(output_location))   kmeans = KMeans(role=role,                 train_instance_count=2,  # 장비 2대를 사용하여 학습하겠어요!                 train_instance_type='ml.c4.8xlarge',                 output_path=output_location,                 k=10,  # 아래 그림을 참고해 주세요!                 data_location=data_location) %%time   # 학습 시작! kmeans.fit(kmeans.record_set(train_set[0]))   %%time # 모델을 만든 후 사용하기 위하여 배포하기 kmeans_predictor = kmeans.deploy(initial_instance_count=1,                                 instance_type='ml.m4.xlarge')                                  # valid_set에 30번째 sample을 테스트 해보기 result = kmeans_predictor.predict(valid_set[0][30:31])  print(result)   %%time   # vaild_set에 있는 0번부터 99번까지의 데이터로 cluster를 예측 해보자 result = kmeans_predictor.predict(valid_set[0][0:100])   # 예측 결과에 대한 cluster 정보를 수집 clusters = [r.label['closest_cluster'].float32_tensor.values[0] for r in result]   # 각 cluster별 예측된 이미지 출력 for cluster in range(10):     print('\n\n\nCluster {}:'.format(int(cluster)))     digits = [ img for l, img in zip(clusters, valid_set[0]) if int(l) == cluster ]     height = ((len(digits)-1)//5)+1     width = 5     plt.rcParams["figure.figsize"] = (width,height)     _, subplots = plt.subplots(height, width)     subplots = numpy.ndarray.flatten(subplots)     for subplot, image in zip(subplots, digits):         show_digit(image, subplot=subplot)     for subplot in subplots[len(digits):]:         subplot.axis('off')     plt.show() 출처Getting Started - Amazon SageMaker CodeOnWeb - 머신러닝 초보를 위한 MNIST fashion-mnist 글오연주 사원 | R&D 개발2팀[email protected]브랜디, 오직 예쁜 옷만#브랜디 #개발문화 #개발팀 #업무환경 #인사이트 #경험공유
조회수 1566

블로그 운영 방법에서 엿보는 VCNC의 개발문화 - VCNC Engineering Blog

 VCNC에서 엔지니어링 블로그를 시작하고 벌써 새로운 해를 맞이하였습니다. 그동안 여러 글을 통해 VCNC 개발팀의 이야기를 들려드렸습니다. 이번에는 엔지니어링 블로그 자체를 주제로 글을 적어보고자 합니다. 저희는 워드프레스나 텀블러와 같은 일반적인 블로깅 도구나 서비스를 사용하지 않고 조금은 개발자스럽다고 할 수 있는 특이한 방법으로 엔지니어링 블로그를 운영하고 있습니다. 이 글에서는 VCNC 개발팀이 엔지니어링 블로그를 운영하기 위해 이용하는 방법들을 소개하고자 합니다. 그리고 블로그를 운영하기 위해 방법을 다루는 중간중간에 개발팀의 문화와 일하는 방식들에 대해서도 간략하게나마 이야기해보고자 합니다.블로그에 사용하는 기술들Jekyll: Jekyll은 블로그에 특화된 정적 사이트 생성기입니다. GitHub의 Co-founder 중 한 명인 Tom Preston-Werner가 만들었으며 Ruby로 작성되어 있습니다. Markdown을 이용하여 글을 작성하면 Liquid 템플릿 엔진을 통해 정적인 HTML 파일들을 만들어 줍니다. VCNC 엔지니어링 블로그는 워드프레스같은 블로깅 도구를 사용하지 않고 Jekyll을 사용하고 있습니다.Bootstrap: 블로그 테마는 트위터에서 만든 프론트엔드 프레임워크인 Bootstrap을 이용하여 직접 작성되었습니다. Bootstrap에서 제공하는 다양한 기능들을 가져다 써서 블로그를 쉽게 만들기 위해 이용하였습니다. 덕분에 큰 공을 들이지 않고도 Responsive Web Design을 적용할 수 있었습니다.S3: S3는 AWS에서 제공되는 클라우드 스토리지 서비스로서 높은 가용성을 보장합니다. 일반적으로 파일을 저장하는 데 사용되지만, 정적인 HTML을 업로드하여 사이트를 호스팅하는데 사용할 수도 있습니다. 아마존의 CTO인 Werner Vogels 또한 자신의 블로그를 S3에서 호스팅하고 있습니다. VCNC Engineering Blog도 Jekyll로 만들어진 HTML 파일들을 아마존의 S3에 업로드 하여 운영됩니다. 일단 S3에 올려두면 운영적인 부분에 대한 부담이 많이 사라지기 때문에 S3에 올리기로 하였습니다.CloudFront: 브라우저에서 웹페이지가 보이는 속도를 빠르게 하려고 아마존의 CDN서비스인 CloudFront를 이용합니다. CDN을 이용하면 HTML파일들이 전 세계 곳곳에 있는 Edge 서버에 캐싱 되어 방문자들이 가장 가까운 Edge를 통해 사이트를 로딩하도록 할 수 있습니다. 특히 CloudFront에 한국 Edge가 생긴 이후에는 한국에서의 응답속도가 매우 좋아졌습니다.s3cmd: s3cmd는 S3를 위한 커맨드 라인 도구입니다. 파일들을 업로드하거나 다운로드 받는 등 S3를 위해 다양한 명령어를 제공합니다. 저희는 블로그 글을 s3로 업로드하여 배포하기 위해 s3cmd를 사용합니다. 배포 스크립트를 실행하는 것만으로 s3업로드와 CloudFront invalidation이 자동으로 이루어지므로 배포 비용을 크게 줄일 수 있었습니다.htmlcompressor: 정적 파일들이나 블로그 글 페이지들을 s3에 배포할 때에는 whitespace 등을 제거하기 위해 htmlcompressor를 사용합니다. 또한 Google Closure Compiler를 이용하여 javascript의 길이도 줄이고 있습니다. 실제로 서버가 내려줘야 할 데이터의 크기가 줄어들게 되므로 로딩속도를 조금 더 빠르게 할 수 있습니다.블로그 관리 방법앞서 소개해 드린 기술들 외에도 블로그 글을 관리하기 위해 다소 독특한 방법을 사용합니다. 개발팀의 여러 팀원이 블로그에 올릴 주제를 결정하고 서로의 의견을 교환하기 위해 여러 가지 도구를 이용하는데 이를 소개하고자 합니다. 이 도구들은 개발팀이 일할 때에도 활용되고 있습니다.글감 관리를 위해 JIRA를 사용하다.JIRA는 Atlassian에서 만든 이슈 관리 및 프로젝트 관리 도구입니다. VCNC 개발팀에서는 비트윈과 관련된 다양한 프로젝트들의 이슈 관리를 위해 JIRA를 적극적으로 활용하고 있습니다. 제품에 대한 요구사항이 생기면 일단 백로그에 넣어 두고, 3주에 한 번씩 있는 스프린트 회의에서 요구사항에 대한 우선순위를 결정합니다. 그 후 개발자가 직접 개발 기간을 산정한 후에, 스프린트에 포함할지를 결정합니다. 이렇게 개발팀이 개발에 집중할 수 있는 환경을 가질 수 있도록 하며, 제품의 전체적인 방향성을 잃지 않고 모두가 같은 방향을 향해 달릴 수 있도록 하고 있습니다.VCNC 개발팀이 스프린트에 등록된 이슈를 얼마나 빨리 해결해 나가고 있는지 보여주는 JIRA의 차트.조금만 생각해보시면 어느 부분이 스프린트의 시작이고 어느 부분이 끝 부분인지 아실 수 있습니다.위와 같은 프로젝트 관리를 위한 일반적인 용도 외에도 엔지니어링 블로그 글 관리를 위해 JIRA를 사용하고 있습니다. JIRA에 엔지니어링 블로그 글감을 위한 프로젝트를 만들어 두고 블로그 글에 대한 아이디어가 생각나면 이슈로 등록할 수 있게 하고 있습니다. 누구나 글감 이슈를 등록할 수 있으며 필요한 경우에는 다른 사람에게 글감 이슈를 할당할 수도 있습니다. 일단 글감이 등록되면 엔지니어링 블로그에 쓰면 좋을지 어떤 내용이 포함되면 좋을지 댓글을 통해 토론하기도 합니다. 글을 작성하기 시작하면 해당 이슈를 진행 중으로 바꾸고, 리뷰 후, 글이 발행되면 이슈를 해결한 것으로 표시하는 식으로 JIRA를 이용합니다. 누구나 글감을 제안할 수 있게 하고, 이에 대해 팀원들과 토론을 하여 더 좋은 글을 쓸 수 있도록 돕기 위해 JIRA를 활용하고 있습니다.JIRA에 등록된 블로그 글 주제들 중 아직 쓰여지지 않은 것들을 보여주는 이슈들.아직 제안 단계인 것도 있지만, 많은 주제들이 블로그 글로 발행되길 기다리고 있습니다.글 리뷰를 위해 Pull-request를 이용하다.Stash는 Attlassian에서 만든 Git저장소 관리 도구입니다. GitHub Enterprise와 유사한 기능들을 제공합니다. Jekyll로 블로그를 운영하는 경우 이미지를 제외한 대부분 콘텐츠는 평문(Plain text)으로 관리 할 수 있게 됩니다. 따라서 VCNC 개발팀이 가장 자주 사용하는 도구 중 하나인 Git을 이용하면 별다른 시스템의 도움 없이도 모든 변경 내역과 누가 변경을 했는지 이력을 완벽하게 보존할 수 있습니다. 저희는 이런 이유로 Git을 이용하여 작성된 글에 대한 변경 이력을 관리하고 있습니다.또한 Stash에서는 GitHub와 같은 Pull request 기능을 제공합니다. Pull request는 자신이 작성한 코드를 다른 사람에게 리뷰하고 메인 브랜치에 머지해 달라고 요청할 수 있는 기능입니다. 저희는 Pull request를 활용하여 상호간 코드 리뷰를 하고 있습니다. 코드 리뷰를 통해 실수를 줄이고 개발자 간 의견 교환을 통해 더 좋은 코드를 작성하며 서로 간 코드에 대해 더 잘 이해하도록 노력하고 있습니다. 새로운 개발자가 코드를 상세히 모른다 해도 좀 더 적극적으로 코드를 짤 수 있고, 업무에 더 빨리 적응하는데에도 도움이 됩니다.어떤 블로그 글에 대해 리뷰를 하면서 코멘트로 의견을 교환하고 있습니다.코드 리뷰 또한 비슷한 방법을 통해 이루어지고 있습니다.업무상 코드 리뷰 뿐만 아니라 새로운 블로그 글을 리뷰하기 위해 Pull request를 활용하고 있습니다. 어떤 개발자가 글을 작성하기 위해서 가장 먼저 하는 것은 블로그를 관리하는 Git 리포지터리에서 새로운 브랜치를 따는 것입니다. 해당 브랜치에서 글을 작성하고 작성한 후에는 새로운 글 내용을 push한 후 master 브랜치로 Pull request를 날립니다. 이때 리뷰어로 등록된 사람과 그 외 개발자들은 내용에 대한 의견이나 첨삭을 댓글로 달 수 있습니다. 충분한 리뷰를 통해 발행이 확정된 글은 블로그 관리자에 의해 master 브랜치에 머지 되고 비로소 발행 준비가 끝납니다.스크립트를 통한 블로그 글 발행 자동화와 보안준비가 끝난 새로운 블로그 글을 발행하기 위해서는 일련의 작업이 필요합니다. Jekyll을 이용해 정적 파일들을 만든 후, htmlcompressor 통해 정적 파일들을 압축해야 합니다. 이렇게 압축된 정적 파일들을 S3에 업로드 하고, CloudFront에 Invalidation 요청을 날리고, 구글 웹 마스터 도구에 핑을 날립니다. 이런 과정들을 s3cmd와 Rakefile을 이용하여 스크립트를 실행하는 것만으로 자동으로 이루어지도록 하였습니다. VCNC 개발팀은 여러 가지 업무 들을 자동화시키기 위해 노력하고 있습니다.또한, s3에 사용하는 AWS Credential은 IAM을 이용하여 블로그를 호스팅하는 s3 버킷과 CloudFront에 대한 접근 권한만 있는 키를 발급하여 사용하고 있습니다. 비트윈은 특히 커플들이 사용하는 서비스라 보안에 민감합니다. 실제 비트윈을 개발하는데에도 보안에 많은 신경을 쓰고 있으며, 이런 점은 엔지니어링 블로그 운영하는데에도 묻어나오고 있습니다.맺음말VCNC 개발팀은 엔지니어링 블로그를 관리하고 운영하기 위해 다소 독특한 방법을 사용합니다. 이 방법은 개발팀이 일하는 방법과 문화에서 큰 영향을 받았습니다. JIRA를 통한 이슈 관리 및 스프린트, Pull request를 이용한 상호간 코드 리뷰 등은 이제 VCNC 개발팀의 문화에 녹아들어 가장 효율적으로 일할 수 있는 방법이 되었습니다. 개발팀을 꾸려나가면서 여러가지 시행 착오를 겪어 왔지만, 시행 착오에 대한 반성과 여러가지 개선 시도를 통해 계속해서 더 좋은 방법을 찾아나가며 지금과 같은 개발 문화가 만들어졌습니다. 그동안 그래 왔듯이 앞으로 더 많은 개선을 통해 꾸준히 좋은 방법을 찾아 나갈 것입니다.네 그렇습니다. 결론은 저희와 함께 고민하면서 더 좋은 개발문화를 만들어나갈 개발자를 구하고 있다는 것입니다.

기업문화 엿볼 때, 더팀스

로그인

/