스토리 홈

인터뷰

피드

뉴스

조회수 2379

사운들리 백엔드 이야기

사운들리는 '귀에 들리지 않는 소리'를 이용해서 컨텐츠를 전달할 수 있는 SaaS 플랫폼을 서비스하고 있습니다.제품의 구성요소는,음파를 송신할 수 있는 송신단음파를 모바일에서 수신할 수 있는 Android, iOS SDK그리고 컨텐츠를 제공하고 데이터를 수집, 분석하는 백엔드로 구성되어 있습니다.오늘은 구성 요소중 백엔드에 대해서 이야기 해보도록 하겠습니다.<그림 1. 사운들리 솔루션 구성도>사운들리의 인프라는 모두가 잘 아시는 아마존 웹 서비스를 이용하고 있으며, 크게 컨텐츠를 제공하는 API서버 부분, 로그를 수집, 분석하는 부분, 그리고 컨텐츠를 관리하는 CMS 부분으로 이루어져 있습니다.소프트웨어 스택Java : 현재 사운들리의 일부 시스템을 제외하고는 전부 자바로 작성되어 있습니다. Node.js로 시작하여 PHP를 거쳐 지금의 자바 기반의 시스템으로 구성하게 되었습니다. 다양한 사람들이 개발을 해오면서 각자 가장 잘할 수 있고, 빠르게 구현할 수 있는 언어로 개발되어 가다 현재의 자바로 통일되어 구성되게 되었습니다.Spring : API서버는 HTTP 기반의 REST API를 이용해 컨텐츠를 전달하고 있으며 스프링 프레임워크를 이용해 개발되었습니다. 이외에도 일부 분석에 스프링 배치를 사용하고 스프링을 편리하게 사용할 수 있게해주는 스프링 부트도 이용하고 있습니다.gRPC : 분산되어있는 서버들끼리 이기종 언어간 통신을 하기 위해서 Protocol Buffers 기반의 gRPC를 이용하고 있으며 서버들의 모니터링하는 서버와 에이전트들 사이의 통신 목적으로 사용합니다.Flume : 분산된 서버들에서 로그를 수집하는 역할을 합니다. 수집된 로그는 파일로 저장하며 실시간으로 볼수 있도록 엘라스틱서치에 같이 저장하고 있습니다. SDK에서 전송되는 로그 또한 웹서버의 엑세스 로그를 플럼 에이전트가 수집하는 방식으로 비동기로 처리하고 있습니다.ElasticSearch : 수집된 로그들을 실시간으로 확인하기 위해서 사용되며 Kibana를 이용해 시각화하고 있습니다.Angular.js : CMS의 프론트엔드는 Angular.js + Bootstrap을 이용해 개발되었으며, Bower를 이용한 라이브러리 관리, Grunt를 이용한 빌드 관리를 하고 있습니다.소프트웨어 개발/운영GIT : 소스코드는 git로 관리하며 Git-Flow를 이용한 브랜치 정책을 수립하여 가져가고 있고 저장소로는 깃허브를 이용합니다.Quality Practice : QA단계에서 제품을 테스트하기 전 개발자들은 QA 프로세스에 맞게 다음 3가지 기준으로 소스 코드의 품질을 관리합니다.코딩 컨벤션 : 사운들리 내부 코딩 컨벤션에 맞게 개발되었는지 확인합니다. Checkstyle의 규칙을 정의 및 자동화합니다.테스트 코드 : 단위 테스트 코드를 작성하며 테스트 결과는 모두 통과되어야 합니다.테스트 커버리지 : 단위 테스트 코드가 작성된 커버리지를 계산하며 현재 60%를 목표로 진행하고 있습니다.젠킨스 : 소스코드 저장소에 변동이 일어나면 젠킨스가 소스코드를 빌드하고 위에서 언급한 세가지에 대한 리포트를 작성합니다.소나큐브 : 무료 오픈소스로 코드 정적 분석을 해주며 및 QA 리포트를 같이 볼 수 있습니다.슬랙 : 인력이 적은 저희 팀도 슬랙을 적극적으로 개발/운영에서 사용하고 있습니다.팀 커뮤니케이션 : 팀원들 간의 의사사통을 위한 주요 수단으로 모든 팀원이 함께 사용하고 있습니다.분석 리포트 : 젠킨스나 배치를 통해 분석된 데이터들은 분석이 끝난 지표들은 슬랙으로 결과를 전송하여 모든 팀원이 볼 수 있도록 공유하고 있습니다.서버 모니터링 : 서버들의 이상 징후 감지나 배치 오류등을 슬랙을 통해 담당자에게 전송하여 조치할 수 있도록 합니다.애플리케이션 및 서버 모니터링 : 애플리케이션의 모니터링은 Naver에서 오픈소스로 공개한 핀포인트를 사용하고 있고, 서버 상태 모니터링을 위해 자체 개발한 모니터링 시스템을 사용하고 있습니다. 모니터링 데이터 수집을 하는 에이전트와 전체 시스템의 데이터를 관장 하는 서버간에는 gRPC를 이용하여 상태 체크를 합니다. 서버의 상태에 문제가 있을 때에는 slack을 통해 담당자들에게 알람을 주도록 시스템 설계를 하였습니다.개발 문화개발자들은 각각 개발을 할때 정해진 정책에 맞춰 브랜치를 만들어 개발합니다.각각 개발된 소스들은 저장소인 깃허브에 푸시된 후 깃허브의 댓글 기능을 이용하거나 오프라인을 통해 코드 리뷰를 진행합니다.리뷰가 끝난 후 합쳐진 소스는 QP 활동을 통해 분석이 됩니다.빌드가 실패할 경우 커피를 사야합니다 ^^ (커피를 얻어 먹으려는 것이 아닌 소스코드를 푸시하기 전 잘 확인하자는 취지입니다) AWSEC2 : 사운들리의 대부분의 구성 요소인 API서버와 로그 수집, 분석 서버, 엘라스틱서치, 플럼, CMS등이 모두 EC2에 구축되어 있습니다.RDS : 컨텐츠의 주 저장소로 데이터베이스 관리의 용이성을 고려하여 RDS의 Multi-AZ에 배포하여 Active-Standby로 구성되어 있으며 이 데이터들은 레디스와 로컬 캐시를 이용하여 API서버에서 활용하고 있습니다.S3 : 컨텐츠에 포함된 각종 정적 데이터들이 저장되며 수집된 로그들도 저장하여 보관됩니다. EMR : 로그 수집서버를 통해 S3에 저장된 로그들은 EMR을 이용해서 분석됩니다.Beanstalk : 개발 서버의 배포에 사용됩니다. 최근 IntelliJ의 플러그인이 업데이트 되면서 IntelliJ 15버전을 지원하게 되므로써 로컬에서 개발하고 개발 서버에 배포까지 편리하게 하고 있습니다. VPC : 인터넷이 필요 없는 서버들은 VPC 내부 private-zone에 배포 및 ELB를 통해 외부에서 접근하도록 구성되어 있습니다.<그림 2. AWS 배포 구성도>이상으로 사운들리에서 사용하고 있는 백엔드 소프트웨어들을 소개해 보았습니다. 적은 인력으로 빠르게 사업을 진행하는 스타트업에서는 비즈니스에 집중할 수 있도록 도와주는 다양한 툴이나 오픈소스를 이용하여 많은 도움을 받을 수 있는 것 같습니다. 또한 코드를 잘 작성하여 에러를 줄이는 것도 필요하지만 여유가 많지 않으면 최소한 제품의 에러에 빠르게 대응할 수 있도록 하는 방법도 필요한 것 같습니다.#사운들리 #개발 #개발자 #문제해결 #프레임워크 #스킬스택 #스택 #인사이트
조회수 724

