스토리 홈

인터뷰

피드

뉴스

조회수 777

Android Wear 개발하기

비트윈 팀은 지난달 비트윈에 Android Wear 앱 기능을 릴리즈했습니다. 즐거운 개발 경험이었지만, 힘들었던 점도 많았습니다. 어떤 과정을 통해서 개발하게 되었고, 내부 구조는 어떻게 되어 있는지, 신경 쓰거나 조심해야 할 점은 어떤 것들이 있는지 저희의 경험을 공유해보려고 합니다. 이 글을 통해 Android Wear 앱 제작을 고민하는 개발자나 팀이 더 나은 선택을 하는 데 도움이 되고자 합니다.Android Wear에 대해¶Android Wear는 최근 발표된 구글의 새 웨어러블 플랫폼입니다. 공개된 지 얼마 되지 않았음에도 불구하고 완성도 있는 디바이스들이 출시된 상태이며, 기존의 웨어러블 기기보다 기능과 가격이 매력 있다는 평가를 받고 있습니다. 또한, 2014 Google I/O에서 크게 소개되고 시계를 참가자들에게 나눠주는 등, 구글에서 강하게 밀어주고 있기 때문에 상당히 기대되는 플랫폼입니다.Android Wear의 알림 기능은 연결된 mobile1 기기와 연동됩니다. 예를 들어 메시지를 받았을 때 mobile과 wear에서 모두 알림을 받아볼 수 있고, Google Now와 연동하여 교통, 날씨 등 상황에 맞는 알림을 제공합니다.또, 여러 가지 앱들의 다양한 기능을 음성으로 제어하도록 하여 사용자에게 기존의 시계와는 완전히 다른 경험을 주고 있습니다.한국에서는 Google Play Store의 기기 섹션에서 구매가 가능합니다.Android Wear 개발하기¶Android Wear는 Android 플랫폼을 거의 그대로 사용하기 때문에, Android 개발 경험이 있는 개발자라면 아주 쉽게 개발을 시작할 수 있습니다. 비트윈에서는 구글의 80:20 프로젝트를 패러디한 100+20 프로젝트를 통해 개발을 진행하게 되었습니다. (하던 일을 다 해내면서 시간을 내어 진행한다는 의미로 100+20 프로젝트입니다. 하지만 가끔은 '20' 부분에 너무 몰입하여 0+20이 되기도 한다는 게 함정입니다...)Activity, Service 등 Android의 기본 component들을 모두 그대로 사용 가능하며, 손목에 찰 수 있는 크기의 화면에서 유용하게 사용할 수 있는 WearableListView, GridViewPager 같은 새 widget들이 추가되었습니다. 구글 개발자 사이트의 wearable training 섹션에서 자세한 안내를 볼 수 있습니다.비트윈의 아이디어¶비트윈 Android Wear 기능의 컨셉은, 항상 몸에 착용하는 Wear의 특징을 살려, '커플이 떨어져 있더라도, 항상 함께 있는 느낌을 주기' 였습니다. 그래서 아래와 같은 기능들이 기획되었습니다.Feel His/Her Heart (그대의 심장박동 느끼기): 상대방의 심장박동을 진동으로 재현해주기Where He/She Is (그/그녀는 어느 방향에 있을까?): 상대방의 위치를 나침반과 같은 형태로 보여주기 (안심하세요. 여러분. 방향만 알려주고 정확한 위치는 알려주지 않습니다!)Feel Memories (메모리박스): 언제든 추억을 떠올릴 수 있도록 비트윈의 기존 기능인 메모리박스(추억상자)를 Android Wear에서 구현하지만 이 아이디어들은 하루 만에 망하게 됩니다.메인 아이디어였던 심장박동 느끼기는 사용자가 요청하면 상대방의 시계에서 심장박동이 측정되어 사용자에게 상대방의 심장박동을 진동으로 재현해주는 멋진 기능이었습니다. 하지만 이 아이디어를 낼 때 심박센서가 탑재된 Android Wear 기기가 없었던 게 함정이었습니다.다음날 Android Wear Bootcamp에 참가하여 심박센서가 작동하는 삼성 Gear Live 기기를 사용해 볼 수 있었습니다. 결과는 충격이었습니다. 생각과는 달리 심박박동 측정 결과가 나오는데 10~20초가 걸리고, 그나마도 측정되는 동안은 올바른 위치에 시계를 차고 가만히 있어야 했습니다. 결국, 이러한 제약 때문에 사용자들이 실제로 유용하게 사용할 수 있는 기능이 될 수 없었습니다.그래서 계획을 수정하여 현실적으로 구현 가능한 기능들을 먼저 만들어 보기로 했습니다.목소리로 답변하기: 상대방에게 온 메시지에 Android Wear Framework에서 제공하는 음성인식을 이용하여 목소리를 텍스트로 바꾸어서 답장하기이모티콘 답변하기: 이모티콘을 사용자가 선택하여 이모티콘으로 답장하기비트윈 메모리박스: 비트윈의 기존 기능인 메모리박스(추억상자)를 Android Wear에서 구현처음의 원대한 계획에서 뭔가 많이 변경된 것 같지만, 기분 탓일 겁니다.내부 구현¶비트윈 Android Wear 앱은 크게 두 가지 기능을 가지고 있습니다. 하나는 상대방에게 메시지를 받았을 때, 메시지 내용을 확인하고 여러 가지 형태로 답장할 수 있는 Notification 기능이고, 다른 하나는 Wear에서 원래 Application의 일부 기능을 시작 메뉴를 통하거나 목소리로 실행시킬 수 있게 해주는 Micro App입니다. 해당 기능들의 스크린샷과 함께 내부 구조를 설명하겠습니다.우선 Notification 부분입니다. 앱 개발사에서 아무 작업도 하지 않더라도, 기본적으로 Android Wear Framework이 스크린샷 윗줄 첫 번째, 네 번째 화면과 같이 예쁜 알림화면과 Open on phone 버튼을 만들어 줍니다. 여기에 추가적인 기능을 붙이기 위하여 WearableExtender를 이용하여 목소리로 답장하기, 이모티콘 보내기 버튼을 덧붙였습니다.비트윈 Android Wear 스크린샷 - Notification둘째로는 Micro App 부분입니다. 여기에는 이모티콘 전송과 메모리박스를 넣었습니다. 이 부분은 일반적인 Android 앱을 만들듯이 작업할 수 있습니다비트윈 Android Wear 스크린샷 - Micro App화면을 보면 무척 단순해 보이지만 내부 구조는 간단하지가 않습니다. 연결된 화면들을 만들어내는 코드가 한곳에 모여있지 않고, 각기 다른 곳에 있는 코드들을 연결하여야 하기 때문입니다. Notification 하나를 만들 때에 Framework에서 만들어주는 1, 4번째 화면, Notification에 WearableExtender를 이용하여 덧붙이는 2, 3번째 화면, 그리고 다시 Framework에서 만들어주는 목소리로 답장하기 화면, 그리고 Wear 쪽의 Micro App을 통해 구동되는 이모티콘 선택 화면과 같이 여러 군데에 나누어 존재하는 코드가 연결됩니다.하나의 앱처럼 느껴지는 화면이지만 각각 다른 곳에 코드가 쓰여있습니다.그러면 이번에는 각 화면이 어떻게 연결되는지 알아보겠습니다.사용자가 상대방으로부터 받은 메시지를 Android Wear의 Notification으로 확인하고, 답장으로 이모티콘을 보내고자 하는 상황을 가정해 봅시다. 사용자가 Send Emoticon 버튼을 눌렀을 때 이모티콘 선택화면을 보여주고 싶은데, 이 행동에 대한 pending intent를 wear 쪽의 micro app이 아닌, mobile 쪽에서 받게 되어 있습니다. 이 때문에 아래의 표와 같이 mobile 쪽에서 pending intent를 받은 뒤 다시 wear 쪽으로 이모티콘 선택 화면을 보여주라는 메시지를 전송해줘야 합니다.이모티콘 전송 과정이번에는 메모리박스를 보겠습니다. 메모리박스도 단순한 화면이지만 mobile 쪽과 통신하여 내용을 불러와야 하므로 생각보다 해야 하는 일이 많습니다. Android Wear Message API와 Data API를 이용하여 데이터를 주고받아 사진을 화면에 보여줍니다.메모리박스를 보여주는 과정개발 시 신경 써야 하는 점¶개발하면서 주의 깊게 신경 써야 하는 점들이 있습니다.첫 번째로 코드 퀄리티입니다.Android Wear는 아직 성숙하지 않은 플랫폼이기 때문에 많은 사람이 받아들인 정형화된 패턴이 없습니다. 앞서 살펴보았듯이, 간단한 기능을 구현하려고 해도 상당히 복잡한 구조를 가진 앱을 만들게 되기에, 코드 퀄리티를 높게 유지하기 어려웠습니다비트윈 팀에서는 EventBus를 활용하여 코드를 깔끔하게 유지하려고 노력하였습니다. 이러한 문제를 해결할 수 있는 Guava의 Concurrent 패키지나, RxJava 등의 도구들이 있으니 익숙한 도구를 선택하여 진행하는 것을 추천합니다. 또한, 구글의 Android Wear 코드랩 튜토리얼의 내용이 매우 좋으니, 한번 처음부터 수행해 보면 좋은 코드를 만들 수 있는 아이디어가 많이 나올 것입니다.두 번째로는 원형 디바이스 지원 및 에러 처리입니다.처음부터 원형 디바이스를 신경 쓰지 않으면 마무리 작업 시 상당한 고통을 받게 됩니다. 원형 디바이스에 대한 대응법은 Android 개발자 트레이닝 사이트의 wearable layout 섹션에 자세히 나와 있습니다. 현재는 원형 디바이스를 처리하는 프레임웍에 약간 버그가 있지만, 곧 수정될 것으로 생각합니다.사용자 입력이 있을 때, 그리고 에러가 났을 때 적절하게 처리해주는 것은 제품의 완성도에 있어 중요한 부분입니다. Android Wear Framework에서 제공하는 ConfirmationActivity등을 활용하여 처리하면 됩니다.마지막으로 패키징입니다.자동 설치 패키징은 비트윈 팀에서도 가장 고생했던 부분입니다. Android Wear는 본체 앱을 설치하면 자동으로 함께 설치되는데, 앱이 정상작동하기 위해서는 몇 가지 까다로운 조건이 있습니다.build.gradle 의 applicationId 를 wear와 mobile 양쪽 모두 똑같이 맞춰야 합니다.Wear app의 AndroidManifest에 새롭게 선언한 permission이 있다면 mobile 쪽에도 포함해 주어야 합니다.기본적으로, 똑같은 key로 서명합니다. 다른 key로 sign 하는 경우는 문서를 참고해서 신경 써서 합니다.위 항목들은 아주 중요한 내용이지만 아직 문서화가 완벽하지 않으니 주의 깊게 진행해야 합니다.후기¶개발 과정에서 여러 가지 어려움이 있었지만, 무척 즐거웠던 프로젝트였습니다!우선 새로운 플랫폼에서 새로운 제품의 아이디어를 내고 만들어내는 과정이 많은 영감과 즐거움을 주었습니다.두 번째로는 Android Wear를 포함한 버전 출시 이후 구글플레이의 Android Wear 섹션 및 추천 앱 섹션에 올라가게 되어 홍보 효과도 얻을 수 있었습니다. 또한, 구글의 신기술을 적극적으로 사용하고자 하는 팀에게는 구글 쪽에서도 많은 지원을 해주기 때문에 도움도 많이 받았습니다.세 번째로는 기존의 Android 개발과 비슷하여 접근하기 쉬우면서도, 원하는 것을 구현하려면 상당히 도전적이어서 재미있었습니다.다만 조심해야 할 점은, 구글에서 적극적으로 밀고 있는 프로젝트라고 해서 다 성공하는 것은 아니라는 점입니다. 얼마만큼의 시간과 자원을 투자할지는 신중하게 생각하면 좋겠습니다.정리¶Android Wear는 새로운 기술과 플랫폼에 관심이 많은 개발자, 혹은 팀이라면 시간을 투자해서 해볼 만한 재미있는 프로젝트입니다. 하지만 완성도 있는 좋은 제품을 만들기 위해서는 생각보다 할 일이 많으니 이를 신중하게 고려하여 결정해야 합니다.구글의 튜토리얼 등에서 지칭하는 것과 마찬가지로, 이 글에서도 Android Wear와 연결된 휴대폰을 mobile이라 하겠습니다.↩저희는 언제나 타다 및 비트윈 서비스를 함께 만들며 기술적인 문제를 함께 풀어나갈 능력있는 개발자를 모시고 있습니다. 언제든 부담없이 [email protected]로 이메일을 주시기 바랍니다!
조회수 6101

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 #사용성개선 #사용성평가 #업무프로세스 #인사이트
조회수 950

