제 1회 Data Science Meetup 후기

분류없음 : 2012.05.19 12:20   By LiFiDeA

지난주 갑작스럽게 올린 공지에도 불구하고, 거의 서른분에 가까운 참가자분들과 함께 어제 Data Science Meetup을 성황리에 마칠 수 있었습니다. Meetup을 마치고 집에오는 길에 '오늘도 참 많이 배웠다'고 느꼈기에 '성공'이라는 말을 쓸 수 있을 것 같습니다. 여러가지 진행상의 미비점에도 불구하고 흥미있는 이야기를 전해주신 발표자 분들과 소중한 저녁 시간을 내주신 참가자 분들께 공을 돌리고 싶습니다. 물론 장소 및 다과 준비를 후원해주신 NexR의 한재선 박사님, 전희원님께도 다시한번 감사드립니다. 


어제 모임의 성과가 더 많은 분들께 도움이 되었으면 하는 바램에서, 간단한 모임 후기 및 내용요약을 올려봅니다. 물론 Exponential Decay를 자랑하는 제 기억이 날아가기 전에 어제의 배움을 간직하고자 하는 의도가 큽니다 ;) 제가 행사 진행 관계상 메모를 많이 하지 못했기 때문에, 참가자 및 발표자 분들의 더 풍부한 후기를 기대해 봅니다. 관련 트윗을 올려주시거나 검색하시려면 해시태그 #dsci2012를 (관련 트윗 검색 링크) 써주시면 되겠습니다. 


Opening & Introduction


제가 맡은 오프닝은 Data Science / Data Scientist에 대한 Jeff HammerbacherHillary Mason의 정의를 인용하는 것으로 시작했습니다. Jeff의 정의는 데이터 관련 제품과 의사결정이 필요한 조직의 관점에, Hillary의 정의는 Data Scientist가 가져야 하는 스킬의 다양성에 촛점을 맞춥니다.


Organizations use their data for decision support and to build data-intensive products and services. The collection of skills required by organizations to support these functions has been grouped under the term "Data Science". - J. Hammerbacher


A data scientist is someone who can obtain, scrub, explore, model and interpret data, blending hacking, statistics and machine learning – H. Mason
이에 더하여, 참가자 분들과 함께 Data Science의 문제(What)와 테크닉(How)에 대한 일종의 Taxonomy를 만들어 보았습니다. 우선 Data Science에서 다루는 문제를 데이터 / 타겟 유저 / 모데인 및 목적(needs)측면에서 이렇게 나누어 보았습니다. 엄태욱님께서 Big Data에 대한 구분 기준으로 Volume, Variety, Velocity의 세가지가 사용된다는 점을 지적해 주셨습니다. 


또한 이런 문제를 해결하기 위한 Technique은 시스템 인프라 / 데이터 준비 / 분석 및 프리젠테이션으로 나누어 보았습니다. 제가 처음에 만든 표에는 Data Preparation을 빼먹었었는데, 분석에 적합한 형태로 데이터를 준비하고 가공하는 것은 분석 및 그 이후 처리의 성패에 결정적인 경향을 주는 중요한 단계입니다.  Exploratory data analysis는 그 자체가 목표이기도 하지만, 다른 문제 해결의 기반이 되기도 한다는 Insightful한 지적도 나왔습니다. 


Data Scientist라는 새로운 직군을 규정하는 다음 다이어그램도 소개했습니다. 도메인에 대한 심도있는 이해를 바탕으로, 데이터 전처리 및 분석의 모델을 만들고, 이를 실제 구현하여 검증까지 할 수 있는 종합적인 스킬을 요구받는다는 측면에서 Data Scientist는 기존 Domain Expert, Programmer, Researcher와는 구별되는 개념입니다. 



세션 직전에는 참가자분들의 소개가 있었습니다. 학교, 연구소 및 기업에서 오신 참가자 분들께서 어떤 Data Problem을 어떤 Technique을 사용하여 다루시는지에 대해 소개해 주셨습니다. 들으며 Data Science의 정의가 정말 폭넓다는 생각을 했스비다. 많은 분들께서 인터넷 / 통신 / 게임회사 등의 Log Data분석을 담당하고 계셨지만, SNS, 제품 설계 및 금융상품 디자인에 이르기까지 다양한 문제를 언급해 주셨습니다. 


Presentation Session


이후에 각 참가자의 발표가 이어졌습니다. 저는  From Data Science to Information Retrieval라는 제목으로 정보 검색이라는 저의 연구분야를 Data Science관점에서 설명하고, 검색과 추천 기법간의 관계를 비교했습니다. 마지막으로, 검색 연구에 대한 간단한 소개 차원에서 저의 ECIR / CIKM 논문 주제였던 Field Relevance Model을 소개해 드렸습니다. 