[Buzzvil People] Roy Kim, Head of Finance

 Buzzvil People에서는 다양한 배경과 성격 그리고 생각을 지닌 버즈빌리언들을 한 분 한 분 소개하는 시간을 갖습니다. 어떻게 버즈빌에 최고의 동료들이 모여 최고의 팀을 만들어가고 있는 지 궁금하시다면, 색색깔 다양한 버즈빌리언들 한분 한분의 이야기가 궁금하시다면, Buzzvil People을 주목해주세요.1. 간단한 자기 소개 부탁드립니다. 안녕하세요. 버즈빌의 BM(Business Management)팀에서 Head of Finance Role을 맡고 있는 Roy  Kim (김현우)입니다. 버즈빌에 조인한 건 2016년 8월 29일로, 이제 1년 6개월정도 지났습니다. 저는 4대문 안쪽의 현-마이크로소프트 한국 지사 건물이 있는 곳의 산부인과에서 태어났습니다. 가끔씩 저에게 지방출신이 아니냐고 물으시는 분들이 계신데.. 조선시대였으면 사대부들만이 가능하다는 4대문 안쪽에서 태어난 진정한 성골 서울사람입니다 🙂 태어난 후부터 중간에 잠깐 1.5년을 제외하고는 서울에서 초-중-고등학교를 졸업했고, 2001년부터 2009년까지 약 8년간 미국에서 생활했습니다. 사실 처음에는 1년간 어학연수를 하고 군대를 갈 생각이었으나..어찌저찌 하다보니 대학을 졸업하고 2년간 업무 경험도 쌓을 수 있었네요. 대학에서는 Economic를 전공했기 때문에, 졸업 후 관련 업종을 찾는데 집중했고, 운이 좋게 외교통상부의 해외공관의 경제담당관으로 근무했습니다. 제가 있던곳은 샌프란시스코 총 영사관이 었는데요, 주요 업무는 실리콘밸리 및 샌프란시스코의 비즈니스 네트워크를 만들고 관리하는 업무, 주요 경제 동향 파악 및 리포트 작성, 우리 기업의 현지 진출 지원 등의 업무였습니다. 이후, 좀더 액티브한 업무를 하고 싶어 영사관을 나와 현지 게임회사에서 근무하면서 Local Publishing을 담당했습니다. 해당 업무는 한국에서 미국 진출을 원하는 게임을 가져와서, 현지화 하는 작업을 진행하는 업체로 2~3개의 게임을 실제로 미국에서 런칭하는 등의 경험도 해보았네요.  이후에는 사실 살~짝 권태기가 왔습니다. 졸업과 동시에 일을 시작하기는 했지만, 아직도 제가 무엇을 좋아하고 무엇을 하고싶은지 모르고 있는 건 아닌가라는 고민도 들었구요. 해서 머리도 식힐 겸 영어강사를 시작했고 이 역시 나름 재미있게 하긴했으나, 장기적인 관점에선 재무/회계 역량을 더 발전시키고자 다시 인더스트리로 돌아오게 되었습니다.  버즈빌 입사 바로전까지 일하던 지오시스는 이베이지마켓의 Founder인 구영배사장님이 글로벌 오픈마켓을 지향하면서 런칭한 회사로, 저도 2012년까지는 지마켓의 일원으로 일하다가 지오시스에서 본격적으로 재무시스템기획을 맡으면서 업무를 시작했습니다. 주로 회사의 재무/회계 전반적인 시스템을 구축하는 업무를 맡았고, 업무에 대한 성과 등을 인정받아 팀장으로 팀원들과 함께 회사의 주요 시스템을 기획했습니다. 이때 제가 만든 어드민내 기능만 30가지가 넘었고, Finance를 위한 별도의 어드민을 개발하여 SAP와 연동하는 업무도 진행했습니다. 해당 업무는 정확히 재무회계로 볼수는 없지만, 해당 업무의 지식이 매우 필수적인 업무였기 때문에, 저는 이곳에서 재무회계 관련 업무의 기초지식을 쌓을 수 있었을 뿐만아니라 한국 외 싱가폴, 미국, 일본, 중국, 말레이시아, 홍콩, 인도네시아 법인을 모두 시스템으로 연동하여 관리하는 Role도 맡게 되었습니다.  3.5년쯤 해당업무를 진행하다, 회사의 본격적인 IPO 준비에 앞장서고자 세무 및 회계의 업무로 보직을 전환했고 이 과정에서 1,000억원 증자 및 국세청 세무조사 응대 등의 업무를 진행했습니다. 돌아보면 저에게 엄청난 경험과 성장을 할 수 있게 해 준 회사였지만, 지지부진한 성장과 스스로의 내적 어려움이 있었기 때문에, 회사를 떠나게 되었습니다. 2. 어떻게 버즈빌에 오시게 되셨나요? 이전 직장을 그만두고 이직을 알아보던 중 헤드헌터분이 강하게 추천을 해 주셨습니다. 사실…이직이 확정된 & 면접을 보러다닌 다른 기업들에 비해서는 버즈빌은 저에게 상당히 미지의 존재였기 때문에, 사실 처음에는 전혀 고려대상은 아니었습니다.  그럼에도 불구하고 이곳에 오게 된 계기에는 주변분들의 추천이 있었습니다. 이름을 직접 말씀 드릴 수는 없지만, John의 지인과 버즈빌의 파트너사 및 협력사 분들이 회사에 대해서 발전 가능성이 높고 제가 기여할 부분도 많다고 말씀해 주셨습니다.  사실.. 이전의 회사에서 100명부터 650명이 되는 과정에서 5년이 넘게 회사의 기초 Finance System을 설계했었습니다. 가깝게는 판매자의 정산 및 결제부터 멀게는 회사내의 보상체계까지 다양한 부분의 시스템을 기획하면서, 제 스스로 주어졌지만 사용하지 못한 휴가가 49일이나 됐습니다. 이렇게 일이 많은 회사보다는 그냥 제게 주어진 Task에 집중하면서, 다른 여러가지 사업구상을 할 수 있는 회사를 찾고 있던터라, 처음에 버즈빌에서 최종합격 통보를 주셨을 때 일이 많을 것 같아서 거절을 했었습니다.  하지만, 이후 다시 주변 분들이 너랑 잘 맞는 회사라는 말씀을 거듭 주셨고, 매우 부끄럽게 다시 연락을 드려서 기회가 있는지 물었습니다. 상당히 아이러니 한데요, 합격시켜주니 안간다고하고..알았다고 하니, 다시 가겠다고..이와 관련해서 내부에서도 이야기가 있었던 것으로 알고 있습니다 (저 사람은 들어왔다, 금방 나갈 것 이라고) 결과적으로 전 아직도 이곳에 있고 이곳이 좋습니다. 물론, 다른 기회를 잡았으면 어떨까하는 생각을 안한 것은 전혀 아니나, 이정도면 매우 만족한다고 볼 수 있습니다 3. 버즈빌에서 어떤 업무를 담당하고 계신가요? 제가 담당하는 업무는 Accounting and Finance 전반적인 업무를 진행하고 있습니다. 물론 이 외에도 회사의 여러가지 정책을 정립하고 수립하는 업무도 담당하고 있습니다업무를 나누자면 크게 3가지로 나눌 수 있습니다 1) 재무회계업무 2)IR업무 3)기타정책업무. 물론 회사에 따라서는 1)재무회계업무도 1-1 재무 / 1-2 회계 / 1-3세무 로 나누지만, Buzzvil은 아직 인력이 충분하지 않아 동 업무를 모두 같이 처리하고 있습니다   우선 1) 재무회계업무를 보면, 주로 하는 일은 재무관리가 있는데요. 간단하게 말씀드리면 회사의 입/출금을 관리하는 업무입니다. 입금의 경우 회사가 발생시키는 매출에 대해서 매출이 적절하게 회수됐는지 확인을 합니다. 반대로 출금의 경우에는 회사가 지불하는 다양한 서비스 경비에 대해서 비용이 적절하게 승인됐는지, 지불금액은 합리적인지 판단 후 출금을 처리하는 업무를 말합니다. 회계의 경우에는 앞에말씀 드린 입/출금 업무가 제대로 처리됐는지 장부상에서 관리하는 것을 말합니다. 흔히 회계를 단순한 내역정리라고 보시는 분도 계신데요. 회계는 장부를 통해 회사의 살림살이가 제대로 운영되는지 확인하는 기능입니다. 아쉽게 제가 입사하기 이전의 Buzzvil의 회계는 외부기장을 통해 작성되고 있었기 때문에, 장부의 금액에 대해서 회사내에 정확히 파악하시는 분이 없었습니다. 해서, 처음에 이 부분에 대한 파악 및 확인이 시급하였고, 지금은 적어도 어떤 Account의 어떤 비용이 있는지는 파악하고, 관련 내용을 COO 및 CEO, 외부 투자자들에게도 공유 드리고 있습니다  두번째로는 IR업무입니다. 물론 아직 상장을 하지 않은 법인이기 때문에, 정확한 의미의 IR이라고 볼수는 없는데요. 제가 현재 담당하고 있는 IR은 주로 투자자 응대입니다. 저희 회사에 투자한 투자자분들께서 회사의 실적등에 대해서 궁금해 하시기 때문에, 주로 분기별로 응대를 하고 있습니다. 그리고 지난해 Slidejoy를 인수하면서 개인투자자 분들도 많이 추가 되셨기 때문에, 이 분들에게도 관련 자료를 전달 드리고 있습니다. 만약 회사가 Going public으로 간다면, 그때는 관련업무의 depth가 지금보다는 더 깊어질 것으로 보고 있습니다. 따라서 이를 대비하기 위한 IR 자료 준비 등의 업무도 올해부터 시작하려고 하고 있습니다  마지막으로 담당하는 업무는 기타정책업무 입니다. 아직 회사에는 비용에 대한 기안/승인/집행 등과 관련된 프로세스가 정립되지 않았습니다. 따라서 관련 업무를 보다 체계화 시키는 업무를 진행하고 있습니다. 비용관련 정책의 경우 단순하게 BM에서 집행하는 비용 외, 전사에서 발생하는 모든 비용을 대상으로 관련 정책을 수립하고 있습니다. 아울러, 회사가 Going public을 진행하고 있기 때문에 관련해서 사전에 미리 준비해야하는 여러가지 사항에 대해서 처리하고 있으며, 이 중에서 정책적으로 결정해야 하는 일이 있으면, 관련 정책의 수립도 진행하고 있습니다   4. 스타트업에서 혹은 광고업계에서 일하는 느낌이 어떠세요? 굉장히 새롭습니다. 스타트업에서 근무해본 경험은 있지만 광고는 처음인터라, 물론 저의 업무특성상 업계에 크게 구애받지 않는 업무이긴 합니다만, 항상 새로운 Industry에 대해서 배우는 것은 저에게 매우 즐거운 일이라 생각합니다.  사실 버즈빌은 광고라기 보다는 광고 및 컨텐츠를 통해서 모바일 잠금화면이라는 새로운 생태계를 구성하는 업체라고 생각합니다. 이는 단순하게 새로운 컨텐츠를 제작하여 배포하는 것도 아니고, 광고만을 수주하여 고객에게 전달하는 것과는 다르다고 생각합니다.  이러한 면에서 사실 이전 회사에서는 접하지 못한 새로운 수익의 창출 및 고객의 니즈를 충족시킬 수 있다는 부분은, 저 스스로에게도 다양한 부분을 시사했던 것 같습니다. 제 개인적으로는 버즈빌이 광고업계라는 업종을 한정시키기 보다는, 모바일을 통한 Life Changer로서의 다양한 Role을 수행해 나가길 희망하고 있습니다  5. 이것만큼은 버즈빌이 참 좋다! 어떤 게 있으실까요? 우선 버즈빌의 자유로운 분위가 저는 매우 좋습니다. 물론 입사초에는 규정되지 않은 문화가 매우 어지럽고 비효율적이라는 느낌을 받은 것도 사실입니다. 이는 버즈빌의 문화의 잘못이라기 보다는, 제가 있던 곳들이 어쩌면 정형화된 분위기에서 저의 일만 하면 되는 분위기 였기 때문에, 그러한 차이에서 오는 약간의 불편함 이었다고 생각합니다.  보통 회사의 경우 인간적인 관계의 부분도 중요하지만, 공적인 일을 하는 장소라는 인식을 많이 가지고 있습니다. 소통도 상대적으로 덜할 수 밖에 없죠. 그렇지만 버즈빌은 자유로운 문화를 통해 서로 이야기 하고, 불편한 점을 고쳐나가기에 자유로움이 소통으로 더 극대화 되는 좋은 기폭제가 아닌가 생각하게 합니다.   개인적인 경험으로 미루어보아 말씀드려보자면, Top – down 시스템이 익숙한 회사에서 버즈빌에 조인하셨다면, 약간 업무적응에 힘들 수 있습니다 . 왜냐면, 뭔가 exact한 지시를 하는 사람이 없고, 그 지시를 내릴 수 있는 Level의 분들 중 어떤 분들은 중간관리자로 오신 분들보다관련 경험이 없을 수도 있기 때문입니다.  반대로 본인이 주도적 성격을 가지고 업무를 이끌어가는 분이라면 제 생각에는 이곳만큼 좋은 곳이 없습니다. 버즈빌은 Self-leader를 장려하고, 이러한 role에 대한 서로 존경하는  곳 입니다. 따라서, 본인이 하고자 하는 업무가 명확하다면 CEO와의 대화를 통해 이러한 부분을 구체화하고 이끌어 나갈 수 있습니다.  저의 경우에는 버즈빌 입사와 동시에 Finance System을 구축하고 싶다는 목표가 있었습니다. 물론, 아직 관련 계획을 진행하고 있지는 못하지만, 그 System의 기반이 되는 여러가지 데이터의 정리/분석 등을 통해 한단계 한단계 나아가고 있습니다. 만약 제가 과거와 같이 큰 업체이 있었다면, 저의 의견보다는 윗선의 의견을 수렴하여 프로젝트를 진행하는 Role을 맡고 있었을 것 입니다 . 6. 개인적인 목표나 꿈이 있으신가요? 있다면, 버즈빌에서의 경험이 어떻게 도움이 된다고 생각하시나요? 버즈빌의 많은 분들처럼 저 역시 창업에 대한 꿈이 있습니다. 이 곳에서 아이템에 대해서 말씀 드리기 어려우나 ^^; 개인적으로는 이전부터 하고 싶었던 창업의 아이템이 있어서, 만약 Buzzvil을 퇴사한다면 관련 사업을 진행하고 싶습니다. 그리고 이 사업을 하면서 버즈빌에서 느낀 여러가지 감정 및 업무 경험이 매우 큰 도움이 될 것이라고 생각합니다.  어떻게 살고싶냐는 질문은 매우 철학적인데요. 개인적으로는 많은 고민과 테스트를 하면서 살고 싶습니다. 저는 이전부터 다양한 분야에 관심이 많았고, 그중에서 가장 관심이 많은 부분은 ‘왜 사람들은 저런 생각을 할까’ ‘왜 저런행동을 할까’ 였습니다. 이것은 단순한 심리에 대한 파악이 아니라, 그 사람의 심리를 관통하는 철학은 무엇이고, 그 철학은 어떻게 생성되었기 때문에 그 사람 안에 깊숙히 스며들어 있는가 등 입니다. 좀 지루한 이야기일지 모르겠지만, 이렇듯 사람은 어떠한 철학, 종교에 영향을 받았고, 그 가치가 그 사람의 언어 및 행동 패턴을 변화시켰다고 생각하기에,  그 변화가 지금 그 사람의 문제에 대한 접근방식 및 결론 내는 부분에도 작용한다고 생각하고 있습니다.  따라서, 저는 앞으로 어떻게 살고 싶냐는 질문에, 지금처럼 이러한 것들에 대해서 다양한 고민을 하고, 저의 가설이 맞는지 증명하는 방향으로 인생을 살아갈 듯 합니다. 물론 이러한 고민이 저에게 어떠한 가치(예: 돈)를 줄지는 솔직히 모르겠습니다. 하지만, 나름 저만의 재미있는 세계를 가지고 인생을 살 수 있게 해줄수 있을것 같습니다. 그리고 또한, 행복한 가정을 꾸리고 가족과 함께 평안한 여생을 보내는 것도 제가 꿈꾸는 미래 중 하나 입니다  
조회수 1341

유노윤호마냥 살았던 시간에 대하여(오만가지 알바썰1부)