AI 스쿨 필기 노트 ① 선형회귀분석(Linear Regression)

전세계가 AI first를 외치고 있습니다! 엘리스 인공지능 오프라인 교육과정인 AI 스쿨의 필기노트를 8주간 연재합니다. 인공지능 개론과 알고리즘에 대해 함께 공부해요.지난 5월 8일 구글의 연례 개발자 콘퍼런스 I/O에서 구글은 구글 듀플렉스라는 새로운 AI 기술을 선보였습니다. 구글 듀플렉스가 직접 미용실에 전화를 걸어서 예약에 성공하는 이 시연은 매우 인상적인 장면이었는데요. 국내의 여러 기업에서도 이미 인공지능 스피커를 출시하는 등 우리의 일상 생활 곳곳에도 인공지능 기술이 스며들고 있습니다.IDC, Tractica, Markets and Markets 등 글로벌 시장조사기관들은 2020년까지 세계 인공지능 시장이 연평균 50% 이상 가파르게 성장할 것이라고 예측하기도 합니다. 이미 세계 각국의 주요 IT 기업들은 AI 시장에서 영역을 넓히고 경쟁력을 확보하고자 전력을 투입하고 있는데요. 국내 기업들 역시 인수합병과 조직개편 등으로 인공지능 기술과 인재 확보를 위해 발 빠르게 움직이고 있습니다.엘리스에서는 IT 분야 및 연구 기관에 취업하고자 하는 분들을 위한 오프라인 교육과정을 운영하고 있습니다. 지난해에 이어 올해에는 양재 RNCD 혁신허브와 함께 인공지능 R&D 실무자 양성과정을 운영하게 되었는데요! 이론 수업(8주)과 팀 프로젝트(6주), 커리어 코칭 과정(2주)로 이루어진 이번 과정은 수료증 및 입사 추천서 발급, 테크니컬 인터뷰와 포트폴리오 준비, 국내 IT 기업과의 채용 연계 등으로 구성되어 있어 관련 분야에 취업을 희망하시는 분들의 많은 관심이 있었습니다.300명 가까운 분들이 지원해주셨고, 이 중 선발 과정을 거친 40여 명의 분들이 16주간 오프라인+온라인 교육을 받게 되었습니다. 이 중 기계학습과 알고리즘 개론에 대한 8주간의 교육 내용을 앞으로 8주간 여러분과 함께 공유하고자 합니다. 컴퓨터 공학과에 재학 중인 AI 스쿨 수강생이 직접 필기노트를 공유해 준다고 하니 함께 AI 개론에 대해서 공부해 봐요. :)안녕하세요! 저는 숭실대학교 컴퓨터학부 4학년에 재학 중인 대학생이에요. 저는 평소에 AI에 대해 관심이 많아서 제대로 된 교육을 받고 싶어서 이번 과정을 수강하게 되었어요. 앞으로 AI 스쿨에서 받는 수업이 제가 AI 엔지니어로 성장할 수 있는 밑거름이 될 것이라고 생각해요. 아직 배우는 단계이기 때문에 많이 부족하지만 앞으로 8주 동안 이 글을 통해서 함께 공부한다고 생각하며 그 주에 배운 내용을 요약해보려고 합니다!AI 스쿨 첫 수업에서는 ‘Linear Regression(선형 회귀)’에 대해 배웠어요. 대학교 2학년 때 전공 과목으로 ‘선형대수학’이 있었는데요, 배우면서 이런 학문은 도대체 어디에 쓰이는지 혹시 필요 없는 것을 배우느라 시간 낭비를 하는 것은 아닌지 힘들게 공부했던 기억이 나네요. 그런데 제가 읽은 한 기사에서 미국의 연구팀이 ‘장기적인 공기 정화 노력이 성장기 아이들의 폐기능을 개선시켰다’는 연구 결과를 증명한 후 캘리포니아 남부지역에서 ‘공기오염의 질 관리 정책’을 시행하여 오염 수준이 꾸준히 감소하고 있다는 내용이 있었는데요. 연구팀은 공기오염의 감소와 소아 호흡기 질환의 개선 사이에 개연성을 평가했고 이 연구에서 사용한 방법이 선형회귀분석(linear regression model)이라고 해요!첫 수업에서는 앤드류 응 교수님 강의 자료의 쉬운 예시를 바탕으로 Linear Regression(선형회귀)을 공부했어요.이 예시에서는 집 크기에 관한 정보 하나로 집의 가격을 예측하는 할 수 있는 데이터가 있다는 가정을 하고, 이 가정이 직선의 방정식 y = ax + b의 형태를 따른다고 가정했어요.인공지능은 예측을 기본으로 다루는데, 우리는 과거의 데이터를 학습함으로써 최적의 예측 모델을 만들게 돼요.이때 다루는 데이터를 Training set이라고 부르고, m은 학습 데이터의 숫자, x는 입력 변수 또는 feature, 그리고 y는 출력 변수 또는 타깃 변수라고 불러요.기존의 Training set으로 Learning 알고리즘을 학습시키면 그 학습된 부분이 h, 즉 가설이 돼요. h를 통해서 우리는 어떠한 집 크기에 대한 예측된 가격을 구할 수 있어요. 그런데 이때 보다 정확히 예측을 하려면 error를 최소로 하는 a, b의 최적의 값을 설정해야 해요.우리의 모델인 직선의 방정식을 통해 오차가 적은 예측값을 얻기 위해서는 a와 b에 어떠한 값을 넣어야 좋을까요? 위에서 언급했듯이 우리에게는 주어진 학습 데이터가 있죠. 이를 이용하여 최적의 값을 도출해야 해요. Cost function 이란 a, b가 주어진 학습 데이터인 Training set을 가장 적은 오차로 표현하고 있는지 알 수 있는 방법인데요. Loss function 또는 Objective function이라고도 해요. Linear Regression에서는 Cost function으로 Squared error function을 사용해요. Squared error function 이란 가설에 Training data의 입력값을 넣었을 때의 출력값과 해당 입력값에 대한 training data의 실제 출력값의 차를 제곱하여 이용하는 방법이에요.그렇다면 우리는 a, b를 어떻게 구할 수 있을까요? 이 방법을 산을 내려가는 예시를 통해서 쉽게 이해할 수 있었어요.만약 깜깜한 밤에 산꼭대기에서 길을 잃었다면 랜턴을 키고 주변을 살펴본 후 아래로 내려가는 길을 찾아 그 방향으로 내려가고, 도달한 지점에서 또다시 랜턴을 켜 주변을 살펴 아래로 향하는 길로 가야 산 아래까지 내려갈 수 있겠죠. 이것이 최적의 a, b를 구하는 Gradient descent의 기본 방식이에요.Gradient descent는 임의의 a, b를 지정한 후, 그 점으로부터 감소하는 기울기를 구간을 찾아 이동하는 것을 반복함으로써 해를 구하는 방법입니다!이번 주 수업의 과제로는 Loss Function과 Linear Regression을 구하는 과제가 주어졌어요. 첫 번째 과제인 만큼 난이도가 많이 높지는 않았지만 파이썬이 익숙하지 않다면 조금 헷갈릴 여지가 있는 문제였던 것 같아요. 강의를 해주신 주재걸 교수님께서는 첫 시간에 배운 개념들이 Linear regression에서 뿐만 아니라 인공지능, 머신 러닝, 딥러닝 분야에서 많이 쓰이기 때문에 첫 시간에 배운 것만 제대로 이해하고 가도 많은 것을 얻어 가는 것이라고 하셨어요. 위의 개념에 대해서 다른 자료들도 찾아보면서 공부하고, 다음 필기 노트로 만나요!#엘리스 #코딩교육 #교육기업 #기업문화 #조직문화 #서비스소개
조회수 832