이후, Neowiz의 김경민님께서 Graph DB를 사용해 약 700만에 달하는 대용량 데이터 환경에서 Pairwise Affinity계산을 통하여 친구추천을 하는 기법을 다루어 주셨습니다. 서울대 대학원의 강민석님께서는 Social Graph, Music, Geolocation등 이종의 그래프 데이터를 하나의 Heterogeneous 그래프로 통합하고, 이 그래프에서 추출된 Path 정보를 결합하는 방식으로 추천 등 다양한 그래프 기반의 Task성능을 높이는 방법을 소개해 주셨습니다. KIST의 박호건 연구원께서는 SNS에서 마이닝한 시그널을 바탕으로 TV 스포츠 중계 편집을 자동화 / 지능화하는 솔루션을 설명해 주셨습니다. SNS 데이터가 전통적인 미디어라고 할 수 있는 TV 시청의 사용자경험을 최적화하는데 사용될 수 있다는 가능성이 새로웠습니다. 


휴식에 이어 Zum Internet 김우승님의 Infrastructure관련 세션이 이어졌습니다. (우승님의 블로그에서 빅데이터에 대한 좋은 글을 많이 보실 수 있습니다.) RDBMS 기반으로 진행되던 고객사의 Log Mining작업을 Hadoop기반으로 바꾸는 과정에서 있었던 이슈를 상세히 설명해 주셨습니다. 현업에서 빅데이터 프로젝트를 하는데 있어서, 의사결정권자를 설득하는 어려움, 또한 적절한 조직구조의 중요성을 말씀해 주셨습니다. 또한 기존의 Analytical Technique (e.g., Machine Learning) 빅데이터 플렛폼에 효과적으로 사용되기 위해서 많은 수정 및 최적화가 필요하다는 말씀을 해주셨습니다. 


마지막으로 제가, Data-driven Pursuit of Happiness라는 제목으로 길게는 10년간, 짧게는 최근 6개월간 진행한 Self-tracking 프로젝트에 대해 설명했습니다. 데이터를 통한 분석이 개인의 행복과 성취를 극대화하는데 도움을 줄 수 있다는 것이 요지였습니다. 


Discussion

마지막으로 Data Science와 관련된 주제를 놓고 참가자들간의 열띤 토론이 있었습니다. 우선, 유행어처럼 사용되는 Big Data 및 관련 기법이 Data Science관점에서 어떤 의미를 갖는지에 대해 의견을 나누었습니다. 김우승님께서, 소량의 데이터를 분석하기나 대용량 데이터의 Sample을 분석하는 기법에 비하여 Big Data 관련 기술은 데이터 전체를 (모집단) 대상으로 하여 처리 및 분석이 일어난다고 명쾌하게 정리해 주셨습니다. Big Data Analytics에 대해서는 훨씬 많은 연구가 필요하다는 의견도 주셨습니다. (제가 이에 관련하여 Jimmy Lin 교수의 MapReduce 알고리즘 책, 혹은 최근에 나온 Mining Massive Dataset 책을 추천해 드렸습니다. 둘다 PDF로 공개되어 있습니다.)


하지만, Hadoop등의 기술이 Key-Value로 나누어질 수 있는 데이터에 대한 Batch Processing에 최적화된 관계로, 이와 다른 요구 사항이 있을 때에는 R이나 RDBMS등의 대체 솔루션을 사용해야 한다는 지적도 나왔습니다. 전희원님께서 데이터를 Memory한계까지 R에 로딩하여 처리했던 경험을 공유해 주셨습니다. 저의 경우에도 인턴 프로젝트에서 Exploratory Data Analysis를 위해 대용량 원본 데이터를 샘플링하여 MS SQL Server에서 작업을 진행했던 경험이 있습니다. 결국, Opening에서 소개한 표의 각 단계에 해당하는 분석 작업에 맞는 도구를 사용하는 것이 답이라는 결론이었습니다. 아직 Prototype에 머물고 있지만 HadoopDB와 같은 Hybrid Solution도 잠재적인 대안이 될 수 있겠습니다. 