업무관련된 글을 쓰다보니 여기저기 뭔가 복제된 듯한 글들이 겁나 많아서... 요즘은 브랜딩 어쩌고 하는 글을 잘 쓰고 있지 않습니당. 사실 어쩌면 제 생각도 누군가의 글이나 콘텐츠에서 비롯된 컨트롤씨븨일지도 모르겠단 의구심도 들었구요. 그래서 오늘은 구냥 제 경험담을 주루룩 늘어놓아볼까 합니다. 어느 집이든 사연하나쯤은 다 있기 마련아니겠습니깡. 여차저차 되어서 초등학교 5학년 때부터 일을 하기 시작했습니다. 뭐 그 이후론 나름 혼자 돈 버는 것에 재미를 들려서 자발적으로 알바를 하기도 하고, 생계때문에 일하기도 하고 기타 등등 다양한 이유로 이것저것 재미진 일들을 해봤던 것 같아요. 오늘은 그것들에 대한 이야기입니다!~아련...1. 신문배달제 첫 알바였어요. 초등학교 5학년때 송정리의 한국일보 사무소에서 일했었죠. 한달에 30만원 받았구 200부씩 돌렸답니다. 처음엔 아파트를 돌렸는데 하필이면 엘베에 창문이 뚫린 개무서운 아파트여서 오줌을 지려버릴 뻔 했습니다. 특히 복도식은 코너돌 때 심장의 탄력을 느낄 수 있었어요. 첫 달 월급을 받으려고 사무소에 갔다가 형들에게 흠씬 두둘겨맞고 다 뺏겨버렸던 기묘한 추억이 있습니다. 알았어 알았다고느낀 점 : 신문을 돌리다가 남는 건 간혹 역앞의 택시아저씨들에게 팔기도 했어요. 스포츠신문 하나당 500원에. 그럼 율무차 한잔 뽑아먹고 신문배달 끝나고 스타 한 판 하고 갈 용돈은 벌 수 있었죠. 인생 이렇게 사는건가 싶습니다.2. 현주컴퓨터 설치알바초등학교6학년~중학교1학년때 했던 거예요. 현주컴퓨터를 기억하실랑가 모르겠어요. 여튼 컴퓨터에 기본적으로 스타 브루드워를 깔아주고 DDR매트를 증정품으로 주던 시대였더랬죠. 중1이 다루기에 노턴과 설치유틸은 꽤나 까다로웠는데, 대신 본체 내부 선정리하고 메인보드 갈아끼고 이런건 잘했습니다. 새 컴퓨터가 짠! 하고 부팅되면 기분이가 좋았죠. 월급은 기억 안나네욤..이런거 드리고 그랬음느낀 점 : 기계는 뭐든 배워놓으면 좋습니다.3. 야식집 전단지전 만화그리는걸 엄청 좋아했어요. 진짜 진성덕후였죠. 더쿠들의 방향성은 흔히 일본애니덕, 일본어덕, 희귀작덕, 장비덕 등등으로 나뉘어지는데 저는 그중 장비덕이었습니당. 그러니 돈이 많이 들었을거고, 그걸 충당하기 위해 보미야식집에서 많은 스폰을 받았죠. 보통 2,000장정도 돌리면 3,4만원을 받았습니당. 코픽마카 10개입 이나 최종병기그녀 원화집을 정도를 살 수 있는 돈이었죠. 이걸 사블고 싶었지..느낀 점 : 전단지위에 미리 테이프를 붙여놓고 셋팅해놓으면 초빠르게 돌릴 수 있습니다. 뭐든 미리 조금만 손써놓으면 나중이 편하죠.4. 삼각김밥 공장중학교3학년때 했던것 같아요. 밤9시에 상무지구쪽 어딘가에서 음침하게 기다리고 있으면 봉고차가 와서 절 태우고 갑니다. 봉고차엔 어머님들이 가득하신데, 어머님들의 입담은 진짜 어마어마해요. 밤10시부터 시작해서 아침6시까지 공장에서 일합니다. 그 시간내내 수다가 끊이지 않죠. 보통 수다의 범위는 자식얘기부터 옷과 지구환경까지 아우르기 때문에 범우주적인 인문소양을 필요로 합니다. 공장 내부는 생각보다 매우 깨끗하고 위생적이어서 놀랐어요. 장점이라고 하면 일하는 내내 뭔가를 계속 쭈서먹을 수 있단 점입니다. 어머니들의 이쁨을 받는 것은 덤.삼각김밥느낀 점 : 애교와 칭찬은 많은 것을 가져다줍니다. 5. 이마트 즉석조리 코너이건 고2때 했었어요. 이마트가면 어묵, 족발, 스시, 튀김, 닭강정 이런거 파는 곳 있죠? 네 맞습니다. 그걸 다 만들었죠. 특히 전 잡채, 닭강정, 튀김 등등을 만들었어요. 당면을 다라이에 넣고 소스와 함께 버무리는데 뜨거워 죽어벌임. 하지만 끊임없이 먹을 수 있어서 아주 행복했습니다. 느낀 점 : 무슨 일을 하든 잘 먹어야 즐겁습니다.6. 주유소 알바주유소는 재밌고 심심합니다. 20살때 겨울에 좋은기름이니까 구도일에서 일했었죠.  뭔가 시장통마냥 소리치고 아재들과 노는 건 재미있는 일이죠. 경유와 휘발유만 섞어넣지 않는다면요.  물론 개춥고 석유절임이 된 듯한 냄새는 어쩔 수가 없긴 합니다. 하지만 나름 재밌게 일했어요.느낀 점 : 중립을 모르시는 분들에게 중립을 설명하는 건 어렵더라구요. 중립에 놓으시라구요!!! 중립!!! N!! N!!7. 홀서빙이건 알바의 3대장이라고 할 수 있죠.(주유소, 배달과 더불어) 홀서빙의 매력은 소근소근 메뉴를 고르는 커플의 속삭임을 먼 발치서 듣고 미리 음료준비를 해야한단 점입니다. '자갸, 콜라 하나시킬까?' / '구랭' 이라는 대화를 듣자마자 이미 콜라는 만들어져 있어야 해요.  손님이 머리카락 들었다고 빽시킨 까르보나라를 맛있게 묵었던 기억이 납니다. 느낀 점 : 뭔가를 엎지르거나 와장창했을 땐 멍하지 서있지 말고 빨리 죄송하다고 하고 닦고 치워야 해요.8. 행사장위에서 꽃뿌리기콘서트장 꼭대기에 폭40센치 정도되는 개무서운 철길이 있는데 거기 걸어다니면서 꽃을 손으로 뿌렸어요. 나름 재미있었던 것 같아요. 공짜공연도 보고 말이죠. 물론 공연보느라 헛눈팔면 꽃과 함께 아름답게 비행해버림.느낀 점 : 쉽다..라는 형들의 말이 있었는데, 숙달된 선배들의 말은 대부분 뻥입니다.(지들이나 쉽지..)9. 철거노가다중에서 젤 하기 싫었던 게 철거예요. 젤 즐거운 건 레미콘차 들어올 때 물뿌리는 거구요. 철거는 일하는 내내 철골이나 타카, 각목쪼개진 거에 긁히고 찍히고 개아프고 먼지 마시고 짱힘들어요.... 건물 몇 채는 뿌셨던 것 같아요. 6개월 정도 일하고 나니 이제 요령이 잘 생겨서 신입아저씨들도 가르쳐드리고 했었어요. 아저씨들과 친해지면 목욕탕값도 주시고 그러더라구요.느낀 점 : 점심에 막걸리를 마시는 건 효율을 높여줘요.스팀팩이 이런 기분인가 싶죠. 다만 눈감고도 각목위를 걸을 수 있고, 대충 던져도 벽돌 짝을 맞출 수 있을 때 가능한 얘기예요. 초보들이 괜히 술먹고 일했다간 허벅지에 찔린 콘크리트 대못을 심심찮게 발견할 수 있을 거예요.10. 채권추심아... 이건 사람이 할 짓이 아닙니다. 사람이 사람에게 할 짓이 있고 못할 짓이 있고 그런거지... 전 이 알바를 하면서 자본주의에 대한 희망과 환상을 버렸습니다.느낀 점 : 어떤 일이든 사람이 사람에 대한 애정과 사랑을 바탕으로 해야 의미가 있는 겁니다.11. 콜센터(AIG 사고처리반)교통사고가 나면 일단 뒷목잡고 나와서 보험사에 전화를 하잖아요. 그걸 했었어요. 이게 25살때였나...그랬을 거예요. 보통 보험사에 전화를 하면 상담사 연결하기까지 일단 개느려터진 안내음성을 듣고, 1번누르고 주민번호 앞자리 누르고, 2번 누르고, 0번을 눌러야 하거든요. 지금 사고가 나서 경황도 없고 미치겠는데 2분씩 그걸 듣고 누르고 있으면 저라도 욕이 나올 것 같아요. 그땐 욕을 많이 먹었어요. 전국의 다양하고 기발한 욕설을 경험하며, 나중에 이런걸 책으로 펴봐도 괜찮겠다 싶었죠. 손바닥에 생명손도 조금 길어진 느낌이고..느낀 점 : 음성만으로도 힘이 빠지고 우울증이 생기기도 합니다. 양파에게 욕하면 시들어 죽는다는 말이 괜찮게 아니더라구요. 사람은 분명히 환경의 동물입니다.12. 카페에서 커피만들기28살때 했었던 것 같아요. 사업망해서 말아먹고 돈 없어서 약 6개월가량?...눈물을 머금고 일했더랬죠. 커피향을 즐기며 우아하게 일할 것 같지만 실제론.. 하루에도 라떼 테이스팅한다고 우유를 3통씩 마셔대는 통에 하루라도 주룩주룩을 안한날이 없었어요. 특히 사람들이 몰리는 아침8시반과 오후1시엔 일일이 레시피 재가며 만들 시간이 부족하더라구요. 그럴 땐 대강 따라도 40cc가 나올 수 있게 연습을 해주는 게 필요했어요. 느낀 점 : 지식보다 손이 더 빨라요. 뭔갈 알았으면 머리에 담아두지 말고 손한테 인수인계하세요.13. 스키장 제설알바스키장엔 다양한 알바가 있고 보통 늦가을이나 초겨울쯤에 모집해서 우르르 들어가요. 여러가지 파트가 있는데, 그 중 돈을 많이 주는 곳이 제설쪽이더라구요. 돈을 많이 주는 데는 다 이유가 있는 것이었어요. 군대에서도 이정도로 눈이 싫진 않았는데, 진심 자다가 눈떴는데 하얀 천장만 나와도 경기들릴 것 같은 시간이었습니다.하아....느낀 점 : 에버랜드 알바도 그렇듯, 에버랜드는 재미있지만 그곳에서 일하는 사람들까지 재미있진 않습니다. 게다가 각 부서별의 격차는 상상이상이죠. 일은 환상이 아니더라구요. (여행회사 간다고 항상 재미있지 않은 것과 같음)14. 계단청소빌라돌아다니면서 청소하는 거예요. 왜 그 청소하는 날 해서 수요일 화요일 이렇게 적혀있잖아요. 그럼 가끔 아저씨나 아주머니들이 오셔서 쓸고 닦고 난간 왁스칠하고, 모서리 닦고 하는 그거예요. 열심히 돌아다니면서 지도에 표시된 빌라를 돌아다니며 청소를 해요. 약 3,4개월 조금 넘게 했던 것 같은데 세상 재미없어요.느낀 점 : 재미는 없지만 하다보면 또 뭔가 늘긴 해요. 이렇듯 숙달과 성장은 다른 얘기예요.15. 택배상하차아냐, 안돼, 하지마 돌아가.느낀 점 : 도망쳐16. 매장오픈사실 전 23~4살때 아디다스에서 옷과 신발을 팔았지만, 가끔 신규매장 오픈할때 오픈지원을 가기도 했어요. 한달에 한 번정도였죠. 여주아울렛, 롯데월드점, 가든파이브점, 부천 등등을 오픈했는데 보통가면 일단 청소까진 되어있고, 선반과 집기들이 들어와요. 그리고 윙탑으로 박스5백~2천개 정도가 들어오거든욤. 그럼 그거 다 내려서 까대기하고 사이즈정리하고 DP용 빼고, 엑셀에 수량정리하고 국밥먹고 쓰러지는 그런 일정이예요. 주로 밤9시에 투입되서 밤새 진행하고 오전에 MD이 이렇게 옮겨라 저렇게 옮겨라 하면 다시 배치하고 그런 식이예요. 일은 엄청 힘들었지만, 사실 지금도 좀 그립긴 해요. 깨끗하게 정리된 매장과 창고를 보면 아주 뿌듯하거든요(정리변태인지라..)느낀 점 : 아까 그 박스 못봤어? 라는 질문에 대답할 수 있어야 해요. 일에 있어서 가장 중요한 건 내 일이 아니어도 관찰할 수 있는 능력이죠.에어컨설치디스크형 에어컨을 설치하는 일이예요. 특히 큰 건물은 시스템에어컨으로 움직이잖아요. 천장에 삽입되는 형태의 에어컨을 디스크형이라고 하는데 고녀석을 박아넣고 배선을 연결하는 거예요. 유격훈련받을 때 목봉들고 와리가리하는 그런 얼차려를 받은 적이 있는데 딱 그 느낌이랄까요. 겁내 무거운 디스크형 에어컨을 목과 팔로 받히고 있어야 하는데, 이대로 내 목이 부러지진 않을까 싶지만 부러지진 않습니다.눈에 석면 들어감...느낀 점 : 구리선은 어떻고, 스틸선은 어떻고, 이건 배수관이고 이건 보온재를 씌워야 하고 등등... 아저씨들이 알려주시는 걸 가만히 듣고있다보면 새로운 세계를 볼 수 있어요. 우리가 당연하게 여긴 것들이 사실은 어떤 이들의 지식과 노하우로 만들어졌단 사실에 경외심마저 들죠.1부는 여기서 마무리 짓도록 하겠숩니다. ㅋㅋㅋㅋ 2부에서 못다한 일들로 또 돌아올께욤.
조회수 1183

[바풀] 보노보노들을 위해