아마존 인플루엔서를 통해 매출을 늘리는 법

인사말안녕하세요 대한민국 셀러들의 성공적인 아마존 진출을 도와주는 컨설팅 회사이자 대행사인 컨택틱의 이이삭 대표입니다. 오늘 여러분들에게 소개하고 싶은 내용은 아마존에서 발표한 새로운 개념인, '아마존 인플루엔서 프로그램'입니다. 이 기능을 잘 활용하면 브랜드 오너들의 경우 매출을 증폭할 수 있는 하나의 방법이 되지 않을까 싶습니다.우선 본론으로 들어가기 앞서 Amazon Associates Program과 그에 속해있는 세부 분야인 Amazon Influencer Program에 대한 소개를 드리는 것이 좋을 것 같습니다.Amazon Associates ProgramAmazon Associates Program을 한 마디로 설명드리자면, '영업 인센티브 제도'라고 할 수 있습니다. 즉, 누군가가 인터넷으로 아마존의 특정 상품을 특정 URL (본인의 Amazon Associates Link)로 홍보하여, 그 링크를 클릭하고 상품을 구매한 고객이 있을 경우, 구매한 액수만큼 %로 커미션 (수수료)를 지급 받는 개념입니다. 예를 들어, 제가 Amazon Associates Program에 이수하여, 저의 Associates 링크로 제 블로그에 $1000짜리 캐논 DSLR 카메라를 홍보했고, '홍길동'이라는 사람이 그 링크를 클릭하여 그 카메라를 구매했다면, 제 앞으로 4% (카테고리에 따라 최대 10%까지 수령 가능)의 수수료인 $40가 지급됩니다.아주 멋진 프로그램이죠? 하지만 정작 중요한 것은 정확히 얼마를 받을 수 있는지입니다. 카테고리마다 커미션이 다른데요, 최저 0%에서 최대 10%까지 가능합니다. 웬만한 카테고리는 4% 커미션을 지급 받을 수 있습니다. 정확한 커미션율은 아래 표를 참고해주세요:카테고리별로 Amazon Associates 커미션율Amazon Influencer ProgramAmazon Influencer Program은 Amazon Associates Program의 속편입니다. Amazon Associate가 되면 Associates Central이라는 어드민 페이지에서 본인의 링크를 만들 수 있게 되는 등 어드민 페이지에 접속이 가능해지는데, 이 시스템의 단점이 있었습니다. 그것은 바로 "나만의 아마존 랜딩페이지가 없다"는 것이었습니다. 이게 무슨 말이냐면, Associates Central에서 링크를 만들더라도, 기존재하는 특정 아마존 상품의 링크를 걸 수도 있고, 아니면 특정 '검색어 결과'에 대한 링크를 나의 홍보 링크로 사용할 수 있었는데, 결국 '나의 아마존 내의 미니몰' 같은 것을 만들 수가 없었다는 것입니다. 하지만 Amazon Influencer Program을 통해서 이제 인플루엔서들이 본인만의 아마존 미니몰을 만들 수 있게 되었습니다 (예를 들어: amazon.com/shop/influencername). 이럼으로써 더이상 하이퍼링크(URL)를 '클릭'하지 않아도, 해당 인플루엔서들의 팔로워들이 아예 인터넷 검색창에 위처럼 특정 인플루엔서의 아마존 미니몰 URL을 직접 입력하고 방문하고 제품을 구매해도 여전히 인플루엔서에게는 커미션이 지급 되게 되었습니다.Social Media Promo Codes이제 Amazon Associates Program과 Amazon Influencer Program에 대한 이해를 하셨다면, 다음으로 셀러입장에서 '어떻게 이 프로그램을 잘 사용해서 그 수많은 인플루엔서들에게 내 상품을 적극적으로 홍보하라고 독려할 수 있을까'를 고민하셔야될 것입니다. 그리고 아마존에서 이 문제를 쉽게 해결할 수 있도록 여러분들께 하나의 기능을 제공하였습니다. 그것이 바로 Social Media Promo Codes입니다. 이 기능은 아마존 브랜드 레지스트리 프로그램에 이수중인 '브랜드 오너'만 이용이 가능한데요, 아래에서 보이듯이 메뉴를 찾는 것은 쉽습니다:Social Media Promo Codes가 어떤 형태의 Promotion인지 구체적으로 설명하려면 이 포스트가 너무 길어지기 때문에, 한 마디로만 요약해드리자면, '내 브랜드 상품 중에 몇 가지를 선정한 특정 URL을 생성하여, 해당 제품들에 대해서는 고객들이 굳이 별도로 promotional code를 입력하지 않아도, 장바구니에 담자마자 미리 설정해둔 할인가로 구매할 수 있게 해주는 URL 생성식의 promotion' 기능입니다. 어쨌거나 중요한 것은, 이제 이걸 이용하게 되면 생성 페이지에서 아마존이 이런 행사를 브랜드 측에서 하고 있다는 것을 브랜드가 인플루엔서들에게 쉽게 알려줄 수 있도록 'Share this promo code with Amazon Influencers and Associates' 라는 기능을 추가한 것입니다.막상 브랜드 측에서 이렇게 할인을 제공하는 행사를 하기로 크게 마음 먹었는데, 페이스북에서 힘들게 홍보하고 인스타에서 힘들게 홍보하고 구글에서 힘들게 홍보하는 것도 결국 다 일입니다. 하지만 애초에 브랜드를 대신해서 이런 행사를 홍보해줄 수 있는 인플루엔서들이 가세해준다면? 브랜드 입장에서는 손도 안대고 코를 풀 수 있는 격이 되는 것입니다.마치며이 기능을 활용해서 브랜드 오너들은 인플루엔서 마케팅에 들어가는 수고와 비용을 조금 덜 수 있게 되었으면 좋겠습니다! 그리고 아마존 인플루엔서 인맥을 잘 활용해서 매출을 증폭할 수 있는 기회가 되길 희망합니다.그럼 오늘도 즐거운 글로벌 셀링 되세요! 컨택틱   서울특별시 강남구 강남대로 62길 11, 8층 (역삼동, 유타워)   대표 전화: 02-538-3939   해외 부서: 070-7771-1727   영업 부서: 070-7771-1728   이메일: [email protected]   유튜브: https://www.youtube.com/channel/UC8OxbQGAnMqWGpGj5weLcZA  홈페이지: https://www.kontactic.com
조회수 827

혼자 살게 된다면