두번째로 Data Scientist의 Role과 Skill, 그리고 장기적인 Career Path에 대한 토론이 있었습니다. Data Scientist가 기존 개발자 및 연구자의 역할을 그럴듯하게 부르는 것에 지나지 않는다는 지적에 대해, 위에서 소개한 다이어그램에서처럼 다양한 역할을 종합적으로 수행하는 점에서 Data Scientist의 존재가치가 있다는 반박이 나왔습니다. 이와 관련하여, 예컨데 검색 모델을 만드는 과업에서 도메인 Expert 및 인프라 Engineer와 헙의해야 빠르고도 효과적인 모델 디자인이 가능하다는 말씀을 해주셨습니다. 이를 들으며 저는, Data Scientist가 각 분야에 대한 어느 정도의 전문성을 갖추고, 필요한 경우 전문가들과 협업할 수 있는 커뮤니케이션 스킬까지 갖춘 영화감독과 같은 존재가 되어야 하겠다는 생각을 했습니다. 


기타 주제로, 특히 Big Data관련 기술이 구글, 야후를 위시한 미국 회사에서 나오고 있는 현황에서, 미국과 한국, 그리고 조직간의 기술 격차에 대한 질문도 있었습니다. 또한 데이터 분석 및 처리를 위한 기법 및 그 결과물을 재활용하는 방법에 대한 의견교환도 있었습니다. 이부분에 대한 제 기억이 희미한 관계로, 참가자 분들께서 채워주시면 감사하겠습니다,


Closing Remark

7시에 시작하여 11시가 넘어서 준비한 순서를 마치고 나니, 보람은 있었지만 따뜻한 저녁도 못드신 참가자 분들에 대한 죄송스러운 마음이 들었습니다. 시간이 너무 늦은 관계로 다음주에 뒷풀이(?) 및 대화의 시간을 갖기로 하고 헤어졌습니다. 휴가답지 않게 12시까지 저녁도 못먹었지만, 여러 고수님을 뵙고, 많이 배웠다는 마음에 뿌듯한 밤이었습니다. 아직 공식적인 학위도 받지 않는 학생 신분으로 이런 모임을 주최하는 것이 많이 주제넘는 일이라고 생각했지만, 참가자분들의 열성에 그런 마음을 잊을 수 있었습니다. 


p.s. 마지막으로, 어제 제가 사용한 발표자료 (Opening / From Data Science to Information Retrieval / Data-driven Pursuit of Happiness 합본) 공유합니다. 발표자 분들께서 허락을 받는대로 다른 발표자료도 공유하도록 하겠습니다.


1st Data Science Meetup in Seoul [pptx]
NexR, Seoul, Korea, May 18, 2012.


또한, Meetup 참가자 및 발표자 분들께서 추가하실 사항이 있으시면, 더 많은 분들과 굥유될 수 있도록 여기 댓글로 남겨주시면 감사하겠습니다. 기타 의견 및 궁금증도 환영입니다!

신고

Data Science Meetup 최종공지 (5/18금)

분류없음 : 2012.05.14 15:57   By LiFiDeA

엇그제 운을 띄웠던 Data Science Meetup in Seoul에 대한 확정공지입니다. 장소 제공에 전희원(@gogamza)님, 그리고 흥보에 힘을 실어주신 임정욱(@estima7)님께 감사 말씀 드리고요, 덕분에 현재까지 학교 및 기업체에 계시는 다양한 배경의 참가자를 모실 수 있게 되었습니다. 아직 세부사항을 확정중이지만, 아래는 간단한 행사 소개입니다.


오시기 전에

Data Science라는 개념, 그리고 Data Scientist라는 직군은 미국에서도 굉장히 새로운 개념이지만, 빅데이터의 등장 및 관련 처리기술의 발달, 그리고 이를 필요로하는 다양한 애플리케이션의 등장으로 최근 관련 컨퍼런스 및 잡 마켓이 붐을 이루고 있습니다. 오시기 전에 아래 링크의 자료를 숙지하고 오시면 도움이 되실 것 같습니다.


http://radar.oreilly.com/2010/06/what-is-data-science.html

http://www.quora.com/What-is-data-science

http://www.quora.com/Career-Advice/How-do-I-become-a-data-scientist

http://thenoisychannel.com/2011/11/01/interview-in-forbes-what-is-a-data-scientist/


일시 및 장소

일시 : 2012. 05.18. 금요일 19:00~21:00 

장소 : NexR 회의실 (강남역 2호선 부근: 서초구 서초동 1321-6 동아타워 4층 KT Cloudware) 