나는 학교 다닐 때 한 번도 과외를 받아본 적이 없다.일대일로 누군가에게 무언가를 배우는 행위가 '과외'라면 - '과외'의 사전적 정의는 '정해진 과정 이외에 하는 공부'이긴 하다 - 열아홉에서 스무 살로 접어들 때 실용음악학원에 가서 드럼을 배웠던 것이 전부다.대신 가르치는 일은 여러 번 해봤다. 대학생 때는 주로 중고등학생 과외를 했고, 휴학하고는 학원에서 초중생을 가르쳤다. 첫 번째 직장을 관두고 그다음을 위해 공부를 할 때도 초등학교 방과후교사를 하면서 아이들을 가르쳤다. 전문가가 아니었고 전업 교사도 아니었다. '가르치는 일'에 대한 사명 때문이기보다는 '내가 할 수 있는 일 가운데 오랜 시간을 투자하지 않고 돈을 벌 수 있는 일'이기 때문에 했다는 사실을 부정할 수 없다. 그렇다고 해서 수업도 대충 한 건 아니다. 시작한 계기가 무엇이든 간에 내가 무언가를 알려주고 설명했다면 상대방이 그것을 알아듣고 이해해야 의미가 있으니까 열심히 했고, 성의를 다했고, 특별히 더 많은 관심과 더 자세한 설명이 필요한 아이들에게는 어떻게 더 가르쳐줘야 할지를 고민했었다.그렇다고 해서 그 일이 적성에 맞는 건 아니었다. 과외보다는 학원이나 방과후학교에서 여럿을 한꺼번에 가르쳐야 할 때 더 힘들었는데, 아이들을 하나하나 붙잡고 가르쳐줄 수 없다는 점이 특히 그랬다.십 수명의 아이들이 일제히 나 하나를 보고 있고, 특정 문제를 설명하는 사람은 나 하나에 내가 설명하는 방식도 일단은 하나인데, 아이들의 표정을 살펴보면 어떤 아이는 이미 설명이 끝나기도 전에 알아 들었지만, 대부분의 아이들은 설명이 끝나도 여전히 알아듣지 못한 것이 명백했다. 그렇다고 해서 마지막 한 명이 알아들을 때까지 다르게 설명하고 반복해서 설명하는 건 불가능하다. 이미 알아들은 아이들이 있기 때문이다.당시 본래 학년보다 한 학년 낮춰 방과후수업을 듣는 남자아이가 하나 있었는데, 특히 기초가 많이 부족해서 다른 아이들이 문제를 스스로 풀어보는 동안 최대한 일대일로 설명도 해주고 해 봤지만 한계가 있었다. 나름대로는 할 수 있는 걸 다 했는데도 아이가 여전히 모르고 있다는 사실을 깨달았을 때는 사실 기운이 좀 빠졌다. '내가 이만큼 설명했는데도 모르다니!'의 의미가 아니라, '아, 이 친구는 앞으로 점점 더 어려워지겠구나...' 하는 안타까움 때문이었다. 따로 붙잡고 정말 인내심 있게 처음부터 하나하나 가르쳐주지 않으면 일반적인 수업을 전혀 따라갈 수 없을 텐데, 그럼 점점 더 교실에 앉아 있는 시간이 괴롭겠구나 하는 생각이 들어 안타까웠다. 그럼에도 불구하고 나는 점점 더 그 아이에게 할애하는 시간을 줄여가고 있었다. 끝까지 책임져 줄 수 없었기 때문에 포기하고, 다른 아이들에게 하나라도 더 알려주자는 마음을 나도 모르게 먹었던 것 같다.이제는 더 이상 누군가를 가르치는 일을 하지 않는다. 남은 것은 이제 배우는 일뿐이다.그런데 세상의 모든 일은 조금씩 연결이 돼 있는 건지 - 그렇다고 믿는다 - 지금 하는 일도 예전의 그 경험들과 무관하지 않다. 내가 일하고 있는 회사 바풀은 에듀테크 기업이다. 에듀테크란 교육에 기술을 접목한 것이고, 교육의 문제를 기술로 풀어나가는 것이다. 요즘 보면 기존에 오프라인이나 PC로 하던 것을 고스란히 모바일로 옮기기만 하고도 에듀테크라는 이름을 부여받는 경우도 있지만, 진짜 에듀테크는 새로운 기술로 새로운 방식의 공부방법을 제시하고 그를 통해 궁극적으로는 교육문화를 바꿔나가야 할 사명이 있다고 믿는다.바풀은 2012년 3월 바로풀기라는 공부질문앱을 출시해 지금까지 무료로 운영해오고 있고, 올초에는 바로풀기에도 곧 적용될 '문자인식(OCR | Optical Character Recognition)' 기술을 활용해 영어 지문을 촬영하면 사전 검색을 해서 자동으로 단어장을 만들어주는 바로단어장을 내놓기도 했다.그리고 지난 3월 말부터는 바풀공부방이라는 채팅과외앱을 서비스하고 있다. 바풀공부방이 나오기 전에도 과외앱들은 많았지만 기존의 과외앱들은 크게 2가지로 나뉜다.- 과외를 중개해주는 앱- 동영상 강의를 시청취하는 앱과외를 중개하는 앱은 정확히는 과외중개앱이라고 불러야 하고, 동영상을 서비스하는 앱은 비록 그것이 맞춤 동영상이라고 해도 과외라 부르기에는 무리가 있다. 과외를 하는 이유는 일대일로 쌍방향 대화를 통해 배울 수 있기 때문이다. 그런 의미에서 바풀공부방은 우리나라에서는 현재 유일한 진짜 과외앱이다. 학생들이 실제로 앱에서 과외를 받기 때문이다.앱에서 어떻게 과외를 받을까?카톡 하듯이 채팅으로 한다.학생 - 공부하다가 모르는 문제가 나오면 사진을 찍어 공부방 채팅창에 올린다.선생님 - 풀이해주고 필요한 개념을 설명해준다.(곧바로 터치펜을 이용해 풀거나 노트에 풀이해 사진을 찍어 공유하는 방식)학생 - 설명을 들어도 잘 모르겠다면 또 질문한다.선생님 - 설명을 해도 모르는 건 관련 개념이 부족한 거니 관련 개념을 설명한다.학생 - 설명을 듣다 보니 그 설명 중에 또 모르는 부분이 생긴다.선생님 - 이렇게 설명해서 못 알아들으니 저렇게 설명한다.학생 - 이제 알겠다고 생각해서 알겠다고 한다.선생님 - 일단 알겠다고 하고 보는 학생도 많이 만나봤으니 정말 아는지 응용문제를 내준다.학생 - 정말로 푼다.이런 식이다. 물론, 완전히 이해한 게 맞는지 확인하려고 제출한 응용문제를 못 푼다면 다시 이전 단계로 돌아가게 된다. 그래서 경우에 따라서는 한 문제를 완전히 푸는데 한 시간이 넘게 걸리기도 한다.더구나 채팅이기 때문에 일방적으로 수업이 진행될 수가 없다. 카톡을 생각해보면 상대방이 메시지를 확인하지 않는다거나 읽고도 대답하지 않는데도 혼자서 대화를 하는 것이 불가능하다는 사실을 쉽게 알 수 있다.간혹 이렇게 설명하면 글자를 언제 다 치고 있어? 라고 말하는 분들이 있는데, 요즘 학생들은 생각보다 채팅을 훨씬 더 편하고 익숙하게 사용한다. 수학의 경우는 텍스트보다는 그림이 더 많기도 하고.선생님들은 누굴까?교재가 없어도 수업이 가능하다면 말 다 한 것 아닌가.바풀공부방이 기존 과외와 다른 점은 정해진 교재가 없다는 점이다. 학교든, 학원이든, 심지어 과외도, 대개는 교재를 정해놓고 진도를 나가는 방식으로 수업을 한다. 진도는 대개 가장 늦게 따라오는 학생이 아니라 가장 잘 따라오는 학생, 많이 양보해도 웬만큼 따라오는 학생들을 중심으로 나간다. 혹은 전체 목표를 정해놓고 무조건 쪼개서 조금씩 나간다거나.하지만 바풀공부방은 대부분의 학생들이 공부하다가 모르는 문제가 생기면 질문을 하는 것에서 시작한다. 학교나 학원에서 배웠지만 혼자서 다시 문제를 풀어보니까 잘 모르겠다 싶은 것, 바로 지금 궁금한 것을 질문한다. 그러면 선생님 입장에서는 이거 난감하다. 언제, 어떤 질문을 할지 모르는 상태에 웬만큼 준비가 돼 있어야 하니까.천재 수학자도 풀지 못하는 문제가 있다는데, 바풀공부방 선생님들은 어떻게 이 상황에 대처가 가능하냐면 경험이 풍부하기 때문이다. 중고등학교 수학 문제는 대개 유형이 있다. 처음 접하는 문제라도 비슷한 유형을 많이 가르쳐봤다면 웬만큼 소화할 수 있다.바풀공부방 선생님들은 대학생이 거의 없고 대부분 전현직 학원 강사이거나 현재 공부방을 운영 중인 공부방 원장이거나 오랜 기간 교직에 몸담았던 퇴직교사이거나 교사 자격증까지 따고도 출산과 육아로 경력이 단절된 경단녀로 이루어져 있다. 짧게 하고 관둘 가능성이 적은, 전업/전문 선생님들인 거다.써본 학생들의 반응은 어떨까?화 안 내고 친절한 선생님을 그토록 원했을 줄이야.서비스 초기 학생들의 반응을 보며 의외였던 것 중 하나가 '선생님이 정말 친절해서 좋아요' '계속 질문해도 화 안 내고 끝까지 자세하게 설명해주니까 계속 질문할 수 있어요'였다. 사실 우리는 내심 '스마트폰으로 하니까 정말 편해요', '내가 원하는 시간에 할 수 있어서 좋아요' 같은 반응이 훨씬 더 많을 거라 생각했는데 학생들의 만족도를 표시하는 키워드는 '친절'이었다.이런 반응은 그동안 중고등 학생들이 '선생님이 불친절하다'라고 느껴왔거나 '선생님은 불친절할 것이다'라고 예상해왔거나 '선생님이 화를 내지 않을까' 불안했다는 것을 뜻하는 것이다.이렇게 쉬운 걸 물어봐도 되나?이렇게 쉬운 걸 물어본다고 다른 사람들이 흉보지 않을까?선생님이 바빠 보이시는데 자꾸 물어봐도 되나?지금쯤이면 이해가 안 돼도 이해되는 척해야겠지?이렇게 설명 듣고도 이해 못하면 선생님이 화내시겠지?그런데 채팅으로 질문하니까 일단 선생님의 표정이 보이지 않으니까 눈치 보지 않고 얼마든지 물어볼 수 있고 물어보면 물어보는 대로 자세하게 설명해주시니까 학생들의 만족도가 높을 수밖에 없는 것 같다. 서비스 시작한 지 이제 100일 정도 됐는데 4주 수업 재결제율이 무려 83%에 이른다.내가 다니는 회사이기 때문에, 나에게 월급을 주는 회사이기 때문에 이러고 있는 게 아니다. 그냥 시간 때우고 돈 벌러 다니는 회사라면 이런 글을 쓰지 않을 것이다. 나는 진심으로 우리 서비스가 잘 되면 학생들이 좀 더 행복해질 수 있을 거라고 믿는다.공부에 관심이 없고, 공부가 하기 싫은 사람은 공부를 안 하고 다른 걸 찾아서 하면 된다.하지만 공부를 하고 싶고, 잘 하고 싶은데 도와주는 사람이 없거나, 제대로 도움을 받을 만한 형편이 안 되는 학생들에게는 누군가 있어줘야 하지 않나? 근데 학원은 완전한 해결책이 아니고, 일반적인 과외는 너무 비싸니까 그렇다면 누구나 웬만큼 만만하게 써볼 수 있는 교육 서비스가 있어야 하지 않나? 그런 생각으로 회사에 다니고 열심히 일한다.예나 지금이나 결국 공부는 누가 대신해줄 수 없는 게 맞다. 어차피 혼자서 외롭게 해야 할 싸움이라면 제대로 할 수 있도록 도와줄 사람이 필요하다. 얼마간 잘 도와주면 언젠가부터는 혼자서도 잘 간다. 모든 걸 다 알게 되는 것이 아니라, 모르는 걸 어떻게 공부해야 할지를 알게 되는 것이다.#바풀 #경험공유 #보노보노 #조언 #인사이트 #기획 #마케팅 #운영 #성장
조회수 1335

아마존 후기를 확보하려면