"제가 독립하고 집을 나온 지 이 제 한 달이 되었는데요. 막상 독립을 하니까 뭐가 필요한지 잘 모르겠어요. 자취 오래 하신 분들 필수품과 조언 좀 해주세요." - JMTGR 님의 사연"안녕하세요. 이제 막 취업에 성공한 신입사원입니다. 졸업 후 오랜 시간을 취준생으로 보내다가 이제야 겨우 직장에 들어가게 되었습니다! 그리고 난생처음으로 경제적으로 부모님께 독립하게 되었는데요. 회사와 집이 거리가 좀 있어서 혼자 집을 구하여 살게 되었습니다. 기대도 되지만 걱정되고.. 부모님 품에 벗어서 혼자 살면서 사회인으로서 잘 해나갈 수 있을지 너무 고민입니다. 조언 또는 팁을 받고 싶습니다!"- 이 XX 님의 사연 언제 우리는 완전히 '독립' 했다고 말할 수 있을까? 부모님과 또는 가족들과 떨어져 혼자 지내는 순간부터 독립이라고 불러야 할까? 아니면 온전한 경제적인 독립이 이루어진 후에야 우리는 완전히 독립한 사회인이라고 불려지는 걸까? 나를 포함한 주변 많은 친구들 그리고 지인들은 대부분 고향을 떠나 학업 또는 취업으로 인해 혼자 독립하여 살고 있다. 그들도 그리고 나도 처음부터 홀로서기가 쉬운 일은 아니었을 거라고 생각한다. 너무 까마득히 오래되어서 기억이 희미해졌지만.. 두 사연을 보고 과연 조금 더 빨리 '독립' 그리고 '사회인'이 된 사람으로서 어떤 조언 또는 경험을 나눠줄 수 있을까 다시 한번 생각해보게 되었다.1. 거주지 선정개인적으로 나는 어느 곳에 살던 늘 회사 또는 학교가 가까운 곳에 살았다. 그 이유는 ‘아침잠‘이 제일 소중했기 때문이다. 아침에 조금 더 잘 수 있다는 그 여유로움. 그 행복은 사실 하루에 큰 영향을 미친다. 그뿐만이 아니다. 퇴근 또는 하교 후에도 집이 가까우면 피곤한 하루가 조금 덜 피로해지는 경험을 하게 된다. 이런 이유로 나는 조금 월세가 더 비싸더라도 걸어 다닐 수 있는 또는 통근시간이 덜 힘든 곳으로 늘 거주지를 선정하곤 했다. 또 하나 좋았던 점은 ‘교통비‘가 들지 않는다는 것이었다. 물론 집세를 그만큼 더 내는 격이긴 했지만 개인적으로 난 학교 또는 직장과 가까운 곳에 거주지를 선정하는 것을 추천하고 싶다.2. 지출비용 최대한 아껴보기 feat. 본가 혼자 살면 생각보다 뭐가 이렇게 살 것도 필요한 것도 그리고 내야 할 공과금도 많은지.. 여러모로 돈이 깨지기 십상이다. 특히 절대 본가에선 돈 내고 사거나 쓰지 않았던 물품들이 가득이다. 예를 들면 ‘화장지’ 아주 대표적인 예다. 늘 집에 있던 그 두루마리 휴지가 글쎄.. 돈 내고 사려 보니 그렇게 아까울 수가 없다. 당연했던 것들이 새로이 보이는 순간이다.치약, 세제, 쿠킹포일 등등 여태 살면서 단 한 번도 내 돈으로 사보지 않았던 물품들이 필수품이 되어버리고 그렇게 자잘하게 쓰는 돈이 꽤나 많이 나간다. 그러면서 다시 한번 느끼게 된다.“아 이 모든 건 돈이었구나..”그리고 우리는 자취생의 필수 매장이라는 다XX에서 여러 가지를 사곤 하는데 사실 난 개인적으로 본가를 이용(?)한다. 아무리 자취를 하고 경제적으로 독립했다고 한들.. 여전히 우리는 마이너스로 살아가게 되니까..여기서 나의 팁은, 본가에 정기적으로 들러 내가 필요한 물품들을 가져온다. 물론, 집에 없을 수도 있지만 웬만한 것들은 신기하게 부모님이 여분을 가지고 계셔서 집을 탈탈 털어오곤 한다. 특히나 ‘화장지‘, ‘치약’ 이런 생필품 뿐만 아니라 ‘김치’ 등 반찬을 받아오면 적어도 1~2주는 생활비를 아낄 수 있다. (부모님 성향에 따라 이 부분은 실행 가능성이 높아질 수도, 낮아질 수도 있다)3. 혼자를 마음껏 즐기기처음 자취를 시작하거나 사회생활을 시작하여 수입이 생기면, 신이 난다. 부모님 품을 떠나, 가족을 떠나 혼자라는 설렘과 두려움 모든 것을 느끼게 된다. 그리고 보통 처음엔 거의 기쁜 마음이 큰 것 같다.“아~내가 이제 드디어 어른되었구나. 혼자 살다니!”이런 마음으로 이제 혼자 어떻게 살면 좋을지에 대한 고민도 해보고 친구들을 집에 초대하고 집에 늦게 귀가해도 괜찮다는 자유를 만끽할 수 있다. 하지만 오랜 자취러, 사회인이 되면 느끼게 되는 순간이 있다. 혼자 먹는 밥이 맛이 없고, 혼자가 싫은 외로운 날과 가족들과 고향이 유난히 그리운 날들이 찾아올 것이다. 생각이 업그레이드되는 날도 온다. 다시 가족과 함께 살고 싶단 생각 또는 다른 누군가와 함께 살고 싶단 생각, 다시 학생이 되어 사회인에서 벗어나고 싶단 생각 등..또한 너무 혼자 오래 살게 되면 혼자가 익숙해 더 이상 누군가와 함께 사는 게 영영 힘들고 불편해지는 일이 될 수도 있다는 점(?)이 단점이 아닐까.어쨌든, 처음 자취를 하고 독립을 하면서 사회가 규정한 ‘어른‘이란 타이틀은 맨 처음 즐길 수 있는, 그때만 느낄 수 있는 하나의 감정이라고 생각하기에 마음껏 즐기라고 말해주고 싶다.4. 결국 우린 '혼자' 개개인의 차가 있겠지만 나는 다른 친구들에 비해 조금 빨리 독립을 하게 되었다. 그래서 그런지 혼자라는 것에 대해 익숙하지만 누군가에게는 가족과 함께 사는 것이 당연한 일이고 항상 함께 해야 할 수도 있다. 하지만 가족이라는 울타리 안에서, 부모님의 보호 안에서도 ‘나’라는 개인이 존재한다. 힘이 들 때 가족 친구들에게 의지할 수 있기에 우리는 힘을 얻고 다시 살아가지만 결국 삶은 ‘혼자‘라는 것을 이해하고 혼자 자취하며 살아가는 지금의 시간이 앞으로의 홀로서기 연습, 앞으로를 살아갈 용기를 터득하는 시간이라고 생각했으면 좋겠다.5. 너무 혼자가 편해지지 않도록 노력하기4번에 분명히 ‘결국 우린 혼자‘라고 해놓았지만, 5번에서 말하고 싶은 요점은 ‘혼자’에 너무 익숙해져버리지 말자는 것이다. 처음과 끝은 혼자일지언정, 우리는 살아가면서 다른 사람들과 함께 살아가게 된다. 아니 그래야만 한다. 혼자 오래 살다 보니 느끼게 된 것은, 혼자가 너무 편해서 가끔 나만 생각하는 이기적인 면모를 발견하게 된다는 것이다. 그러다 보니 나에게 맞춰지지 않는 것은 배척하게 되었고 차라리 혼자가 편하다며 자취방 한 구석에 홀로 있는 나를 종종 발견하곤 했다. 누군가(가족, 친구)에게 의존하는 것도 문제이지만 그렇다고 너무 혼자가 익숙해지지 않도록 노력하는 것도 필요하지 않을까 싶다.안녕하세요. 스푼 라디오입니다.두 분의 사연을 받고, 사실 제가 어떤 말을 해드릴 수 있을까 고민을 많이 했습니다. 조언이라고 하기엔 거창할 것만 같아 저의 경험을 토대로 몇 자 적어보았습니다. 먼저 첫 사회인이 되시고 이제 막 홀로서기를 시작한 두 분께 자취생활에 도움이 될만한 스푼 굿즈 Made in Spoon '숟가락' 그리고 '머그컵'을 보내드리도록 하겠습니다.누구에게나 사연은 있다.당신의 사연, 고민을 함께 나누는 공간 스푼 라디오입니다.사연에 채택되신 스푼 유저 'JMTGR & 이 XX'님께 스푼 라디오 공식 굿즈를 선물로 보내드립니다.여러분의 이야기를 듣고 싶습니다. 스푼 라디오에 사연을 보내주세요.사연에 채택되신 분들께 소정의 선물을 보내드립니다.자세한 사항은 [email protected]으로 문의 바랍니다.
조회수 1461

크몽 gulp 개선기