(http://me2.do/5RCp3h


참가자 명단 (일부)

다음은 정보공개에 동의하신 참가자 일부의 명단입니다. 기타 카카오 / LG전자 / 다음 커뮤니케이션 / 서울대 등에서 약 15-20분 정도의 참가자를 모실 예정입니다. 참고로, 이중 전희원님과 김우승님은 7월에 열리는 빅데이터 세미나에 발표자로 참석하십니다. 


전희원/ NexR / @gogamza/ http://freesearch.pe.kr 

김우승 / 줌인터넷(주) / @kimws / http://kimws.wordpress.com

박수혁 / NCSoft Text Data Service Team / @psyoblade / http://dm4ir.tistory.com 

엄태욱 / NCsoft / @taewooke

윤종완 / NCsoft / 

김경민 / 네오위즈게임즈 소셜플랫폼개발팀 / @metamoi

박호건 / KIST / @gsgphg / http://www.hogunpark.com

양수열 / 인피언 컨설팅 부설연구소 / @javaoracle  / www.facebook.com/javaoracle 
전정우/ LG전자 SW역량 강화 센터 & Agile 개발팀
남종철 / 롯데정보통신 책임 / 

행사 진행계획

현재 잠정적인 행사계획은 다음과 같습니다. 우선 저를 포함한 주최측의 Opening Remark로 시작하여, 참가자들의 주제 발표 및 토론을 진행하겠습니다. 주제발표 시간은 참가자별로 10분을 넘지 않을 예정이니 간략하게 준비하시되, 기본적으로는 1) 도메인 및 문제 2) 접근 방법 3) 적용 결과의 형식을 따라주시면 좋을 것 같습니다. 토론은 참가자들의 의견을 수렴하여 Data Science과 관련된 주제에 대한 의견을 공유하실 수 있도록 준비하겠습니다. 


이제 막 학업을 마쳐가는 제가 한국에 계시는 여러분들을 만나뵙고 가르침을 얻고자 만든 자리이지만, 아무쪼록 오시는 분들의 배움과 교류에 도움이 되었으면 되는 바램입니다. 그럼 금요일에 뵙겠습니다!


신고

며칠 전, 1년 반만에 한국행 비행기에 올랐습니다. 유학 초기에 서슬퍼런 각오를 다지던 기억이 엇그제같은데, 앞으로의 진로를 결정짓고 고국으로 돌아가는 스스로의 모습이 아직 낯설었습니다. 유학 초기에 대학원과 미국 생활에 동시에 적응해 나가는 하루하루가 도전이었는데, 이제는 미국에서 연구자로서의 삶이 공기를 들여마시는 것처럼 편안해졌습니다. 처음에는 해수면에서 8000미터의 Death Zone으로 갑자기 올라간 느낌이었는데, 5년간 Sherpa의 심장을 얻었나 봅니다.


Journey is the reward라는 잡스의 말을 신봉하는 편이지만, 최근 문득 유학생활 동안 얻은 것과 잃은 것을 생각해 보았습니다. 경력상으로는 원하는 것을 얻었을지 몰라도, 그 과정에서 스스로에게나 주변사람에게나 많은 것을 '강요'해오지 않았나 합니다. 개인적으로는 익숙한 환경을 떠나 낯선 곳에서 시작하는 어려움이 있었고, 그 과정에서 그동안 저를 있게해준 대부분의 사람들과 떨어져 지내야 했습니다. 결과에 관계없이, 만약 그 과정에서 상처가 있었다면 어떤 식으로든 치유해야 한다고 생각했습니다. 

나는 여행을 통해 20년간 나를 지배해온 관습을 버리려고 했다.

출근하기 위해 아침에 하는 면도. 평일 대낮의 자유를 비정상적으로 인식하는 사회에 대한 공표. 지위가 높은 사람에게서 느끼는 심리적 압박. 월급에 대한 안심. 인생에 대한 유한 책임.

20년만에 주어진 한달 반의 여행은 그렇게 시작되었다.

-구본형, '떠남과 만남' 초판 서문

그래서 계획한 한국행이었습니다. 그리고, 그 여행에 영감을 준 것은 예전에 읽었던 구본형씨의 '떠남과 만남'이라는 책, 특히 글머리에 인용한 서문이었습니다. 20년간 다니던 직장에 사표를 내고, 발길 닿는대로 남도를 유랑한 그의 여정이 저의 나침반이 되었습니다. 5년간의 대학원 생활, 그리고 앞으로 몇년이 될지도 모르는 미국 생활 사이에 분명한 선을 긋자고 마음먹었습니다. 한달의 시간을 통째로 버리겠다고 마음먹은 것은 아니기에, 스스로에 대한 몇가지 목표를 세웠습니다. 


강요없는 자기통제