안녕하세요 대한민국 셀러들의 성공적인 아마존 진출을 도와주는 컨설팅 회사이자 대행사인 컨택틱의 이이삭 대표입니다.아마존에서 후기를 확보 하는 것은 굉장히 중요한 일입니다. 대부분의 고객들은 구매를 한다고 해도 한 개 조차 남기는 경우가 상당히 드뭅니다. 확률상, 100개의 주문 중에서 후기가 1개 생길까 말까 하는 정도입니다. 이 문제를 해결하기 위해서 많은 아마존 셀러들은 사람들은 자동 이메일 발송 프로그램의 도움을 받고 있고, 프로그램을 사용하지 않는 사람들은 구매자 한 명 한 명에게 일일이 이메일을 수동적으로 보내서 후기를 남겨달라고 재촉하기도 합니다. 당연히 수동적으로 이메일을 일일이 보내다 보면 인력적 제한이 생길 수밖에 없고 굉장히 번거롭게 됩니다. 따라서 아마존에서 본격적으로 판매를 하시는 분들은 거의 대부분 자동 이메일 프로그램 세팅을 합니다.하지만 과연 자동 이메일 발송 프로그램이 만능일까요? 과연 이런 프로그램을 세팅한다고 해서 후기가 순식간에 쌓일까요? 과연 그런 이메일을 받는 모든 이들이 후기를 기꺼이 남겨줄까요? 절대 아닙니다. 자동 이메일 발송 프로그램을 세팅하는 아마존 셀러 여러분은 반드시 아래 3가지 포인트를 숙지해야할 것입니다.첫째로, 주문한 고객에게 보내는 첫 번째 이메일 시퀀스(이메일 내용)에는 절대로 후기를 남겨달라는 내용을 언급해서는 안됩니다. 여러분이 만약 고객이라고 생각해보시기 바랍니다. 제품을 받고 만족할 수도 있고, 얼마든지 불만족할 수도 있습니다. 그리고 아직 후기를 남기지 않은거라면 단순히 시간이 없어서 후기를 안남긴 것일 수도 있고, 후기를 남기는 행위 자체가 귀찮아서 안남긴 것일 수도 있습니다. 그런 상황 속에서 판매자가 여러분에게 ‘첫 번째로 보내는 이메일 내용’으로써 “별 5점짜리 후기를 남겨주세요!” 라고 얘기한다면 당연히 반갑지는 않을 것입니다. 뭔가를 바라고 접근한 것처럼 보이는 그런 이메일은 그 누구에게도 환영받지 못하는 이메일이 됩니다. 이메일을 보낼 때에는 정말 고객에게 사심 없이 다가가는 말로 인사하는 것이 올바른 자세입니다.두 번째로, 고객과 인간적인 관계를 형성해야 합니다. 솔직히 놓고 보겠습니다. 당연히 여러분은 고객으로부터 후기를 얻는 게 최종 목표이며, 그런 의도를 가지고 이메일 팔로우업을 하는 것입니다. 하지만, 그 목표를 달성하기 위해서는 먼저 고객과 인간적인 관계를 형성해야 합니다. 고객이 주문한 순간부터, “구매해주셔서 감사합니다!” 그리고 제품이 도착했을 즈음에 “제품 잘 받아보셨나요? 배송 중에 문제 없으셨나요? 제시간에 도착했나요?” 그리고 배송이 완료된 이후 1주일 정도 지났을 시점에 “제품이 만족스러우셨나요? 제가 도와드릴 수 있는 게 있을까요?” 라고 물어보는 것이 순서입니다. 이렇듯이, 갑자기 등장해서 “후기를 주세요!” 라고 하는 게 아니라, 고객이 주문을 넣는 순간에서부터 그 여정이 시작 되는 것입니다.세 번째로, 자동 이메일 발송 프로그램의 진정한 올바른 사용법은 ‘주문을 한 고객들에게 일단 인사하는 용도’로 사용하는 게 맞는 것입니다. 고객이 이메일에 대한 회신을 할지 안할지도 모르는 상황에서 모든 고객에게 각각 인간적인 이메일을 수동적으로 하나하나 쓸 수 없습니다. 그렇기 때문에 위 두 번째 요점에서 언급한 것처럼, 주문 과정에 따라 자동 이메일 템플릿을 만들고, 그 과정 속에서 실제로 회신을 하는 고객들과 진정한 소통을 하는 것입니다. 이 때 진정한 소통이라 함은, 어쩔 수 없이 여러분 또는 여러분의 직원들이 실제로 이메일 하나하나 사람이 직접 이메일 회신을 하는 것을 말합니다. 이메일 회신에 대한 양식 조차도 프로그램의 힘을 빌리면 어쩔 수 없이 인공적인 느낌이 들 수밖에 없기 때문입니다.마지막 보너스를 하나 더 드리겠습니다. 후기를 남기고 안남기고를 떠나서, 지속적인 관계를 유지하기 좋은 방법은, 마치 제가 지금 여러분들을 위해서 이런 좋은 팁을 준비하고 공유하는 것처럼, 여러분 또한 여러분의 상품에 맞는 ‘e-book’ 또는 ‘꿀팁’ 관련 컨텐츠를 자동 이메일 발송 프로그램으로 고객들에게 보내주는 것 또한 좋은 방법입니다. 만약 주방 용품을 판매하는 셀러라면, 고객들에게 ‘요리’에 대한 e-book이나 요리 팁을, 만약 화장품을 판매하는 셀러라면 화장 방법이나 피부 관리 노하우를… 이런 식으로 고객들과 꾸준한 관계를 유지하는 것입니다.인간의 심리상 만족했을 때보다 불만족했을 때 후기를 남기는 경향이 높습니다. 만약 제품 자체에는 불만을 품고 있는 고객이라도, 아직 후기를 남기지 않은 ‘지금’을 잘 활용해서 고객의 소리를 듣고, 고객들을 응대하여, 발생했을 수도 있었을 악성 후기를 미연에 방지하는 것이 매우 중요하다고 볼 수 있습니다. 컨택틱의 모든 교육은 파트너인 글로벌셀러창업연구소와 접수하고 진행합니다. 교육 신청은 아래 링크나 글로벌셀러창업연구소의 홈페이지를 통해 접수 가능합니다.오프라인 아마존 입문 과정오프라인 아마존 기초/심화 과정온라인 아마존 입문 과정그럼 오늘도 즐거운 글로벌 셀링 되세요!감사합니다.컨택틱서울특별시 서초구 서초대로 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
조회수 886

아마존 소싱할때

안녕하세요 대한민국 셀러들의 성공적인 아마존 진출을 도와주는 컨설팅 회사이자 대행사인 주식회사 컨택틱의 이이삭 대표입니다.PL로 판매할 아이템을 정한 뒤에, 이제 이걸 만들어줄 제조사를 찾고 계신 여러분 - 여러분은 제조사와 거래하고 싶습니까, 무역회사와 거래를 하고 싶습니까? 아마 이 질문에 대답하는 10명 중 8~9명은 ‘제조사’라고 답할 것입니다. 그러면 사람들이 ‘왜’ 무역회사가 아니라 제조사랑 거래를 하고 싶어 할까요? 그야 제조사와 직접 거래하는 게 더 유리하다고 생각하기 때문일 겁니다. 하지만 솔직히 말씀드리자면 둘 중 어떤 게 더 뛰어나다고 말하기엔, 저는 개인적으로 둘 다 각각의 장단점이 있다고 생각합니다.먼저, 제조사와 거래를 하는 것은 대표적으로 3가지 장점이 있다고 볼 수 있습니다.낮은 공급가: 중간다리 없이 제조업체와 직접 거래할 수 있다는 장점이 있습니다.투명성: 문제가 발생할 경우, 제3자를 경유하지 않고, 당사자들끼리 깔끔하게 문제를 해결할 수 있다는 장점이 있습니다.신뢰를 기반으로 하는 부수적인 이점: 제조사와 직접 거래한다는 것은, 결국 그들과 장기적으로 신뢰를 쌓는 것이 됩니다. 그러면 인간적인 관계를 기반으로 더욱 낮은 단가를 협상할 수도 있을 것이며, 제조사 측에서는 내 상품을 제조할 때 조금 더 신경 써줄 수도 있고, 다방면에서 상대방과 나의 비즈니스 관계를 더욱 두텁게 할 수 있다는 장점이 있습니다.그럼 반대로, 무역회사와 일을 할 경우 어떤 장점들이 있을까요?Photo by Felix on Unsplash시간 절약: 나를 대신해서 소싱을 해주기 때문에 편리하다는 장점이 있습니다.직접 찾지 못했을 제조사들을 찾아내는 기술과 경험: 알리바바에서 모든 중국 제조사들을 조회할 수 있는 것은 아닙니다. 기술은 좋지만, 수출 라이선스가 없어서 어쩔 수 없이 무역회사의 힘을 빌리는 제조사들도 꽤 많이 존재합니다. 뛰어난 무역회사는 이러한 제조사들을 모색해주는 장점이 있습니다.수월한 소통: 대게의 경우, 무역회사는 영어에 능통합니다. 제조사와 직접 얘기를 나누는 것보다, 무역회사랑 이야기를 나누고, 무역회사가 현지 언어로 제조사에게 내용을 전달하는 것이 오히려 나을 때가 있다는 장점이 있습니다.여러분들의 상황에 맞게 장단점을 잘 고려하여 소싱 할 때 제조사와 직접 거래할지, 믿을 수 있는 무역회사의 손을 빌릴지 고민해보시기 바랍니다.컨택틱의 모든 교육은 파트너인 글로벌셀러창업연구소와 접수하고 진행합니다. 교육 신청은 아래 링크나 글로벌셀러창업연구소의 홈페이지를 통해 가능합니다.오프라인 아마존 입문 과정오프라인 아마존 기초/심화 과정온라인 아마존 입문 과정그럼 오늘도 즐거운 글로벌 셀링 되세요!감사합니다.컨택틱서울특별시 서초구 서초대로 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
조회수 1343

잉여와 SW 개발의 관계...

IoT의 관점과 함께 최근에 주목을 받는 시계열 DB들이 있다. OpenTSDB나 인플럭스 DB, Graphite와 같은 것들이다. 신기한 것은 최신의 기술이나 플랫폼이라고 불리는 것들은 국내에서는 거의 등장하지 않는다. 대부분 미국이나 유럽, 이제는 중국이나 러시아에서 등장한다. 물론, 일본에서는 새로운 언어도 많이 등장했다.집안의 전기 사용량을 측적하건, 공기 측정이 되었건 1초에 한번 측정하는 센서에서 만들어지는 데이터를 자세하게 분석하려면 이 데이터를 수집하고 모아야 한다. 그리고, 최소 연단 위 정도는 모아서 무언가를 분석하거나 추이를 살펴보아야 할 것이다.더군다나, 센서가 하나가 아니라 여러 개 라면 모여지는 데이터의 량은 상당할 것이다. 기존의 RDB에 축적하는 것은 이런 경우에 좀 맞지 않는다. 데이터가 계속 용량을 늘려나가는 구조이기 때문에 NoSQL형태의 데이터 스토어를 생각하게 된다. 코치이건 하둡이건 몽고이건 여러 가지가 생각난다. 실시간으로 추적 분석하려면 Apache Storm이나 spark도 생각날 것이다.일단, 센서가 시간의 추이에 따라서 데이터를 모으는 형태에 적합한 시계열 DB에 적합한 방법들에 대해서 나름 적합한 형태로 개발되는 구조를 가진 DB들을 어렵지 않게 찾아볼 수 있다. 이 글 가장 앞에 언급한 것들이다.관련 자료를 찾아보고 싶으면, OpenTSDB는 http://opentsdb.net , InfluxDB는 https://influxdb.com을 찾아보라. 나름 매력적으로 시계열 형태의 데이터를 모으기 좋은 구조로 디자인되는 설루션을 만날 수 있다.오늘 글에서 언급하고 싶은 것은... 이러한 특정 요점에 맞는 설루션들이 왜? 국내에서는 나타나지 않는가에 대해서 끄적거려 보고 싶어서이다. 과연, 이러한 태도와 행동, 행위가 특정 개발자의 탁월함 때문일까? 아니면, 국내에 있는 개발자들이 게으르고, 자신의 이익만을 위해서 일하는 것 때문일까?삐딱한 아키텍트는 그 부분을 이렇게 해석한다.하나. 잉여가 없는 부가가치가 적은 일을 매번 수행하는 국내의 경영자들의 문제.둘. 반복적인 작업이나 자신의 일의 미래에 대해서 큰 관심 없는 개발자의 자세셋. SI형태로만 진행되는 국내 프로젝트이기 때문에 만들어진 플랫폼이나 유틸리티 성의 서비스를 외부에 오픈하지 못하는 경우가 빈번함.이 3가지의 가장 큰 이유 때문에 국내에서는 특정 용도나 특정 의미의 환경에 잘 어울리는 설루션들이 오픈소스로 발전되고, 더 넓게 쓰이는 플랫폼까지 진화하지 못한다고 생각한다. 하나씩 나름대로 이유를 이야기해보자.하나. 잉여가 없는 부가가치가 적은 일을 매번 수행하는 국내의 경영자들의 문제일단, 부가가치가 높은 소프트웨어나 서비스를 개발한다면, 적절하게 배분되어진 팀과 일정, 부가가치가 높기 때문에 피드백을 통해서 품질을 높이기 위한 시도들이 반복되어진다. 하지만, 대부분 1회성으로 끝나거나, 단기적인 일거리를 해결하기 위해서 소프트웨어를 개발하는 경우가 대부분이기 때문에 사소한 잉여도 발생하기 어렵다.고품질을 지향하는 소프트웨어 개발을 추구한다면 매우 당연하게 잉여시간과 잉여 일정, 잉여인력이 투입되는 것이 정상이다. 매우 당연하게 소프트웨어 개발자들은 게으르기 때문에 반복적인 일을 싫어하고, 게으르기 때문에 소프트웨어의 품질을 높이기 위해서 공을 들인다.이런 게으른 소프트웨어 개발자들이 품질 높이기를 포기하는 이유는 간단하다. 그 소프트웨어가 재사용될 가능성이 거의 존재하지 않고, 또다시 요구사항에 따라서 난도질을 해야 하는 경우에 품질 높이기를 시도하지 않는다.결론적으로 소프트웨어 개발자들이 고품질을 만들지 않는 이유는 처음부터 비즈니스 기획과 부가가치에 대한 이윤과 투입되는 비용에 대해서 잘못된 비즈니스 모델을 만든 기획자나 경영자가 그 책임을 져야 한다. 물론, 그런 환경을 주었더라도 잘못된 개발자를 뽑은 '인력관리'의 미스에 대해서도 그 역시... 경영자가 책임져야 한다.대부분 고품질의 소프트웨어가 나타나지 않거나, 잉여가 만들어지지 않는 이유는 경영자가 미 숫하고, 비즈니스 모델을 잘못 디자인해서 그러하다.둘. 반복적인 작업이나 자신의 일의 미래에 대해서 큰 관심 없는 개발자의 자세하지만, 경영자의 잘못과 거의 비슷한 수준의 개발자의 관심 없는 자세인 경우가 문제가 되는 경우도 많다. 잉여가 주어졌음에도 빈둥거리거나, 자신만의 놀이를 위해서 그 시간과 비용을 투자하는 경우도 간혹 있다. 하지만, 필자가 만나본 대부분의 개발자들은 그런 자세가 된 소프트웨어 개발자의 행태 또한 그 소프트웨어 개발자가 걸어온 그 전회사의 경영자의 문제라고 지적하고 싶다.반복적인 일을 줄이고, 미래의 코드에 대해서 신경 쓰는 자세는 소프트웨어 개발자가 기본적으로 갖추어야 하는 자세임에도 불구하고, 이러한 자세를 파괴하는 형태의 업무 구조와 생각 자체를 파괴하는 형태로 일을 구성하는 경영진과 같이 일한 개발자들은 슬프게도 잉여를 빈둥거리게 하는데 익숙하게 된다.필자가 개발자 구인 시에 가장 주목하고, 관심을 가지면서 걸러야 하는 개발자는 그러한 회사를 거쳐왔거나 그러한 프로젝트에 매몰되었던 사람들은 피하는 것이다. 한번, 그런 자세가 파괴된 개발자는 다시 자세를 정상으로 복구하는데 엄청난 리소스와 시간이 투입된다.냉정한 사람들이라면 이러한 사람들을 '동료'로 받아들이는 것을 싫어할 것이다.셋. SI형태로만 진행되는 국내 프로젝트이기 때문에 만들어진 플랫폼이나 유틸리티 성의 서비스를 외부에 오픈하지 못하는 경우가 빈번함.슬프지만, 3번째의 경우가 사실은 한국에서는 50% 이상 의미 있는 형태로 개발되었음에도 불구하고, 사장되거나 외부에 노출될 수 없는 형태가 되는 경우를 빈번하게 경험했다. 필자 역시, WebService개발 초기에 3 Tier개발에 어려움을 겪는 개발자들을 위해서 SQL 문장을 그대로 WebService에서 CRUD형태로 전송하고 데이터셋과 DB커서를 2 Tier의 형태로 손쉽게 개발할 수 있는 플랫폼과 컴포넌트를 개발했지만, 이 역시, SI에 종속된 결과물이 되면서 외부에 오픈할 수 없는 경우가 되는 것을 빈번하게 경험했다.슬프지만... 이 3가지의 큰 이유 이외에도 '잉여'가 없는 개발 일정이나 개발자에게 여유가 없어지면서, 정말 더럽게 재미없는 소프트웨어 개발이 반복되는 경우를 많이 보았다. 하지만, 필자의 경험은 그럼에도 불구하고 개발을 총괄하고 있다면, 자신의 팀에 있는 개발자에게 약간의 잉여와 고품질을 위한 리소스에 대한 배려를 취하면서 동료직원이 오픈소스를 창출하거나 외부에 오픈할 수 있는 정도의 다듬는 여유를 만들어 줄 수 있다고 생각한다.가장 훌륭한 CTO나 개발 총괄의 역할은 그 시간을 정말 즐겁다고 생각하는 동료 개발자에게 약간의 잉여와 여유를 허가하는 것이며, 그 잉여가 결론적으로 자신이 속한 개발 조직의 효율이 향상되고, 개발 문화가 부드러워지는 아주 의미 있는 개발 조직으로 완성되어가는 첫 번째 단추라는 것을 알기를 바란다.현재 훌륭한 개발 조직일수록, 카페와 같은 공간만을 만드는 것만으로 끝나는 것이 아니라, 개발 공정이나 개발 프로세스 상에 리뷰와 의미 있는 문서화 작업, 피드백과 리팩터링과 같은 시간을 배분하는 이유도 그 때문이라는 것을 잊지 않기를 바란다.훌륭한 하드웨어 적인 공간 위에 재미를 추구하고 의미를 추구하는 잉여가 존재하는 개발 공정을 탑재한 개발 조직이야말로 성공할 수 있는 전제조건을 하나 더 갖춘 곳이라는 것을...
조회수 832