안녕하세요. 프론트개발자 bk입니다 :)이 글은 gulp사용법에 대한 글이 아닙니다. build 자동화 도구를 개선할까 말까 고민하는 개발자들을 위해 제 경험을 공유드리려 합니다.음... build 자동화 꼭 해야 해..?가 아닙니다. 크몽이라는 서비스가 어떤 개발 환경을 통해 만들어졌는지, 좀 더 편하고 효율적으로 개발 생활을 즐기기 위해 어떻게 개선을 했는지에 대한 개발 경험을 나눠 보려고 합니다.왜 이 작업을 하게 되었고 뭐가 그리 중요했는지, 크몽 개발 환경에서 gulp가 개선되어야 했던 이유에 초점을 맞추었습니다.시작에 앞서본격적인 gulp에 대한 이야기를 하기 전에 왜 내가 크몽에 입사하자마자 gulp를 개선해야겠다 마음먹었습니다.크몽에서의 개발크몽에 입사한 지 이제 3개월이 되었습니다. 회사의 개선사항, 변화가 필요한 것들에 대해선 반드시 말하는 스타일이라 크몽의 자유로운 분위기와 수평적 문화는 정말 만족했고 적응에 큰 어려움은 없었습니다.첫 주는 개발환경 laravel + vuejs 공부의 시간을 보냈고 둘째 주부터 이벤트 페이지를 맡아서 작업했습니다. 기존 사용하였던 개발환경과 크게 다르지 않아 크게 어려움 없이 이벤트 페이지 작업을 완료하고 배포가 되었습니다.호환성을 위한 es6 환경 필요성하지만 늘 그렇듯 다음 날 출근을 하니 버그가 날 기다리고 있었습니다. 조금 생소한 버그였습니다. script관련 오류였는데, 이전의 개발환경에선 babel, browserify가 거의 대부분의 script에 걸려있었기 때문에 습관적으로 es6로 작업했습니다. 결국은 es5스타일로 복구하여 수정했습니다. 곰곰이 생각해보니 호환성을 위해 es6를 사용하지 않는 것이 아닌 es6를 사용하도록 환경이 구성되어야 하는 게 맞는 것 아닌가 라는 생각했습니다.gulp가 개선되어야만 하는 이유크몽에 입사한 지 1주일 만에 다른 작업을 뒤로하고 회사에서 gulp만 외치고 다녔습니다. 다른 무언가 개선을 하려면 gulp가 필연적으로 개선이 되어야 했습니다. 기존의 개발환경은 파일 수정할 때마다 terminal에서 gulp를 명령어를 쳐야 했습니다. 주르륵 코드를 적고 한번 새로고침해서 짠하고 바뀌는 스타일이 아니라, 내가 짠 코드도 의심이 되어 자주 스텝별로 확인 스타일이라 이러한 현재 환경은 저와 정말 맞지 않았습니다.앞잡이(크몽의 프론트앤드 멤버) 챕터 회의 때 gulp개선을 요청하였고 모두에게 현재의 문제를 공유하고 gulp개선을 해야 하는 이유에 대해 설득 한 뒤 크몽개발팀 내 프로젝트 일정으로 잡히게 되었다.나 편하자고 시작한 작업, 내가 편한 건 팀원도 편하다우선 gulp 개선의 가장 큰 목적은 4가지였다.es6 및 최신 기술과 라이브러리를 사용하자gulp watch를 효율적으로 사용하자script태그와 style태그로 쓰는 것을 지양하자 (.js, .scss파일 많아지는 것에 대한 부담 가지지 말자)script, style, directory 구조를 기능별로 구조화시키자bk's PLANs그렇게 gulp는 이렇게 만들었습니다.기존 크몽 개발 환경에서 너무 확 바뀌진 않도록 개발자 분들과 협업하여 flow를 최대한 유지하며 작업했습니다. (공통 모듈, 유틸, 서비스 관련, 인증, 라이브러리, 이벤트, 구매 판매 트랙, sass)로 모듈을 나누어 bundle을 하였고 각각에 watch를 걸어 파일을 변경하면 자동으로 관련 모듈만 bundle이 실행되도록 작업했습니다.gulp를 위한 작업이었지만directory구조도 깔끔해지고 project도 좀 더 가벼워졌습니다. 계획은 거창했고 의욕은 앞섰지만 build 자동화 툴을 제대로 만져본 적이 경험이 없어서 (gulp, elixir, babel, browserify, stream) 작업과 공부를 병행하느라 예상보단 조금 더 시간이 걸렸지만 결과적으론 개선된 지금이 훨씬 개발하기 편해졌다.불필요한 작업이 습관이 되기 전에 개선을 실행했습니다.사실 크몽의 이전 개발환경에선 gulp가 크게 중요하지 않았지만, 크몽의 팀원이 많아지고 개발자도 많아지면 제가 아니더라도 크몽팀 누군가는 했을 작업이었습니다. 더 나은 환경이 분명히 존재하는데도 불구하고 기존의 불필요한 작업이 습관이 되어 개선을 망설이거나 하는 회사, 개발자가 많다고 생각합니다.개발자가 더 나은 환경에서 개발하는 걸 막자고 할 사람은 없을 것입니다. 그것이 입사한 지 1개월이 되든 10년이 되든 누가 말하든지 간에 말입니다. 갓 들어온 주니어 개발자의 말을 잘 들어주고 gulp 개선에 대한 필요성을 인정해주어 작업이 가능했던 것 같습니다.올바른 방향으로 문제 해결방법을 목표로 삼았습니다.앞으로의 bk의 계획이제 gulp가 완성이 됨과 동시에 directory 구조와 es6가 해결되었으니, 원래 가장 하려던 크몽의 코드 스타일, ESLint를 적용할 예정입니다. 그 후 vue2 마이그레이션 작업이 진행될 예정입니다.마무리작지만 하나하나 개선해 나가면 더 나아진 개발환경 구축이 되고 이런 작은 개선 사항들이 모여서 더 나은 크몽이 될 것이라 생각합니다.real _마무리이렇게 개발했던 경험을 블로그로 포스팅한 건 이번이 처음입니다.역시 글을 쓰는 건 어렵고 두서없었지만 build 자동화 툴에 대해 더 깊게 공부할 시간을 가지게 되어 좋은 경험이었습니다.글을 마무리 지으려니 어떻게 지어야 할지 모르겠네요.그래서 급 마무리 인사드립니다.이렇게 부족한 글 귀한 분들께서 읽어주셔서 감사합니다.다음 포스팅에는 크몽의 개발 조직문화 소개로 돌아오겠습니다.#크몽 #개발팀 #개발자 #개발문화 #경험공유 #인사이트
조회수 5565

Next.js 튜토리얼 1편: 시작하기

* 이 글은 Next.js의 공식 튜토리얼을 번역한 글입니다.** 오역 및 오탈자가 있을 수 있습니다. 발견하시면 제보해주세요!목차1편: 시작하기  - 현재 글2편: 페이지 이동3편: 공유 컴포넌트4편: 동적 페이지5편: 라우트 마스킹6편: 서버 사이드7편: 데이터 가져오기8편: 컴포넌트 스타일링9편: 배포하기개요요즘은 싱글 페이지 JavaScript 애플리케이션을 구현하는게 꽤 어려운 작업이라는 것을 대부분 알고 있습니다. 다행히도 간단하고 빠르게 애플리케이션들을 구현할 수 있도록 도와주는 몇 가지 프로젝트들이 있습니다.Create React App이 아주 좋은 예시입니다.그렇지만 여전히 적당한 애플리케이션을 구현하기까지의 러닝 커브는 높습니다. 클라이언트 사이드 라우팅과 페이지 레이아웃 등을 배워야하기 때문입니다. 만약 더 빠른 페이지 로드를 하기위해 서버 사이드 렌더링을 수행하고 싶다면 더 어려워집니다.그래서 우리는 간단하지만 자유롭게 설정할 수 있는 무언가가 필요합니다.어떻게 PHP로 웹 애플리케이션을 만드는지 떠올려봅시다. 몇 개의 파일들을 만들고, PHP 코드를 작성한 다음 간단히 배포합니다. 라우팅에 대해 걱정하지 않아도 됩니다. 그리고 이 애플리케이션은 기본적으로 서버에서 렌더링됩니다.이것이 바로 우리가 Next.js에서 수행해주는 일입니다. PHP 대신에 JavaScript와 React를 사용하여 애플리케이션을 구현합니다. Next.js가 제공하는 유용한 기능들은 다음과 같습니다:기본적으로 서버 사이드에서 렌더링을 해줍니다.더 빠르게 페이지를 불러오기 위해 자동으로 코드 스플릿을 해줍니다.페이지 기반의 간단한 클라이언트 사이드 라우팅을 제공합니다.Hot Module Replacement(HMR)을 지원하는 Webpack 기반의 개발 환경을 제공합니다.Express나 다른 Node.js HTTP 서버를 구현할 수 있습니다.사용하고 있는 Babel과 Webpack 설정을 원하는 대로 설정할 수 있습니다.설치하기Next.js는 Windows, Mac, Linux와 같은 환경에서 동작합니다. Next.js 애플리케이션을 빌드하기 위해서는 Node.js가 설치되어 있어야 합니다.그 외에도 코드를 작성하기 위한 텍스트 에디터와 몇 개의 명령어들을 호출하기 위한 터미널 애플리케이션이 필요합니다.Windows 환경이라면 PowerShell을 사용해보세요.Next.js는 모든 셀과 터미널에서 동작하지만 튜토리얼에서는 몇 개의 특정한 UNIX 명령어를 사용합니다.더 쉽게 튜토리얼을 따르기 위해서는 PowerShell 사용을 추천합니다.맨 먼저 다음 명령어를 실행시켜 간단한 프로젝트를 생성하세요:$ mkdir hello-next$ cd hello-next$ npm init -y$ npm install --save react react-dom next$ mkdir pages그런 다음 hello-next 디렉토리에 있는 "package.json" 파일을 열고 다음과 같은 NPM 스크립트를 추가해주세요.이제 모든 준비가 끝났습니다. 개발 서버를 실행시키기 위해 다음 명령어를 실행시키세요:$ npm run dev명령어가 실행되었다면 브라우저에서 http://localhost:3000 페이지를 여세요.스크린에 보이는 출력값은 무엇인가요?- Error No Page Found- 404 - This page could not be found- Hello Next.js- Hello World404 Page다음과 같은 404 페이지가 보일 것입니다.첫 번째 페이지 생성하기첫 번째 페이지를 생성해봅시다.pages/index.js 파일을 생성하고 다음의 내용을 추가해주세요:이제 http://localhost:3000 페이지를 다시 열면 "Hello Next.js" 글자가 있는 페이지가 보일 것입니다.pages/index.js 모듈에서 간단한 React 컴포넌트를 export 했습니다. 여러분도 React 컴포넌트를 작성하고 export 할 수 있습니다.React 컴포넌트가 default export 인지 확인하세요.이번에는 인덱스 페이지에서 문법 에러를 발생시켜봅시다. 다음은 그 예입니다: (간단하게HTML 태그를 삭제하였습니다.)http://localhost:3000 페이지에 로드된 애플리케이션은 어떻게 되었나요?- 아무일도 일어나지 않는다- 페이지를 찾을 수 없다는 에러가 발생한다- 문법 에러가 발생한다- 500 - Internal Error가 발생한다에러 다루기기본적으로 Next.js는 이런 에러들을 추적하고 브라우저에 표시해주므로 에러들을 빨리 발견하고 고칠 수 있습니다.문제를 해결하면 전체 페이지를 다시 로드하지 않고 그 페이지가 즉시 표시됩니다. Next.js에서 기본적으로 지원되는 웹팩의 hot module replacement 기능을 사용하여 이 작업을 수행합니다.You are Awesome첫 번째 Next.js 애플리케이션을 구현하였습니다! 어떠신가요? 마음에 드신다면 더 많이 배워봅시다.마음에 들지 않는다면 우리에게 알려주세요. Github 저장소의 issue나 Slack의 #next 채널에서 이야기 할 수 있습니다.#트레바리 #개발자 #안드로이드 #앱개발 #Next.js #백엔드 #인사이트 #경험공유
조회수 1108