그동안 저의 행복도에 대한 Self-tracking을 하면서 지속적으로 발견한 패턴이 한가지 있습니다. 외적인 강제가 있는 상황이나 (평일 오전, 시험, 면접, 교수님과의 미팅) 환경에서의 (학회장, 연구실) 만족도가 그렇지 않은 경우보다 훨씬 높았다는 것입니다. 외적 제약이 스스로의 통제력을 높이고, 이런 모습이 자존감과 만족도를 높인 반면에, 외적 제약이 사라진 상태에서 자기통제가 느슨해지면서 만족스러운 시간을 보내지 못했다는 해석이 가능합니다. 꾸준히 공부하기 위해 잡지 기고를 요청했다는 안철수씨의 말처럼 외적 제약을 효과적으로 이용하는 것도 필요하겠지만, 마음속 깊은 곳에서 스스로를 움직일 수 있는 동력을 끄집어낼 수 없다면 슬픈 일입니다.


그래서 앞으로 한달간은 스스로 되도록 아무것도 강요하지 않으면서 자기통제를 유지하려고 노력해 볼 생각입니다. 외적인 제약을 매개로 의지를 끌어내기보다는 내면의 에너지를 활활 타오르게 하여 자신을 움직이겠다는 것입니다. 스스로에게 완전한 자유를 허용하되, 그 결과에 만족할 수 있는 순간순간을 보내고 싶기 때문입니다. 긴 휴가를 보내보신 분이라면 알겠지만, 자유시간을 만족스럽게 보내는 것은 긴장과 이완의 완급조절을 필요로 하기에 쉬운 일은 아닙니다. 하지만, 살아가기 위해 어떤 구속도 필요치 아니하는 진정으로 자유로운 존재가 되기 위해서는 꼭 갖추어야 할 덕목일 것이라는 생각입니다.


자기 냄새 (스타일)

시오노 나나미의 남자론을 인용하지 않더라도, 한눈에 풍겨나오는 여유와 자신만의 아우라를 가질 수 있는 사람은 대단히 매력적입니다. 하지만, 이런 삶의 태도의 완성은 순간순간 자신의 모든 것을 쏟아부어야 하는 유학생 처지에서는 사치이기도 합니다. 유학 초기에 결과보다는 과정에 충실한 생활을 뜻했지만 학생이라는 신분과 앞날에 대한 불확실성으로 말미암아 이루지 못했던 목표입니다. 


줄서지 않는 삶이라는 삶의 원칙을 일찌기 세웠기에, 굵직굵직한 선택에서나 소소한 일상에서나 '자기 냄새'를 피우기 위해 좀더 노력해 볼 생각입니다. 이는 눈앞의 작은 이득이나 다수에 묻어가는 선택의 안정감을 포기하는 노력을 수반하는 일입니다. 하지만, 그렇게 포기한 이득과 안정감은 그 이상의 성취감과 '매순간 깨어있는 느낌'으로 돌아올 것입니다. 또한 안철수씨나 잡스의 말대로 삶의 목적이 Make a dent in the universe하는 것이라면, 이는 분명 선택할 부분은 아닙니다. 

 

주변을 돌아보는 여유

스스로의 공부를 위해 주변의 모든 사람들을 뒤로해야 하기에, 유학은 본질적으로 자기중심적인 선택입니다. 젊은 날, 자기 자신에게서 최대치를 끄집어내기 위해 노력하는 것은 분명 아름다운 일이지만, 그런 노력이 주변 사람들의 허무감까지 보상해주지는 못합니다. 스스로 원하는 것을 이루더라도, 그 결과가 자신에게만 머문다면 그 얼마나 허무한 일인가요. 그리고 그런 성취가 얼마나 지속가능한 것일까요.


논의를 확장하면, 저는 사람이 가진 것은 모두 누군가에게서 받은 것이라는 말이 진리를 담고 있다고 믿습니다. 그리고, 돈 1원이 나보다 다른 사람에게 더 큰 가치를 가져다준다면 이를 베풀해야 한다고 믿습니다. 하지만, 스스로의 마음에 여유가 없을때 이런 믿음을 실천하기는 쉬운 일이 아닙니다. 매달 생계유지비를 받는 학생에서 직장인이 된 이 시점이 '여유와 베품'라는 화두를 다시 마음에 새길때가 아닌가 합니다. 


평생 기억될 한달을 위해

서두에서 유학생활을 고산 등반에 비유했지만, 어떤 의미에서 작은 산봉우리에 올라서 구름겉힌 주변 풍광들 둘러보는 느낌입니다. 조만간 하산하여 또다른 봉우리로 향할 자신을 알기에, 지금 잠깐의 휴식이 더욱 달콤한지도 모르겠습니다. 위 세가지가 측정이 용이한 목표는 아니지만, 한달 뒤 스스로를 돌이켜 보았을 때, 내 안에 무언가가 변했다는 느낌이 찾아오기를 기원해 봅니다. 


신고