[Buzzvil People] Jin Yoon, Product Manager

 Buzzvil People에서는 다양한 배경과 성격 그리고 생각을 지닌 버즈빌리언들을 한 분 한 분 소개하는 시간을 갖습니다. 어떻게 버즈빌에 최고의 동료들이 모여 최고의 팀을 만들어가고 있는 지 궁금하시다면, 색색깔 다양한 버즈빌리언들 한분 한분의 이야기가 궁금하시다면, Buzzvil People을 주목해주세요.1. 간단한 자기 소개 부탁드립니다. 안녕하세요. 버즈빌의 여러 Product 중 하나인 버즈스크린(BuzzScreen)을 담당하고 있는 Product Manager, Jin 입니다. 요즘에는 사무실에서 알파카 or 라마를 닮았다는 흉흉한 소문이 퍼지면서 이름 대신 불리기도 합니다. 첫 사회생활은 Oil & Gas industry의 한국 대기업에서 시작했습니다. 쉽게 얘기하면 세계 곳곳 석유가 묻혀있는 곳에 그 석유를 캐내고 정제하는 공장을 지어주는일이죠. 몇억 불에 달하는 프로젝트 전반을 관리하는 Project Management가 저의 role이었습니다. 그 후에는 모바일광고, pet food ecommerce, 음식 배달 등 한국/미국의 작은 스타트업에서 일하다가 버즈빌에 조인하게 됐습니다.  2. 어떻게 버즈빌에 오시게 되셨나요? 가장 보수적인 industry의 가장 한국적인 대기업이었던 첫 회사를 그만두고 MBA를 하면서 크게 3가지에 초점을 맞춰 진로를 찾았습니다.  빠르게 변화하는 industry 나의 transferable skill을 사용할 수 있는 position 조금 더 자유로운 분위기에서 일할 수 있는 환경  찾다보니 그 industry는 IT였고, Project Management 에서 나름 배웠던 skillset을 사용할 수 있는 포지션은 여러 가지가 있었지만, Product Manager가 가장 가깝다고 생각했습니다. 자유로운 분위기는 미국에 있는 여러 tech giant 들, 그게 아니라면 스타트업이라는 생각이 확고했고요. 그렇게 들어간 곳이 LA에 있는 작은 스타트업이었습니다. 총 4명 정도의 작은 회사였기 때문에 1년여간 일하면서 마케팅, 기획 등 여러 가지 일들을 배울 수 있었고 개발적인 부분도 일부 배울 수 있었습니다. 하지만 tech 회사라고 하기에는 개발인력도 많이 부족했고, 조금 더 배울 수 있는 곳을 찾다 보니 버즈빌에도 지원하게 되었습니다. 버즈빌에 오기로 결정하게 된 가장 큰 이유는 버즈빌이 인터뷰를 진행하는 방식이였습니다. 3차례의 인터뷰를 보면서 굉장히 재미있었거든요.  PM면접은 1, 2차 두 번 다 과제가 있었고, 타이트한 데드라인에 맞춰 준비하면서 긴장도 많이 하고 엄청난 부담감을 갖고 인터뷰에 들어갔는데… 하지만 막상 인터뷰에서는 제가 해온 과제를 평가받는 게 아니라 “이 문제를 조금 더 잘 풀기 위해서 어떻게 할 수 있을까?”를 같이 머리를 맞대고 자유롭게 얘기하면서 고민하다가 시간이 가더라고요. CEO, CPO와 보는 인터뷰가 이런 거라면 “일할때도 내 생각을 자유롭게 얘기하면서 같이 일할 수 있겠구나” 라는 느낌을 강하게 받아서 조인하기로 결정했습니다. Interviewer로 참석했던 Jay 와 Young이 보여준 “만담” 도 한 몫했습니다.  3. 버즈빌에서 어떤 업무를 담당하고 계신가요? 버즈스크린이라는 Product의 Product Manager 역할을 하고 있습니다. 간단하게 얘기해서 supply side인 파트너사들과 유저의 니즈, 시장의 상황 등을 반영하여 로드맵을 짜고, 그 로드맵에 맞춰 프로덕트를 발전시키고 개선하는 역할이라고 할 수 있겠네요.  특히 버즈스크린은 SDK 상품이다 보니 파트너사와 interaction이 많은 편입니다. 파트너사와 정기적인 미팅을 통해 개선점을 발굴하고 필요한 기능들을 제품에 녹여내기도 합니다. 하지만 한국뿐만 아니라 외국의 여러 파트너사도 하나의 공통된 Product를 사용하기 때문에 너도, 나도 원하는걸 다 세세하게 전부 들어줄 수 없습니다. 그렇게 되면 결국 더는 관리 할 수 없는 Product이 될수 있기 때문이죠. 무엇이 정말 Product의 발전을 위해 필요한것인지, 어떻게 하면 Product의 sustainability를 해치지않고 유저와 파트너사들을 만족시킬 수 있는지 생각을 많이 해야 하는 포지션인 것 같습니다. 또 내부적으로는 Business의 호흡과 Development의 호흡을 조절하는 역할을 담당해야 합니다. 현재 상황을 놓고 생각해봤을 때 어느 한쪽이 너무 빠르거나 느리게 달려간다고 생각할때는 속도를 조절하고, 이에 맞춰 counterpart의 기대치를 조정하는 역할을 해야합니다. 이를 통해 개발자들이 쫓기지 않고 개발할 수 있는 환경을 마련해주어야 하고 사업 담당자들이 파트너사에 적절하게 대응할 수 있는 환경도 마련해주어야 하고요. 결국 각 분야에서 전문성을 가진 사람들이 자신들의 역량을 가장 잘 발휘할 수 있도록 그 일에만 집중할 수 있게 만드는 일을 하고 있다고 (혹은 해야 한다고..) 생각합니다. 4. 스타트업에서 혹은 광고업계에서 일하는 느낌이 어떠세요? 스타트업에서 일하는 건 정말 힘든일인 것 같아요. 하지만 힘든 만큼 나름 재미도 있고 보람도 느끼면서 일하고 있어요. “힘들다”는 사실이 큰 장점이 될 수도 있는 곳이 스타트업인것 같습니다. 대기업에서 일했던 경험과 비교해보면 스타트업은 확실히 프로세스가 덜 갖춰져 있습니다. 그러다 보니 프로세스에서 보완될 수 있는 부분들에까지 리소스가 들어간다는 점, 회사에서 이탈하는 한명 한명의 빈자리가 상대적으로 크다는점은 단점이라고 할 수 있을 것 같네요. 하지만 바꿔서 생각해보면, 정해진 프로세스가 없다 보니 자유도가 높고, 일의 진행속도도 빠릅니다. 부서 간에 scope of work를 놓고 논쟁하지 않고, 모두 달려들어 일을 끝낼 수 있는 가장 빠른 방법을 찾아 끝내고, 그 과정에서 내가 할 수 있는 일을 스스로 찾아서 할 수 있는 것도 굉장히 흥미롭습니다. 또한 회사 구조적으로도 이것저것 새로운 시도들을 하는 것도 재미있습니다. 대기업에 있을 때는… 이미 다 채색까지 완성된 그림이 있고 그 위에다가 계속해서 정해진 같은 색으로 조금씩 점을 찍고 있는 느낌이 들었다면, 스타트업에서는 그야말로 스케치만 되어있는 도화지에 그림을 그리는 느낌이 듭니다. (물론 이건 스타트업에서 일하는 느낌이 아니라 버즈빌에서 일하는 느낌일 수도…) 누가 그리느냐에 따라 초등학생의 낙서가 될 수도 있고, 유명한 화가의 명작이 될 수도 있겠지만요. 그 과정은 정말 정말 힘들지만, 회사의 성장에 기여한다는 보람도 느낄 수 있고, 나도 성장할 수 있는 환경이라고 할 수 있겠네요.  욕심 없이 편안하게 주어진 일만 하면서 살고 싶은 분들에게는 스타트업에서 일하는 게 정말 지옥 같고 힘든 일이 될 것 같네요. (지극히 개인적인 의견입니다.) 5. 이것만큼은 버즈빌이 참 좋다! 어떤 게 있으실까요? 버즈빌은 그야말로 인사가 만사다 라는 말에 딱 들어맞는 회사입니다. 이 사람들과는 어떤 일을 해도 성공할 수 있겠다는 생각을 하게 하는 분들만 모여있는 것 같아요. 제가 힘들 때마다 Steve가 항상 “지금은 공기처럼 당연해서 크게 느껴지지 않겠지만 지금처럼 좋은 사람들과 함께 일할 수 있는 환경은 드물다”라고 하시는 데 공감하지 않을 수 없습니다.  특히 제가 입사한 지 한 달이 채 안 되었을 때 외부적인 요인으로 회사가 힘든 상황에 놓인 적이 있었는데, 각자 할 수 있는 분야에서 최고의 능력을 발휘해서 위기를 넘기는 모습은 짧은 기간에 버즈빌리언들의 뛰어난 개개인의 역량을 느낄 수 있었던 좋은 기회였던 것 같습니다. 업무 외적으로도 좋은 사람들과 일하고 있다는 것을 실감하고 있습니다. 점심시간마다 (낮잠을 포기하고) 탁구를 치거나 게임을 할 때마다 제 부족한 탁구/게임 실력을 걱정해주기도 하고, 실력 향상을 위한 진심 어린!! 조언도 아끼지 않습니다. 6. 개인적인 목표나 꿈이 있으신가요? 있다면, 버즈빌에서의 경험이 어떻게 도움이 된다고 생각하시나요? 한마디로 얘기하자면 최고의 2인자가 되는게 꿈입니다. 다른 사람들 앞에 나서지도 않고 조명도 받지 않지만 “이 사람과 함께라면 어떤일도 다 성공할 수 있어” 라는 생각이 들게끔 만드는 사람이 되는 것..이라고나 할까요.. 어릴때는 막연하게 “다른 사람들을 돕는일을 하고 싶다” 라는 생각을 갖고 살았던것 같아요. 평범한 학창시절을 보내고, 대학에 가고, 취업을 하면서 마음 한켠으로 치워두게된.. 그냥 그정도의 생각이었죠. 처음 다니던 회사를 그만두고 나는 평생 어떤 일을 하면서 살아야할까 라는 원론적인 고민을 하게 되었고, 그때 이 생각을 다시 한번 바라보게 된것같아요. 그러다가 기회가 닿아 MBA에 가게 되고 지금까지 만나보지 못했던 사람들을 만나면서 한때는 막연했던 이 생각을 조금 더 구체화시킬 수 있었습니다.  최고의 2인자가 되는 첫번째 step으로.. 우선 주변에 아이디어만 있고 실행으로 옮기고싶은데 어떻게 할 수 있는지를 몰라서 헤매는 친구들에게 작게나마 도움이 되고 싶습니다. 엔젤 투자자나 인큐베이터보다 조금 더 깊게 사업에 참여하고 실질적인 업무를 도와주며 같이 일하고 문제를 해결하면서 그 친구들의 아이디어를 실현하는데 일조하고 싶어요. 지금 버즈빌에서 지금 하고 있는 일이 이와 크게 다른 것 같지 않습니다. PM으로써 하나의 프로덕트를 기획하고 만들고 운영하는 게 결국은 하나의 작은 사업을 시작하는것이라고 생각합니다. 프로덕트를 만드는 과정에서 필요한 일들을 챙기고 처리하고 또 그 과정에서 고통스러워하고 즐거워하다보면, 아이디어를 구체화 시키면서 필요한 일들을 직/간접적으로 경험할 수 있겠죠. 그렇게 저를 잘 단련시키다보면 결국 제가 이루고자 하는 꿈에 다가갈수 있지 않을까요. *버즈빌의 채용공고(전문연구요원 포함)를 확인하고 싶으면 아래 버튼을 눌러주세요!