[번역] 초기 페이스북이 스탠포드 학생을 꼬셨던 방법

이 글은 Business Insider에 실린 When Facebook Was Young And Trying To Attract Talent, It May Have Pulled This Brilliant Hiring Stunt At Stanford를 번역한 글입니다. SV Angel's의 데이빗 리는 Lerer Ventures의 CEO 모임에서 주목을 받았는데요, 왜냐하면 청중 가운데 한 CEO가 투자자에게, 뛰어난 인재를 데려오기 위한 스타트업의 혁신적인 채용 전략에 대해서 물어보았습니다. 페이스북 초기에 마크 저커버그가 사용한 전략에 대해서 언급했습니다. 리는 이 이야기가 그저 근거없는 소문이지만 이런 이야기를 들었다고 하더군요. 그러나 소문이라고 해도 너무 신선하고 너무 창의적이었습니다. 페이스북이 초기이고 유능한 인재를 찾아다닐 때, 관련있는 학생들을 찾기위해 스탠포드의 강의 개요와 해당 수업의 카탈로그를 참고했다고 합니다. 이미 페이스북은 캠퍼스에서 잘 알려져 있었죠. 예를 들어, 만약 페이스북이 엔지니어가 필요하다면, 엔지니어링 수업을 찾습니다. 관련있는 수업을 찾으면 해당 과목의 필독서 리스트를 함께 찾습니다. 저커버그와 그의 스태프는 스탠포드 도서관에 가서 위에서 언급한 필독서 안에 페이스북 포지션에 대한 전단지를 넣었다고 합니다. 학생들이 책을 꺼내면 페이스북이 남겨놓은 전단지를 찾을 수 있도록 말예요. 소문이었다고 해도 정말 좋은 전략임에 틀림없는 것 같습니다. 우선 해당 수업의 필독서를 찾아본다는건 굉장히 성실하다는 뜻이니까요. 우리나라에서 소프트웨어 개발에 관심있고 잘하는 학교가 어딘지 정말 궁금하네요. 저도 그 학교 도서관에 가보게요 :)#비주얼캠프 #인사이트 #경험공유 #조언
조회수 998

VCNC 개발팀 워크숍을 소개합니다. - VCNC Engineering Blog

VCNC 에서는 최근에 모빌리티 서비스 이동의 기본 타다를 출시했습니다. 신규 서비스를 준비하면서 팀도 새롭게 구성되고 새로운 멤버들이 팀에 합류했습니다. 이러한 변화 속에서도 좋은 개발 문화를 유지하기 위해서 VCNC 개발팀은 큰 노력을 하고 있습니다. 그중에서도 모두가 자랑하고 싶어 하는 VCNC 개발팀 워크숍을 소개합니다.VCNC 개발팀 워크숍최근 VCNC 개발팀 워크숍은 2018년 12월 19일 수요일에 진행되었습니다. 2016년 12월 처음 시작해서 최근까지 총 6번의 워크숍이 열렸습니다. VCNC 가 SOCAR에 인수되어 타다 서비스를 바쁘게 준비했던 2018년 8월을 제외하고 1년에 3번씩(4, 8, 12월) 꾸준히 개최되고 있습니다.VCNC 개발팀 워크숍은 개발팀 멤버들이 업무 외적으로 가지고 있던 각자의 관심사들을 공유하고 개발자들이 할 수 있는 고민을 같이 나눠보기 위한 욕구에 의해 처음 제안되었습니다. 포맷을 어떻게 할지 논의한 끝에 아래와 같은 포맷으로 워크숍을 진행하기로 했고 최근까지 이 포맷으로 워크숍을 진행하고 있습니다.오전 시간에는 모든 멤버가 각자의 관심사에 대해 5~10분 정도로 가벼운 라이트닝 톡을 하자.오후 시간에는 토의 주제를 정해서 몇 가지 깊은 토의를 나눠보자.회사의 업무에서 완전히 벗어나서 집중하기 위해 프로젝터 사용이 가능한 외부 카페를 대관하자.고기 회식을 하자!2018년 12월 제 6회 VCNC 개발팀 워크숍 단체 사진라이트닝 톡라이트닝 톡은 위에 언급했던 대로 모든 멤버가 5~10분 정도의 시간 동안 각자의 관심사에 대해서 다른 멤버들에게 소개하는 시간입니다. 발표 주제는 처음에는 개발로 한정 지었다가 더 폭넓게 관심사를 공유하기 위해 자유 주제로 변경했습니다. 다들 워크숍 전날까지는 어떤 발표를 해야 할지 걱정하며 투덜대지만, 막상 워크숍 당일이 되면 굉장히 흥미로운 주제들을 가지고 참여를 합니다. 라이트닝 톡이라는 의미에 맞게 1회 워크숍에서는 타이머를 켜고 시간 체크를 하면서 간단하게 발표를 했습니다. 그런데 기대했던 것보다 훨씬 좋은 발표들이 나오면서 발표 시간을 유동적으로 해서 발표의 퀄리티를 더 높이기로 했는데, 바로 다음 워크숍에 1시간 10분짜리 장대한 강의가 등장하는 바람에 절제의 중요성을 다시금 느끼면서 다시 타이머를 켜기로 했습니다…2017년 12월 워크숍에서는 PB팀이 상품 협찬을 해줘서 (PB팀 감사합니다!) 최고의 발표를 선정해 밀크 미니 인형을 지급했습니다. 영예의 수상자는 욕망의 흐름 이라는 발표를 정말 욕망의 흐름대로 발표한 Max로 선정되었습니다.<iframe src="https://docs.google.com/presentation/d/e/2PACX-1vQChBaARqlj8XfZx75MtkcejwupwBPt9tgD47sL99L1mHceYnPR2yDJnVAKFq8nFHXG9Pc9QbWBA5Eb/embed?start=false&loop=false&delayms=10000" frameborder="0" allowfullscreen="true" mozallowfullscreen="true" webkitallowfullscreen="true"> 지금까지 워크숍을 6회나 진행했기 때문에 상당한 양의 라이트닝 톡 발표자료들이 모였습니다. 그중에서 몇 가지 발표의 슬라이드를 공유합니다.Glitches of Mario by PrinceOrigami - 종이접기와 수학 by PrinceLattice-based Cryptography by BradTADA-Android 회고 by David기반 작업들을 무엇을 했는가? + RIB 간단 설명Contract by DoogieAd Fraud by HughBB84 - 양자 역학을 이용한 절대적으로 안전한 키 분배 프로토콜 by James불완전성 정리 by James삼단논법 by JamesGAN by MaxReinforcement Learning based on AlphaGo by NelsonSteganography by Nelson재귀의 폭풍 by TedUBER: COSTS & REVENUES by TerryProbabilistic Filter by Youngboom다음 워크숍부터는 발표를 녹화해서 슬라이드와 함께 공유해보도록 하겠습니다.최고의 발표로 선정된 Max종이접기로 각의 3등분선 구하기 실습필자의 발표를 경청하는 멤버들디스크의 위험성을 온몸으로 표현 중 심층 토의VCNC 개발팀 워크숍에서는 회사의 주요 결정사항 혹은 공통으로 관심이 있는 이슈들을 선정해서 모두의 의견을 듣고 공감대를 형성하거나 액션 플랜을 세우는 토의를 진행합니다. 토의의 주제는 발전적이고 열린 커뮤니케이션을 지향하는 멤버들의 특성상 회사 생활 과정에서 자연스럽게 형성됩니다. VCNC 에서는 평소에도 서로의 의견을 공유하는 자리를 자주 가집니다. 그 예로는 매 달 진행하는 매니저와의 1:1 개인 리뷰 제도, 각 팀별 주간 회고 회의, 제품 피쳐 개발 단위로 진행하는 회고 회의 등이 있습니다. 이러한 의견 공유 과정에서 멤버 각자가 생각하는 불만, 문제점, 희망 사항들이 자연스럽게 워크숍의 토의 주제로 발전됩니다. 토의는 특별한 절차 없이 모든 구성원이 자연스럽게 끼어들면서 자신의 의견을 펼치며 진행됩니다. 모두의 의견을 듣는 것이 중요하기 때문에 특별한 주제가 아니라면 적은 인원으로 조를 구성해서 토의한 뒤 의견을 취합합니다. 정리한 내용은 제품팀 및 HR 담당자에게 전달되며 그 후 우리가 해볼 수 있는 시도들을 하거나 새로운 회사의 정책들이 생겨나기도 합니다.둘러앉아서 토의에 집중하는 멤버들 (편안한 자세 가능)아래의 항목들은 실제로 진행했던 토의의 주제들입니다.순수 개발 관련점차 높아지는 개발 복잡성을 어떻게 해결할까?서버-클라 간 프로토콜 문서화 문제제품 개발 프로세스 관련제품 개발 프로세스를 스프린트에서 칸반으로 변경하고 지금까지 겪었던 느낀 점, 문제점 및 해결 방안은?이슈 관리가 잘 안 되는데 원인 및 해결책은?QA가 필요한가? 제품 품질을 높이기 위해선 무엇을 해야 하는가?회사의 문화, 복지 등 전반회사에서 팀 간 커뮤니케이션을 원활하게 하기 위해 Manager 제도가 도입되는데 Manager 는 어떠한 역할을 맡아야 하는가?Manager 제도의 후기 공유 및 개선 방향.어떠한 모습의 회사를 원하는가?필요한 사내 문화 및 복지는 무엇이 있을까?개인의 발전 관련언제 동기부여가 되는가? 저하되게 만드는 요인은?어떠한 사람과 같이 일을 하고 싶은가?어떠한 모니터링 및 피드백을 받고 싶은가?VCNC 개발팀 워크숍의 토의 결과로 회사의 많은 부분이 발전하고 있습니다. QA 팀이 생겼고 해외 및 국내 콘퍼런스 지원 관련 복지 정책이 새로 생겼습니다. 제품 개발 프로세스는 새로운 시도를 거치면서 지속해서 발전해 나가고 있습니다.그 외우걱우걱워크숍에는 풍족한 먹을거리가 함께합니다. 카페를 대관하는 경우에는 무제한으로 음료가 제공되며 점심시간에는 배달을 시켜서 먹으면서 함께 이야기를 나눕니다. 마무리로 저녁에는 고기를 먹고 싶은 만큼 맘껏 먹으면서 역시 이야기꽃을 피웁니다.미니게임워크숍의 포맷이 라이트닝 톡 + 심층 토의 조합으로만 진행되어 느껴지는 지루함을 탈피하기 위해 2018년 4월 워크숍에서는 2인 1조로 팀을 구성해서 미니게임을 진행했습니다. 개발자 감성에 걸맞게 스크래치 게임인 Lightbot 2로 1시간 정도 플레이를 했습니다. 승패가 있는 대결은 아니었지만 다들 피로감을 호소할 정도로 엄청나게 집중하면서 시간을 보냈습니다.워크숍의 핵심은 고기를 굽는 것점심에는 피자를 시켜 먹으며 자유로운 대화를 나눕니다.집중해서 Lightbot 을 플레이하는 플레이어휴식 중에도 즐거운 대화는 계속됩니다. 마치며VCNC 개발팀 워크숍은 앞으로도 계속됩니다. 앞으로도 좋은 회사의 문화를 소개하는 기회를 자주 만들도록 노력하겠습니다. 저희와 함께 VCNC 를 발전시킬 좋은 분들을 기다리고 있으니 많은 지원 바랍니다!
조회수 692