Job Search를 최근에 마무리했습니다. 여러 회사와의 Interview를 거쳐 Microsoft Bing에서 시작하는 것으로 결정했습니다. 제가 대학원에서 가장 값진 배움의 장으로 기억될만한 시간이었고, 결과적으로도 만족스럽습니다. 제 노력만으로 얻은 결과가 아님을 알기에, 여러 분들께 감사하는 마음입니다. 


Bing으로 결정한 몇가지 이유는 다음과 같습니다. 1) 다른 회사의 오퍼가 모두 Engineering 포지션이었던 반면 Bing에서는 Engineering / Research에 걸치는 Applied Researcher로 오퍼를 받았습니다. 2) 최근 Incremental한 개선에 주력하는 구글에 비해 Bing은 시장을 장악한 구글의 아성에 도전해야 하는 입장으로, 혁신적인 시도를 계속하고 있습니다. 3) 세계 최고수준의 연구진을 갖춘 Microsoft Research의 여러 그룹와 긴밀하게 일할 수 있으며, 지난 두번의 여름을 보낸 Seattle / Pacific Northwest라는 환경도 매력적이었습니다. 


Bing에서 제가 시작하게 될 팀은 검색 품질을 평가하는 업무를 담당합니다. 예전에 언급했지만 검색 성능의 평가는 정보검색 (IR) 연구 및 응용의 핵심에 해당합니다. 끊임없이 변화하는 환경에서 검색자의 마음을 읽어야하는 검색엔진 입장에서 객관적이고(unbiased) 포괄적인(comprehensive) 평가 기법과 척도를 갖는 것은 지속적인 개선과 혁신에 방향타를 제공하는 일이기 때문입니다. 


2009년 런칭후 Bing이 지속하고 있는 혁신 작업에도 제대로 된 평가는 중요한 역할을 합니다. 전통적인 웹 검색엔진이 ten blue link라는 이름의 문서 랭킹 및 평가에만 주력했다면, 최근 검색엔진은 사용자의 의도에 맞는 다양한 컨텐츠를 결과화면에 보여주고 있기에, 이러한 페이지 전체를 평가하는 기법이 Bing 및 MSR 연구자들에 의해 발표되었습니다. 


최근까지 검색 업계의 화두인 실시간 및 개인화 검색의 평가역시, 질의의 시점 및 사용자에 따라 적합한 문서가 다르다는 특성이 기존의 offline 평가기법의 도입을 어렵게 합니다. 이를 보완하는 다양한 online 평가기법이 개발되어 사용되고 있지만, 아직 개선의 여지가 많습니다. 또한 결국은 online과 offline이 결합되어야 온전한(holistic) 평가가 이루어지기에, 이종의 평가 방법론 및 지표를 결합하는 것도 중요한 문제입니다.


마지막으로, 최근 Bing에서는 Facebook 친구들과 협력하여 검색을 할 수 있는 Social / Collaborative Search를 내놓았습니다. 사용자 혼자 끊임없는 문서 목록을 상대해야 하는 기존 모델에 비해 분명 장점을 가진 모델이지만, 역시 이런 변화가 전통적인 방식에 비해 얼마나 검색을 쉽고 빠르게 (또한 재미있게;) 하는지를 평가하는 것은 흥미있는 문제입니다. 전통적인 검색 모델에 개인화 및 인터렉션을 통해 좀더 사용자에게 친화적인 검색을 구현하고자 했던 그동안의 연구를 세계 제 2의 검색엔진에 접목해볼 수 있는 기회라고 생각합니다. 


p.s. 다음주부터 약 2주간 서울에 머무를 예정입니다. 한국에 있는 동안 몇몇 대학 및 기업체에서 발표를 할 예정이지만, 이와 별도로 검색, 추천, 기계학습, 자연어처리를 포함한 Data Science 전반에 관심을 가진 분들과 주제 발표 및 식사를 통해 교류하는 자리를 만들어볼까 합니다. 


정확한 일정 및 세부 사항은 추후 다시 공지하겠지만, 참석 의사가 있으신 분들은 jykim@cs.umass.edu로 메일을 주시거나 트위터 @lifidea로 가능하신 일정 및 희망사항을 미리 알려주시면 좋을 것 같습니다. ^^ 저는 그동안의 연구 내용 요약이나, 최근까지 블로그에 공개했던 Self-Tracking에 대한 간단한 소개를 준비할 생각입니다. 현재 @gogamza님이 참석 의사를 밝혀주셨습니다 (참석자 목록은 본 포스트에 지속적으로 업데이트하겠습니다).


신고