조회수 2166

안드로이드와 자동화 툴

모바일은 플랫폼의 생태계와 규모에 비해 개발자들이 처리해야 할 것이 매우 많습니다.서버나 타 플랫폼들 또한 개발자들의 영역이 많지만 그 영역들이 세분화되고 전문화되어 가고 있습니다. 데이터베이스, 백엔드, 프론트웨어, 인프라, DevOps 와 같이 점점 분야별로 심화되고 독립성을 갖추어 가고 있습니다.하지만 모바일은 각 플랫폼의 개발자들이 전체적인 아키텍쳐, 프론트, 내부용 데이터베이스, 리소스 관리, 배포 등이 해당 플랫폼의 소수의 개발자들에게 광범위하게 공존합니다. 다양한 분야가 전문화되기엔 변화가 잦고 규모가 점 형태로 구성이 된 경우가 많기 때문입니다.그렇기 때문에 반복적이고 불필요하게 비용이 소모되는 작업일수록 자동화 해서 최대한 코드 작성 본연에 업무에 집중할 수 있도록 환경을 구성하는 것이 중요합니다.토스랩 안드로이드 팀은 2015년 초부터 조금씩 자동화 환경을 구성하여 현재는 아래와 같습니다.다국어 문자 관리 자동화이미지 관리 자동화CI다국어 문자 리소스 자동화1. 다국어 글로벌 담당자의 원본 문서토스랩은 다국어 지원을 위해 글로벌 번역 문서를 관리하고 있습니다. 문서는 Google Drive 를 통해서 관리되고 있으며 기획/개발 파트에서 다국어 지원을 위한 리소스를 기입하면 각 언어의 담당자들이 해당 언어를 번역하고 있습니다.구성은 아래와 같습니다ABCDEFGH영어한국어일본어중국어-간체중국어-번체웹키ios 키안드로이드 키2. 기존 작업기존에는 해당 언어의 번역 데이터를 추가하기 위해 개발 파트에서 수동으로 각 언어의 리소스 파일에 추가하는 형태로 진행하였습니다.이러한 작업의 단점은 언어별 리소스 파일에 키-값 형태의 문자 리소스를 추가하는 작업을 반복적으로 해야 한다는 것입니다. 또한 반영이 된 후에 수정된 문자에 대해서 반영하기가 매우 어렵고 실수도 빈번하게 발생합니다.이러한 가능성을 최소화 하기 위해 자동으로 문자 리소스를 갱신하는 작업을 진행하였습니다.3. 안드로이드 파트를 위한 별도 필터 파일 추가|A|B|C|D|E|F| |—-|—-|—-|—-|—-|—-| |영어|한국어|일본어|중국어-간체|중국어-번체|안드로이드 키|가급적 원본 파일에 대한 조작을 피하기 위해 안드로이드용으로 Read-Only SpreadSheet 를 별도로 생성하였습니다.해당 작업을 위해 Google SpreadSheet Script 를 사용하였습니다.4. 자동화 툴 작업자동화 툴의 역할은 크게 3가지였습니다.안드로이드용 필터 파일을 다운로드한다.Spread-sheet를 분석해서 다국어용 자료구조로 변환한다.다국어용 자료구조를 XML 파일로 변경한다.툴은 Python 스크립트로 작업하였습니다.5. Gradle Task 로 추가별도의 Python 파일을 실행해도 되지만 Gradle Task 로 추가하여 Android Studio 에서도 Task 를 실행할 수 있도록 하였습니다.개발팀에서 안드로이드 키를 원본 문서에 추가한 후 Gradle Task 실행하면 바로 반영되도록 하였습니다. 기존의 방식과 가장 큰 차이점은 Merge 시 충돌 이슈에 대해서 더이상 관여하지 않아도 된다는 것입니다. 가장 최근 시점을 기준으로 자동화 Task 를 실행하면 모든 리소스가 최신화되기 때문에 충돌이 난다하더라도 무시하고 새로 Task 를 실행함으로써 충돌에 의한 이슈를 완전히 배제하고 작업할 수 있다는 장점이 생겼습니다.더 나아가 현재는 Android 용 리소스 Key를 기획 팀에서 기획시 적용하도록 하기로 현재 논의되고 있습니다. 이러한 논의가 반영된다면 더이상 리소스 관리에 있어서 개발파트에서 관리 할 필요가 없어지므로 다국어 리소스에 반영해야할 리소스 또한 최소화 될 것이라 기대하고 있습니다.이미지 리소스 자동화1. 기존 작업앱에 사용되는 디자인 리소스는 이슈 트래커와 JANDI 의 디자인 토픽을 통해서 전달 받아 작업을 하였습니다.이런 작업 형태는 이미지 관리가 분산 될 뿐만 아니라 일관성 있는 전달 방식이 아니기 때문에 누락건이 언제든지 존재할 수 있습니다.그래서 디자인 리소스에 대한 관리를 디자인 팀이 주도적으로 하며 개발팀에서는 빠르고 편하게 이미지를 전달 받을 수 있도록 하기 위해 자동화 툴을 만들었습니다.2. 개선 작업토스랩의 디자인 팀에서 사용하는 저장소는 권한에 따라 접근이 가능하도록 API 를 제공하고 있습니다. Read-Only 권한을 부여받은 후 API 를 통하여 이미지를 다운로드하도록 툴을 구성하였습니다.툴은 Python 스크립트로 구성하였습니다.3. Gradle Task 로 추가문자 리소스와 마찬가지로 별도로 Gradle 로 툴을 이용할 수 있도록 하기 위해 별도의 Task 를 정의하여 사용하도록 하였습니다.자동화된 리소스의 관리문자와 이미지를 자동화로 관리한다 하더라도 개발자가 필요에 따라 임의로 추가/수정하는 리소스가 존재 할 수 있습니다.이를테면 다운로드한 이미지 리소스를 활용한 Selector-Drawable 과 같은 것들입니다.이에 따라 자동화 처리된 리소스들은 별도의 관리를 위해 추가적으로 ResourceSet 을 만들었습니다. android { // ...중략 sourceSets { main.res.srcDirs += ${별도의_리소스_경로} } } 이러한 방식을 통해서 자동화된 리소스와 추가적한 리소스를 분리하여 발생할 수 있는 문제를 최소화 하였습니다.지속적 통합 (Continuous Integration, CI)자동화와 관련되어서 결코 빠질 수 없는 내용입니다. 빌드, 테스트, 배포, 리포팅에 이르기까지 이 모든 과정에 있어서 자동화 되지 않았다면 상상하기 어려운 작업들입니다.토스랩에서는 Jenkins 를 활용하여 빌드-테스트-리포팅을 하고 있습니다.1. 빌드 대상빌드의 의미는 최소한 컴파일 오류가 발생하지 않는 코드들이 최종 상태로 관리되고 있음을 의미합니다. 그러기 때문에 언제나 중앙 저장소에 반영되었거나 반영될 예정의 소스들은 항상 빌드 대상이라고 볼 수 있습니다.안드로이드 팀은 내부적으로 빌드 대상이 되는 브랜치를 아래와 같이 정의하였습니다.개발된 이슈가 최종적으로 반영된 브랜치 (develop)Github 에서 코드에 변경이 발생하면 이를 Jenkins 로 통보하여 해당 브랜치를 빌드합니다.개발 브랜치에 반영을 위해 코드리뷰 중인 브랜치 (features, fixes)Github 에 새로운 Pull-Request 가 발생하면 Jenkins 로 통보하여 해당 브랜치를 빌드합니다.테스트와 리포팅은 이 시점부터 발생한다고 볼 수 있습니다.2. 빌드빌드를 하는 과정에 기본적인 정적 분석을 사용하고 있습니다. 코드의 Convention 이나 복잡도 등을 측정하고 이를 분석하여 수정할 부분을 파악하기 위해서입니다.3. 테스트안드로이드팀은 작년 중순까지 Robolectric 이라는 Test Framework 을 사용하였으나 여러가지 이슈로 인하여 현재는 Android Test Support Library 를 사용하고 있습니다. ATSL 은 에뮬레이터를 필요로 하기 때문에 Jenkins 서버에 에뮬레이터를 구동하여 Test-Bed 를 구성하였습니다.빌드 과정에서 정적 분석이 완료되면 테스트 코드를 동작 시킵니다.테스트 된 결과는 JUnit Test Report 와 Jacoco Coverage Report 를 받고 있습니다.4. 결과 리포트빌드, 테스트 결과는 Jenkins 에서 별도로 관리되고 있지만 모든 동작들은 자동화 되어 관리되기 때문에 별도의 장치가 없다면 알아채기 어렵습니다.좀 더 빠른 피드백을 받기 위해 JANDI-Webhook 기능을 이용하여 결과 리포팅을 바로 받아 확인 할 수 있도록 하였습니다. 또한 Github Pull-Request 화면에서 Build-Status 연동하여 코드리뷰 하는 과정에서 잠재적 오류를 찾을 수 있도록 하였습니다.※ 빌드된 결과물의 배포는 내부적인 정책으로 현재는 하지 않고 있습니다만, 현재 가용 가능한 리소스 안에서 해결 방안을 찾고 있습니다.총평자동화의 가장 큰 목적은 반복적이지만 시간을 소요하기엔 가치가 떨어지는 작업을 단순화 하기 위함이었습니다. 여기서 오는 가장 큰 의미는 관리에 소요되는 시간을 최소화함으로써 생산성을 향상 시켰다는 데에 있습니다.특히 다국어 리소스와 이미지 리소스를 자동화 하기 위한 작업은 소요된 시간이 극히 미미하지만 그 효과는 매우 긍정적이라 할 수 있습니다.CI 는 초기 설정뿐만 아니라 관리가 매우 어려운 작업입니다. 해당 시스템을 총체적으로 알고 있다는 가정에서 해야 하며 정책적으로 규정해야 하는 것들도 있습니다. 하지만 결과물 그 자체에 대한 관리를 위해서는 없어서는 안되는 도구이며 정적분석과 자동화 테스트 등 다양한 효과를 얻을 수 있기 때문에 많은 개발자들에게 권장하고 싶습니다.#토스랩 #잔디 #JANDI #개발 #효율 #자동화툴 #업무환경
조회수 1048

컴공생의 AI 스쿨 필기 노트 ⑥인공신경망

인공지능, 머신러닝, 딥러닝이번 6주차 AI 스쿨에서는 딥러닝의 가장 기초적인 부분을 배웠어요. 인공지능과 머신러닝, 그리고 딥러닝을 많이 들어보긴 했는데 이 셋의 차이는 무엇일까요?인공지능이라는 개념은 1956년 미국 다트머스 대학에 있던 존 매카시 교수가 개최한 다트머스 회의에서 처음 등장했고 최근 몇 년 사이 폭발적으로 성장하고 있는 중이에요. 1956년 당시 인공지능의 선구자들이 꿈꾼 것은 최종적으로 '인간의 지능과 유사한 특성을 가진 복잡한 컴퓨터'를 제작하는 것이었죠. 이렇듯 인간의 감각, 사고력을 지닌 채 인간처럼 생각하는 것을 인공지능이라고 해요.인공지능은 위 세 개념 중 가장 큰 개념이에요. 머신러닝은 일반적으로 사람들이 이야기하는 인공지능, 즉 머신러닝에 기반한 인공지능을 말하는데요. 인공지능을 구현하는 구체적인 접근 방식이라고 할 수 있어요.머신러닝에는 linear regression, logistic regression 등의 여러 알고리즘이 있는데요.  그중 학습에 사용되는 모델을 딥러닝이라고 해요. 즉 딥러닝은 완전한 머신러닝을 실현하는 기능이라고 볼 수 있어요. 이러한 딥러닝의 등장으로 인해 머신러닝의 실용성은 강화됐고 인공지능의 영역은 확장됐다고 해요.인공 신경망(Neural Network)오늘 수업의 핵심인 인공 신경망(Neural Network)은 어떻게 만들어졌을까요?뉴런의 구조이것은 우리 몸에 존재하는 신경세포인 뉴런이에요. 뉴런은 전기적인 신호를 전달하는 특이한 세포인데 뇌는 뉴런의 집합체라고 할 수 있어요. 뉴런은 수상 돌기(dendrites, input)에서 신호를 받아들이고 축색 돌기(axon terminals, output)에서 신호를 전송해요. 신호가 전달되기 위해서는 일정 기준(임곗값 : threshold) 이상의 전기 신호가 존재해야 해요. 이 신호들의 전달을 통해서 정보를 전송하고 저장해요.이런 신경세포로 이뤄진 신경망 시스템을 위의 그림처럼 표현할 수 있어요. 이처럼 인공신경망은 사람 몸속의 신경들을 모방해서 만든 시스템이에요.위의 식처럼 뉴런을 수학적으로 표현할 수 있는데요. 입력 값들(X)에 가중치를 두어(W) 값 (f(x))을 구하고 그 값과 임계치와의 관계를 활성함수(active function)*로 판단하여 결괏값을 출력하게 돼요.( * 활성함수는 인공신경망의 개별 뉴런에 들어오는 입력신호의 총합을 출력 신호로 변환하는 함수로 비선형 함수(non-linear function)를 씁니다.**)이때 활성함수는 뉴런에서 임곗값을 넘었을 때만 출력하는 부분을 표현한 것으로 sigmoid 함수, Relu 함수 등 여러 방식이 있어요.인공 신경망의 구조인공 신경망 구조는 위의 그림처럼 나타낼 수 있어요. 인공 신경망 구조는 입력층(input layer), 은닉층(hidden layer), 출력층(output layer)으로 이루어져 있어요. 위의 그림은 그 구조에 의해 3-layer Neural Network 또는 2-hidden-layer Neural Network라 부를 수 있는데요. 3-layer Neural Network는 3개의 층을 가지는 인공신경망이라는 뜻이고, 위 그림에서는 은닉층1, 은닉층2, 출력층이 해당되겠죠. 인공 신경망에 입력층과 출력층은 항상 존재하기 때문에 은닉층의 개수만을 고려하여 부르기도 해요. 위 그림에서는 은닉층이 2개 있기 때문에 2-hidden-layer Neural Network라고 부를 수 있어요. 전파(Propagation)이번에는 실제로 학습하는 과정인 인공신경망의 알고리즘에 대해 알아볼게요. 순전파(Forward Propagation)와 역전파(Backward Propagation)가 있어요.순전파는 입력값에서 출력값으로 가중치를 업데이트를 하고 활성화 함수를 통해서 결괏값을 가져오는 것을 말해요. 인공신경망이 설계된 정방향(input → hidden → output)으로 데이터가 흘러가기 때문에 순전파라고 해요. 말 그대로 입력값을 앞쪽으로 보낸다고 생각하면 돼요.역전파는 출력값을 통해서 역으로 입력값 방향으로 오차를 다시 보내며 가중치를 재 업데이트하는 것이에요. 출력값에서 계산된 오차에 가중치를 사용해 바로 이전 층의 뉴런들이 얼마나 오차에 영향을 미쳤는지 계산해요. 결과에 영향을 많이 미친 뉴런일수록 더 많은 오차를 돌려줘요.개념을 코드에 적용하기NumPy로 구현된 Neural Network(이하 NN)의 작동 방법을 살펴볼게요. NN은 총 2개의 레이어로 이루어져 있어요. 이번 과제에서는 입력 x가 들어왔을 때, 레이블에 따라 예측치가 1로 수렴하는지 알 수 있는 인공신경망을 구현하는 것이 목적이에요.Neural Network다음 코드는 simpleNueralNet() 클래스를 나타내는 코드예요. simpleNueralNet()은 두 개의 레이어로 구성된 NN이에요.N, D_in, H, D_out = 64, 1000, 100, 10- N은 batch size, 즉 한 번에 처리할 수 있는 데이터 사이즈를 말해요. - D_in은 입력값 차원에 쓰이는 값으로 1000을 할당해요.- H는 은닉층 차원에 쓰이는 값으로 100을 할당해요.- D_out은 출력값 차원에 쓰이는 값으로 10을 할당해요.아래 코드를 통해서 랜덤 입력과 출력 데이터를 만들어요.x = np.zeros((N, D_in))     #1  x.fill(0.025)                         #2y = np.ones((N, D_out))   #31. np.zeros() 함수를 사용하여 (64, 1000)의 차원을 갖는 0인 행렬을 만들어요.2. fill() 함수를 통해 x 안의 모든 0을 0.025로 바꿔요.3. np.zeros() 함수를 사용해 (64, 10)의 차원을 갖는 0인 행렬을 만들어요.아래는 랜덤 값을 갖는 가중치(weight)들을 초기화하는 코드예요. w1은 1000, 100 차원의 랜덤 값을 갖는 행렬로, w2는 100, 10차원의 랜덤 값을 갖는 행렬로 만들어요.w1 = np.random.randn(D_in, H)   w2 = np.random.randn(H, D_out)learning_rate는 학습 속도를 의미해요. 아래는 단계별로 움직이는 학습 속도를 1e-6으로 정의하는 코드예요.learning_rate = 1e-6이제 5000번의 순전파를 할 거예요.h = x.dot(w1)     h_relu = relu(h)  y_pred = h_relu.dot(w2)h는 은닉층에 전달할 값이에요. x와 w1을 행렬곱한 값을 가져요.활성 함수 relu에 h를 넣어서 계산해요.y_pred는 예상되는 출력값이에요. relu로 계산된 h_relu와 가중치 w2를 행렬곱한 값이에요.아래는 순전파로 얻은 y_pred에서 진짜 y를 뺀 값을 제곱한 것의 합을 구해 손실 값(loss)을 구하는 코드예요. print(loss) 코드로 손실을 확인할 수 있어요.loss = np.square(y_pred - y).sum()순전파 후 역전파를 이용해 손실에 대한 가중치 w1과 w2의 gradients를 계산하여 update 할 거예요.grad_y_pred = 2.0 * (y_pred - y)              #1grad_w2 = h_relu.T.dot(grad_y_pred)    #2grad_h_relu = grad_y_pred.dot(w2.T)    #3grad_h = grad_h_relu.copy()                    #4grad_h[h < 0>grad_w1 = x.T.dot(grad_h)                         #61. 순전파로 얻은 y_pred에서 진짜 y값을 뺀 값에 2.0을 곱하여 grad_y_pred를 구해요.2. grad_w2는 순전파에서 y_pred = h_relu.dot(w2) 식을 사용했으므로  h_relu.T.dot(grad_y_pred) 로 구해요. h_relu가 반대로 곱해지기 때문에 T를 이용하여 shape을 바꿔줘야 해요.3. grad_h_relu는 방금 위에서 사용한 y_pred = h_relu.dot(w2)을 이용하여 grad_y_pred.dot(w2.T) 로 구해요. 이번에는 w2 shape의 반대를 grad_y_pred에 곱해줘야 해요.4. 순전파에서 h_relu = relu(h)였는데요. 역전파에선 grad_h와 grad_h_relu가 같기 때문에 copy() 함수로 그대로 복사해요!5. 0보다 작은 h는 0으로 만들어요.6. 가중치 w1의 값인 grad_w1은 순전파의 h = x.dot(w1)와 반대로 x.T.doT(grad_h) 곱해요. 역전파는 순전파의 식에서 이항한다고 생각하면 조금 더 쉽게 이해할 수 있을 것 같아요. 이항한 값은 .T를 붙여서 표현한다고 생각하면 될 것 같아요.아래는 가중치를 재업데이트하는 코드예요.w1 -= learning_rate * grad_w1 w2 -= learning_rate * grad_w2 과제1을 통하여 NN을 알아보았는데요. 복잡하지만 순전파와 역전파를 알고 있다면 많이 어렵지는 않은 것 같아요. 과제 2는 정확도를 95% 이상으로 만들어보는 과제인데 여러 가지 방법을 동원해서 풀어보는데 생각보다 쉽지가 않아요. ^^;이번 수업시간에 배운 딥러닝의 기초인 신경망은 굉장히 중요한 개념이라고 해요. 신경망을 기반으로 한 딥러닝을 강화하여 안면인식을 가능하게 하거나 저장된 데이터를 정확하게 인식하고 분류할 수 있는 기기들도 만들어지고 있어요. 이처럼 AI는 점진적으로 활용 범위가 넓어지고 있기 때문에 이 수업을 통해 쌓은 AI 지식을 마음껏 뽐낼 수 있는 날이 왔으면 좋겠어요!** 왜 활성함수로 비선형 함수를 쓸까요?선형함수인 h(x)=cx를 활성함수로 사용한 3-layer 네트워크를 생각해봐요. 이를 식으로 나타내면 y(x) = h(h(h(x)))가 되는데요.  이는 y(x) = c3x와 같습니다.  이렇게 활성함수로 선형함수를 사용하면 은닉층을 사용하는 이점이 없어요.* 이 글은 AI스쿨 - 인공지능 R&D 실무자 양성과정 6주차 수업에 대해 수강생 최유진님이 작성하신 수업 후기입니다.
조회수 684

멋있는 삶이란?

대치동 학원가 어둑한 시간에 피곤에 찌든 모습으로 엄마의 차에 올라타는 아이들을 보면, 무엇을 위해 저 어린 아이들이 저렇게까지 해야할까 진심 의문이 든다.저 아름다운 청춘의 시기에 엄청난 학원비를 지불하고 인터넷 검색하면 5초면 찾아볼 수 있는 지식을 머리속에 꾸역꾸역 넣기 위해 인생과 돈을 낭비하고 있다는 생각때문에 너무 안타깝다.목표가 있다면 다행이지만, 뒤쳐지지 않기 위함이 목표라면 정말 슬퍼진다. 목표가 만약 성공이라면, 그들이 생각하는 성공이 얼마나 아름다운 것인지도 생각해보면 좋겠다.무엇이 아름다운 인생일까?성공을 위한 최선이 저 경쟁에 뛰어드는 것일까?나는 아이들이 정말 멋있는 인생이 무엇인지 생각해보았으면 좋겠다. 높은 연봉과 좋은 차, 강남 아파트에 산다는 것이 그들의 멋이 아니었으면 좋겠다.많이 가지지 않아도 자신감있게 행동할 수 있다는 것, 남들과 다르더라도 자신의 생각을 당당히 표현할 수 있다는 것, 정말 좋아하는 분야에 대해서 깊이있는 대화를 나눌 수 있는 지적 진정성, 좋아하는 작가의 작품을 따라해보고 좋아하는 음악을 직접 연주할 수 있는 진짜 열정...이런 멋진 사람들이 아이들의 눈에 자주 띄었으면 좋겠다.무엇이 되고 싶고 무엇이 하고 싶은지 알아야 그렇게 될 수 있는 방법을 찾게되고, 그래야 목표가 생기고 열정이 생기게 된다. 스스로의 욕망이 없으면 아무리 전교 1등이라도 프로그램된 아이일 뿐이다. 입력하지 않으면 결혼도 사회생활도 스스로 할 수 없는 무능아를 만들 뿐이다.수학을 잘하냐, 영어가 좋으냐, 과학에 재능이 있느냐로 구분하지 말고, 너는 어떤 사람이 멋있다고 생각하고, 어떤 삶이 행복하다고 질문해야 한다. 너는 무엇을 잘하고, 너는 어떤 재능을 가졌느냐가 아니라, 너는 무엇을 잘하고 싶고, 어떤 일이 너를 즐겁게 하겠느냐를 물어야 한다.부모가 바뀌어야 한다.90%는 부모를 따라간다. 부모가 정해놓은 잣대로 아이들은 살게 된다. 부모가 멋을 모르는데 아이가 무엇을 판단할 수 있겠는가? 부모가 정해놓은 성공 방정식이 있는데, 아이가 어떻게 그 굴레를 쉽게 벗어나겠는가?멋은 돈으로 만들어지지 않는다. 멋진 곳에 갈 수는 있고, 멋진 옷을 살 수는 있겠지만, 멋있어질 수는 없다.멋은 권위로 만들어지지 않는다. 밑에 사람들에게 기분 좋은 얘기는 들을 수 있겠지만, 그들의 존경을 얻을 수는 없다.멋은 그런 척 할 수도 없다. 멋있어 보이도록 연기할 수는 있겠지만, 뒤돌아서서 스스로 부끄러움을 감출 수는 없다.우리가 아이들에게 가르쳐줘야 하는 것은 세상은 정말 다양한 기준의 멋있는 삶이 있다는 것과, 공부라는 것은 자신이 그 멋있는 인생을 만들어가기 위한 과정과 도구라는 것, 목표를 찾는게 가장 중요하다는 것, 그리고 그것을 찾기 위한 공부는 평생해야 한다는 것이다.안타깝지만, 아이들은 부모의 삶 안에서 생각하게 되는 경향이 크다. 재벌 2, 3세의 인생이 전혀 아름다워 보이지 않는 이유이기도 하다. 부모가 바뀌어야 한다. 아이를 망치는 것은 부모의 편협한 성공 방정식이다.매일매일 세상은 변하고 있다. 인류 역사상 하루하루가 이렇게 빠르게 변했던 적은 없다. 아이의 미래를 자신의 과거에 붙잡아두지 말고, 미래를 위해 놓아줘야 한다.그리고 부모 자신들은 지금이라도 멋있게 살 준비를 해야 한다. 프랑스인이 생각하는 중산층의 기준을 한번 찾아보길 바란다. 무엇이 진짜 멋인지 찾아보길 바란다.생각이 멋있고삶이 멋있는 사람들이많아졌으면 좋겠다.

기업문화 엿볼 때, 더팀스

로그인

/