데이터 검증이 중요한 이유

데이터 검증은 system error 또는 human error에 의해 garbage data가 쌓이고 있진 않은지, 정상적으로 데이터가 수집되는지 여부를 확인하는 매우 중요한 단계인데요. 오늘은 왜 데이터 검증 단계가 중요한지를 최근 경험을 통해 설명드리고자 합니다.한 고객사에서 데이터 검증 과정 중 GA(Google Analytics for Mobile Apps) 대비 저희가 공급한 툴(와이즈트래커)의 세션수(방문수)가 너무 낮다는 문의를 주셨습니다. 그 수치는 무려 3배 가량의 차이로 acceptable이 힘든 데이터였습니다.사실 세션은 설정이 요하는 분석 항목이 아니기 때문에 측정기준으로 비교해 봐야 했지만, 세션 기준 역시 30분으로 GA와 와이즈트래커와 동일했습니다. 이에 저는 GA에서 over counting되는 요인이 있을거라 생각하고 열심히 구글링 하다 흥미로운 아티클을 발견했습니다. GA SDK V4 적용했더니 세션수 2배 이상 증가했다?>> Link이 문의에 한 사람이 답변을 달기를, GA에는 activity auto tracking 기능이 있는데, 이를 사용할 경우 앱을 백그라운드에 내리거나 프로세스 킬하고 재실행하면 30분 세션 유지기간에 상관없이 세션이 증가한다는 내용이었습니다. 이 말인즉, 사용자가 앱과의 인터렉션이 없어도 GA SDK가 자동으로 새로운 세션을 발급한다는 건데요. 설마했지만 사실 확인을 위해 테스트를 진행했습니다.1) 테스트 앱 개발2) GA SDK v4 적용3) 앱 실행4) 앱 프로세스 종료 후 30분 이내 재실행 or 백그라운드 처리이는 불과 1분 안에 일어난 현상테스트 전 데이터는 사용자 1, 세션 6건이었고, 3단계 앱을 실행하는 시점에 사용자 2, 세션 7이 되었습니다. 정상적으로 사용자 1건, 세션 1건이 증가한 것입니다. 여기서 앱을 종료하고 바로 앱을 다시 재실행 해보았습니다. 그리고 데이터를 보니 오잉? 정말 세션이 증가했습니다. 정말인가 싶어 여러 번 했지만, 아래 캡쳐시간을 보시면 알겠지만, 불과 1분도 채 안되서 3건의 신규세션이 발생한 것입니다.그렇다면 도대체 왜 이렇게 처리한 것일까? 오류일까?정확히 알 수는 없지만 이 기준 자체는 데이터 해석에 큰 오해를 일으킬 수 있습니다. 우리는 보통 평균 값을 갖는 파생지표를 세션을 기준으로 산정합니다. 그래서 보시는 것 처럼, 평균 세션당 화면, 평균 세션 시간이 세션수를 기준으로 나눠진 것을 알 수 있습니다.평균 세션당 화면, 평균 세션 시간, 사용자당 방문횟수와 같은 지표는 사용자의 앱 인게이지먼트를 판단하는 척도로 활용하는 사용성 높은 지표인데, 사용자와 앱 간의 실질적인 인터렉션이 전혀 없는 허수의 세션이 증가하니 세션수와 연관있는 모든 파생지표 데이터가 실제보다 낮은 수치로 표기되고, 이를 가지고 잘못된 해석을 하고 잘못된 액션까지 취할 수 있다는 것입니다.해당 고객은 안타깝게도 세션 뿐만 아니라 세션과 관련된 파생지표 모두 잘못된 기준의 KPI를 보았다고 할 수 있는데요, 사실 아직까지 국내는 GA에서 추출하는 기본 데이터 수준으로 KPI를 활용하는 경우가 많고, 특히 GA의 activity auto tracking 기능을 대부분 true로 설정하여 활용하고 있을 것이기 때문에 데이터 해석의 문제는 생각보다 굉장히 범용적으로 발생하고 있을 것으로 예상됩니다.!! 데이터 검증은 선택이 아닌 필수 과정데이터 분석을 잘하기 위한 전제 조건은 좋은 데이터를 수집하는 것입니다. 하지만 보통 3rd party tracking 업체는 툴을 제공하는 것 까지만 수행하지, 클라이언트의 개발자가 제대로 적용했는지, 적용한 데이터가 정상 수집되고 있는지 등의 과정까지 support 하지 않습니다. 그럼 클라이언트가 직접해야 하는데 이건 현실상 더더욱 힘들 수 밖에 없습니다.그래서 툴을 선택할 때는 반드시 도입 단계에 데이터 검증을 지원하는지 여부를 확인해야 합니다. 2012년부터 빅데이터 분석 바람이 불고 있지만, 현실은 기업에 전문 분석가 1명이 없는 기업이 아직 대부분입니다. 또한 비전문가가 쉽게 배우고 커버할 수 있는 업무도 아니기 때문에 전문 업체의 지원을 받아야 합니다. 안해주면 해달라고 떼 써야 합니다. 초기 도입시에 말이죠. 그래야 이후에 자신감있게 데이터를 신뢰하고 분석하고 액션 플랜을 수립할 수 있습니다.오늘 당장 리포트의 데이터를 의심의 눈으로 한 번 다시 보시는 계기가 되면 좋겠습니다.
조회수 2374

[MOIN] 04. MOIN 디자이너를 소개합니다