다른 졸업학년도의 대학원생들처럼 저도 올해 많은 시간을 Job Search에 투자했습니다. 처음에 Academic / Researcher Job을 찾는 것으로 시작하여, 나중에는 Industry / Engineering Job으로 구직의 폭을 넓혔습니다. 지난 2주간 A9 (아마존의 검색회사), Amazon, Microsoft, Google과 Facebook면접을 다녀오는 것으로 on-site인터뷰를 모두 마무리했습니다.


아직 최종 결과를 기다리고 있는 곳도 있지만, 만족스러운 오퍼를 이미 받았고, 최선을 다했다는 확신이 들기에, 지난 시간이 성공적이었다고 말해도 될 것 같습니다. 앞으로 몇 번의 포스팅을 통해 지난 6개월간의 여정을 정리해볼까 합니다. 아무래도 최근에 기술회사 면접을 다녀왔기에, 글의 초점이 그쪽에 맞춰질 것 같습니다. 오늘은 우선 '구직에 임하는 자세'에 대해 생각해 보겠습니다. 


Be a Learner, not a Shopper


지난 포스팅에서도 밝혔지만, 처음부터 Job Search를 직업 시장에 나가는 Shopper (혹은 Shoppee)보다는 대학원 시절 배움의 연장으로 생각하는 학습자(Learner)의 자세로 임하겠다는 생각이 있었습니다. 제가 생각하는 학습자의 자세는 매 순간 최종적인 '결과'보다는 과정에서의 '배움'을 소중히 하는 것입니다. 평생의 (적어도 몇년간의) 진로가 결정되는 구직 전선에서 '배움'을 운운하는 것은 굉장히 Naive한 태도로 보입니다. 구직은 다른 어떤 일보다도 '결과'가 명확하게 엇갈리는 일이니까요. 하지만, 지난 6개월을 돌이켜 보았을때, 이런 학습자의 태도는 가장 크게 도움이 되었던 요인이 아니었습니다. 


우선, (특히 박사 졸업생의) 구직은 대부분 장기전입니다. 저의 경우 작년 말 미국 내 교수직 지원을 시작으로, 올해 초 기업체 연구 개발직으로 지원의 폭을 넓혔습니다. 그 과정에서 좌절이 없었던 것은 아니지만, 결과에 연연하지 않겠다는 각오가 있었기에, 실패를 거울삼아 계속 뭔가를 배우고 개선해 나갈 수 있었습니다. 당장의 인터뷰 결과에 연연하기보다는, 학교 / 연구소 인터뷰 준비는 관련 분야의 논문을 읽는 기회로, 그리고 회사 인터뷰는 알고리즘 / 코딩 스킬을 연마하는 기회로 생각했습니다.


또한 '과정에서의 배움'을 중시했기에 처음에 비교적 난이도가 낮은 곳을 시작으로 꾸준히 더 어려운 곳을 공략했습니다. 효과적인 학습을 위해 가장 중요한 요소중 하나가 '적당한 난이도'라는 것을 감안하면, 이렇게 차근차근 Bar를 높였기 때문에 큰 부담없이 과정에서 계속 배워나갈 수 있지 않았나 합니다. 특히 Problem Solving이 주가 되는 기술 면접에서는 처음 몇개의 회사에서 쌓은 경험이 나중 인터뷰에 큰 도움을 주었습니다. 


'학습자의 태도'는 기술 면접 현장에서 최선의 결과를 얻어내는 데에도 효과적입니다. 나중에 좀더 자세히 쓰겠지만, IT 회사의 기술 면접은 알고리즘 / 시스템 디자인 등의 문제를 가지고 구직자의 문제 해결력을 평가하는 과정입니다. 이때 평가의 중심이 지식보다는 사고력, 결과보다는 해답에 이르는 과정이기에 지나치게 긴장을 하거나 사소한 실수에 좌절하는 것은 치명타가 됩니다. 이런 측면에서도 위에서 언급한대로 점점 난이도를 높여가며 각각의 인터뷰를 '배움의 기회'로 생각할 수 있었던 것이 저에게는 큰 도움이 되었습니다. 


요약하면 인터뷰 준비, 스케줄링, 그리고 현장에서까지 '학습자의 태도'를 가졌기에 과정에서 스트레스를 받기보다는 즐길 수 있었고, 또한 후회없이 실력을 발휘할 수 있었다고 생각합니다. 만약 처음부터 결과에 집착했다면 체계적인 인터뷰 스케줄을 짜는 것도, 또한 현장에서 마음편히 인터뷰에 임하는 것도 힘들었을 것이라고 생각합니다.


Be Proactive, not Passive


어떤 의미에서, 구직 과정은 지원자와 조직간의 긴 '헙상'입니다. 대부분의 경우 지원자가 조직에 지원하는 것으로 프로세스가 시작되기에, 이 과정에서 지원자는 조직이 부과하는 여러가지 Rule을 맞닥뜨리게 됩니다. 인터뷰 과정에서 중요했다고 생각되는 또 하나의 태도는 이처럼 주어진 Rule을 따르기 보다는 최대한 상황을 자신에게 유리하게 끌어가려고 노력했던 점입니다. 구체적인 설명은 저의 인터뷰 과정에서 생긴 에피소드를 소개하는 것으로 대신할까 합니다.


Google의 첫번째 전화인터뷰에서 있었던 일입니다. 다른 많은 회사들처럼 Google은 온라인 문서 공유 시스템을 사용하여 코딩 인터뷰를 진행합니다. 인터뷰 시작과 함께 사용할 언어를 정하는데, 인터뷰어가 대뜸 C를 사용하라고 했습니다. 저는 오래전에 C프로그래머로 일한 경력이 있지만, 대학원에서는 주로 Ruby / Python / R등의 스크립팅 언어를 사용해 왔고, 시간안에 문제를 해결해야 하는 인터뷰의 특성상 손에 익지도 않은 C코드를 짜는 것이 불리한 조건이라는 것은 자명했습니다. 이 상황에서 그냥 인터뷰가 시킨대로 하는 방법도 있었지만, 저는 인터뷰시 사용할 언어가 대부분의 경우 flexible하다는 것을 알았기에, Python으로 하겠다고 버텨서 인터뷰어를 다시 배정받을 수 있었습니다. 결국 두번째 인터뷰어와의 전화 면접을 무사히 통과할 수 있었습니다. 


또한, 대부분의 경우 언터뷰어와의 소통은 주어진 인터뷰 시간의 범위내에서 이루어지는 것이 보통입니다. 많은 경우 리쿠르터는 인터뷰 이전 / 이후에 인터뷰어의 이름 혹은 연락처를 알려주지 않으며, 또한 어떤 회사는 이를 정책화하기도 합니다. 하지만, 대부분의 경우 인터뷰어에게 직접 물어보면 연락처를 얻을 수 있습니다. 그리고 저는 인터뷰 내용에서 보충할 내용이 있는 경우 가능한 시속하게 Follow-up메일을 보냈습니다. 전화 면접시 시간내에 코딩을 끝내지 못한 경우가 있었지만, 인터뷰 직후 5분안에 이를 끝내서 바로 메일을 보냈고, 즉시 인터뷰어의 고맙다는 답장을 받았습니다. 

만약 위 상황에서 제가 저에게 부과된 '규칙'에 순응했다면 아마 다음 단계에 가보지도 못하고 탈락했을 겁니다. 이밖에도 저는 인터뷰가 끝난 후에 채용 담당 매니저와 추가 면담 시간을 요청하여 조금 더 필요한 대화를 나눌 수 있었고, 또한 점심 인터뷰 장소가 어수선한 경우 좀더 조용한 곳으로 옮겨달라는 요청을 했습니다. 요약하면 주어진 상황에서 최선을 다하되, 회사에서 정해주는 여러가지를 그대로 수용하기보다는 자신에게 필요한 것을 그때그때 요구하는 자세가 필요합니다. 


Epilogue


이번 글에서는 미국 IT회사 기술 면접을 중심으로, 구직에 임하는 태도에 대해 적어보았습니다. 전화에서 방문 인터뷰까지 두달 가량을 보내었지만, 대표적인 IT회사를 방문하여 이야기를 듣고 제가 기여할 수 있는 점에 대해 생각해볼 수 있었던 점은 큰 수확이었습니다. 그동안 상대적으로 소홀히해왔던 코딩 / 알고리즘 관련 스킬을 면마할 수 있었던 점은 보너스라고나 할까요. 


예전에 유학 준비기에도 썼지만, 유학이든 구직이든 당장의 보상에만 집착하기보다는 장기적인 관점에서 '나에게 어울리는 선택'을 하는 것이 중요하다고 생각합니다. 우선 스스로 왜 그 포지션을 원하고, 어떻게 잘 할 수 있을지를 생각해본 후에야, 면접관에게 이점을 납득시킬 수 있을 겁니다. 주어진 기술적 문제를 잘 푸는것도 중요하지만, 학교든 기업이든 자신의 조직 및 관련분야에 열정을 가진 사람을 뽑기를 원하니까요.


p.s. 다음번에는 면접에 관한 좀더 구체적인 Tip 및 준비방법을 올릴 생각입니다. 그전에라도 궁금한 점이 있으시면 댓글로 알려주세요 ;)

신고

티스토리 툴바