동남아 뺨치게 덥던 날씨가 갑자기 훅! 선선한 가을로 바꼈습니다.다들 갑작스런 추위(?)에 잘 적응하고 계신가요?이번 에피소드는 여러분이 보시는 모인 로고, 웹사이트 등 모든 모인 비주얼을 창조(?)해내신 디자이너에 대해 소개하고자 합니다. 모인 비주얼을 창조(?)하신 김보람 디자이너- Professional Experience -2014.09 - 2015.07 리모택시코리아, UI/UX 및 그래픽 디자이너2013.03 - 2015.03 TODAIT, UI/UX 디자이너2013.12 - 2014.03 더디엔에이, 인턴 디자이너- Education -숙명여자대학교 시각영상디자인 학사- Awards -2014 드림엔터 IoT 해커톤 최우수상2013 SK플래닛&한국관광공사 주최 스마트관광앱 공모전 은상2013 Adobe ADAA Infographic Design Semi-Finalist2013부산국제광고제 (AD Stars) Outdoor Finalist▶     모인에서 어떤 부분을 담당하고 계신가요?디자인 A to Z를 담당하고 있습니다. 처음 MOIN에 들어왔을 때에는 UX/UI 디자이너로 들어왔었는데, 역할을정해 놓는 게 의미가 없더라고요. 창립 멤버였던 만큼 백지에서 출발해야 했습니다. 그러다 보니 브랜드 전략에서부터 제품(Website, Mobile Application), 홍보물 디자인 등 모두 저를 거쳐 나왔답니다!  디자인 뿐만 아니라제품 기획과 마케팅 관련한 일도 합니다.▶     시각디자인을 전공하게 된 이유가 있나요?원래는 그림 그리는 것을 즐겨해서 회화나 애니메이션을 전공하고 싶었어요. 그런데 좀 더 현실과 직결된 디자인분야가 매력적으로 보여서 전공하게 됐습니다. 디자인 분야가 정말 다양하거든요. 제품을 만드는 산업 디자인(3D), 공간을 디자인하는 환경 디자인(4D), 그래픽 관련된 모든 걸 하는 시각 디자인(2D), 패션 디자인 등 세세하게 나뉘는데, 저는 앞서 언급했다시피 그림 그리는 걸 좋아해서 그래픽 전반을 다루는 시각 디자인을 선택했어요. 디자인에 대해서는 알면 알 수록 더 재밌는 영역이라 생각합니다. 지금 제 삶은 디자인을 떼어 놓고는 생각할 수가없을 정도로 즐겁게 일 하고 있어요! ▶     수상 경력이 짱짱하십니다. 그 중에서 가장 애틋한(?) 수상 이력 하나만 이야기 해주실래요? 왜 가장 기억에남고 애틋했나요?사실 최근 몇 년 동안 공모전이나 해커톤 등 이런 저런 활동을 많이 해왔어요. 하나 하나 애정을 쏟아서 그런지 다기억에 남아요. 그래도 굳이 하나를 꼽자면 대학 졸업 전에 친구들과 함께 밤을 새어가며 준비한 Adobe Design Award입니다. 그 결과 Interaction Design 부문에서 Final을 수상했었죠. 지금 그 결과물을 보면 보완해야 할 점이 많이 있긴 하지만 준비 과정 자체가 애틋하게 느껴져요. 팀원들 각자의 장점을 살려 역할을 분배하고, 끊임없이 의논해가며 결과물을 만든 거거든요. 사실 디자이너들은 각자 색이 뚜렷하기 때문에 의견을 맞춰가는 게 다소 어려운 부분이 있어서... (^^;) 그런 과정 끝에 좋은 결과까지 얻어 더더욱 소중한 기억이 됐습니다.  동시다발적으로 일을 잘 해내는 게 어마무시한 특기(?)인 김보람 디자이너▶     어떻게 스타트업 세계에 들어오시게 됐나요?한참 사용자 경험 및 인터페이스에 대해 공부하던 대학생 때, 경험 삼아 참여한 여러 대외 프로그램에서 스타트업에 관련된 사람들을 만날 기회가 있었습니다. 그 전까지는 스타트업에 대해서 아무런 지식도, 관심도 없던 상태였죠. 그런데 주변에 하나둘씩 관련된 사람들이 모이니까 자연스럽게 흥미가 생기더라고요. 그러면서 본격적으로 스타트업 종사자를 만나게 됐고, 개발자들과 여러 프로젝트를 함께 수행해 볼 기회도 생겼습니다. 그 과정에서 직접서비스를 만들어 운영해보기도 하고 창업의 길도 걸어보고요. 생각해보면 제가 스타트업 세계에 들어오게 된 건자연스러운 현상이었던 것 같아요.▶     대표님은 어떻게 만나셨나요? 어떤 부분을 믿고 함께 창업을 하시게 됐죠?저는 예전부터 지인들과 함께 비영리 해커톤(개발자 경진대회)를 운영해오고 있습니다. 그 팀원들 중 한 분이 지금MOIN을 이끄시는 서일석 대표님과 아는 사이었는데, 마침 디자이너를 구한다는 사실을 전해 듣고는 저를 소개해주셨습니다. 앞으로 뭘 할지에 대해 고민하고 있던 찰나였던지라, 한 번 만나보겠다고 했습니다. 당시에 대표님과MOIN의 사업 아이템과 방향성, 가능성에 대해 이야기를 했어요. 핀테크 부분은 한 번도 해본 적은 없었지만, 이야기를 듣다 보니 사업에 대한 확신도 생기고 재밌을 거 같다는 기대도 하게 됐어요. 그래서 기쁜 마음으로 합류하게 되었습니다.김보람 디자이너에게 '함께 일하고 싶은 사람'이란?#열정 #탐구 #경청▶     가장 자신 있는 디자인 영역은 어딘가요? 혹시 디자인 외에도 욕심나시는 부분이 있을까요? 왜 이렇게 생각하셨나요?사용자 경험(UX)에 기반한 사용자 인터페이스(UI) 디자인이 제 전문 분야입니다. 가장 오래 공부해 오기도 했고아무래도 경험도 그 쪽으로 많이 쌓았기 때문에 자신이 있어요. 또 UX/UI 영역은 사용자 행동에 대해 탐구하고 분석하기 위해 끊임없이 고민해야 한다고 생각해요. 전 그 과정이 굉장히 즐겁습니다. 앞으로도 계속 해나가고 싶은영역이에요.  디자인 외의 영역에서는 개인적으로 프론트엔드(Front-end) 개발이 꼭 배우고 싶습니다. UI디자인 분야가 개발자와 협업이 중요한 분야인 만큼 이 정도의 개발을 공부하고 싶어요. 하지만 무엇보다도 디자이너로서 개발 의존도를 낮추고 싶거든요.제가 디자인한 걸 스스로 구현하는 게 더 정확하다 생각해요. 뿐만 아니라, 개발자와 저 둘 다에게 효율적이기도하구요. 곧 개발 스터디를 하는 디자이너로 찾아 뵙겠습니다! 크하핳ㅎㅎ! ▶     앞으로 더 키워나가고 싶은 역량은 어떤건가요? 그 이유는요?겸손함이요. 때때로 어떤 분야에 대해서 꽤 많이 안다고 생각하다가도, 아직 한참 멀었다는 사실을 깨닫곤 하거든요. 그리고 아무래도 자만하는 순간 더 이상 성장하지 못할 거 같다는 생각도 들어요. 벼는 익을 수록 고개를 숙인다고, 자만을 스스로 경계하도록 노력하겠습니다. 김보람 디자이너가 가장 좋아하는 도라에몽과 함께! (드루와 드루와)▶     창업한 지 약 반년이 지났습니다. 분위기가 많이 달라졌나요?분위기가 정말 많이 달라졌어요. 약 5개월 전 제가 MOIN에 처음 합류했을 때에는 서비스를 만드는 데에 집중했었습니다. 하지만 지금은 그 서비스를 세상에 내어 놓을 준비를 하고 있거든요. 달리기로 보자면, 출발 신호탄이터지기 직전인거죠. 앞으로 함께 뛰어 줄 동료들도 최근 합류하면서, 다같이 파워 야근을 하며 서비스 오픈을 준비하고 있습니다. 할 일이 정말 많은데도 다들 긍정적인 마음으로 일하고 있습니다. 앞으로 계속 동료가 늘어날텐데, 이 분위기를 계속 이어나갈 수 있었으면 좋겠어요. ▶     앞으로 어떤 디자이너가 되고 싶으신가요?제가 만들어 갈 서비스에 대한 통찰력을 가진 디자이너가 되고 싶습니다. 스스로 결정한 전략과 판단이 서비스를성장시키는 방향으로 나아갈 수 있도록 말이죠. 궁극적으로는 많은 사람들을 행복하게 만드는 디자이너, 사람을위한 디자인을 하는 사람이 되고 싶어요. 그런 의미에서 모인 화이팅!- 김보람이 꼽은 인생 명언 -해야 할 것을 하라.모든 것은 타인의 행복을 위해서,동시에 특히 나의 행복을 위해서이다.by. 톨스토이이번 주에는 한 편이 더 나갑니다.여름방학을 MOIN에서 불태우고 바로 개강을 맞은 비극(?)의 안드로이드 개발 인턴!그녀를 떠나보낼 준비를 하며 글쓴이는 꺼이꺼이 웁니다. #모인 #MOIN #디자이너 #디자인 #디자인팀 #팀원 #팀원소개 #팀원인터뷰 #인터뷰 #기업문화

기업문화 엿볼 때, 더팀스

로그인

/