한국인들의 페이스북 해커톤 참여기 “한국 개발자가 세계 최고”

페이스북의 정체성  This is hacker company

플랫폼 개발사가 해커톤을 여는 것은 흔한 일이지만 페이스북은 해커들을 존중하고 해커에 의해 이끌리는 회사인만큼 해커톤에 대한 기대나 예산 투입이 남다르다. 한국에서도 무려 20명이 미국행 비행기를 탔을 정도. 페이스북은 해커가 만든 회사고, 정체성을 유지하기 위해 사옥에해커 스퀘어광장을 만들고 중심에 마크 저커버그의 책상을 상징적으로 정도로 여전히 해커이고 싶어 한다. 그래서 해커들에게 자주 문을 열어주나 보다. 2019 F8(F-eight, ‘페이트 주로 읽는다’) 해커톤에서는 특별히 한국인이 대거 참여하고, 파이널리스트(수상작) 8 중에 2팀이 오르는 결과를 일궈냈다. 이들의 해커톤 참여기를 들어봤다.

해커 스퀘어

 

아싸들의 개발자 인싸력 체험

홍승환(좌) 씨와 정욱재(우) 씨(제공=페이스북)

커먼컴퓨터의 백엔드 엔지니어인 홍승환 씨와, 스캐터랩의 백엔드 엔지니어 정욱재 씨는 자신들을 지금까지아싸라고 생각해왔다. 해커톤이 열리기 사전에 정보를 공유하는 그룹에 출국 전날 들어갈 정도였다. 해커톤의 경우 즉석에서 세계 참여자와 팀을 구해 참여해야 하는데 팀이 없었다. 비행기에 도착하고 해커톤 당일까지도 팀을 구하지 못했다고. 이쯤 되면 페이스북이 따돌린 아닌가 하는 생각도 해볼 있다.

해커톤 직전에는 팀이 아이디어 스피치를 하고 이를 통해 모자라는 팀원을 보충하는데, 어떤 아이디어도 마음에 들지 않았다. 진행자들은 이들을 데리고 백엔드 두명 필요하지 않냐는 제안을 여러 팀에 했는데, 마침 팀을 구하지 못한 아프리카 출신 엔지니어(케냐, 우간다) 둘과 팀을 이뤘다.

이들이 만든 프로덕트는 ‘The City Watch’ 챗봇 기반 사고 제보 솔루션이다. 특정 지역에서 어떤 사고가 있는지를 사용자들이 직접 챗봇에 물어보거나 입력하도록 , 정부가 사건의 중요도를 파악하거나 경과 등에 답변을 얻는 솔루션이다. 물어보는 사용자가 많으면 사건의 중요도가 높아져 해당 지역 지도 우의 시각적으로 도식화된다. 많이 물으면 물을수록 지도 위의 원이 커지는 형태다.

The City Watch

대상은 뉴욕으로 했는데, 이유는 해커톤 개발에 문제가 생길 문제를 해결해주는 전문가(Subject Matter Expert) 뉴욕시장 비서실에 근무 중이었기 때문. 해당 전문가는 뉴욕의 오픈 소스 데이터를 사용해볼 것을 권하는 등의 행동을 했다고.

개발은 AWS 서버를 사용해 S3 웹을, 동적인 반응은 EC2 사용했다. 전반적인 툴은 페이스북의 오픈 소스인 리액트.js 사용했고, 주소 시스템은 UN에서 공식 서포트하는 what 3 words 사용했다. what 3 words 한국에서 카카오맵에 구현돼 알려진 있다. 이러한 오픈 소스를 사용할 오픈 소스를 직접 만든 이들이 현장에서 불려와 도와주는 것은 매우 신기한 경험이었다고. The City Watch 결국 파이널리스트에 올랐다. 이들은 팀원을 구하기 어려운 것보다 결과물 스피치 직전 서버가 터져 발표를 뻔한 가장 어려운 경험으로 꼽았다.

이들은 참여 소감으로한국 개발자가 세계 최고라는 것과, 페이스북이 개발자들을 응집시켜서 유대감을 형성해 가는 것이 흥미롭다 소감을 밝혔다.

 

대학원생이 다녀온 f8 해커톤

안미진 씨(제공=페이스북)

성균관대 소프트웨어플랫폼학과 박사과정에 있는 안미진 씨는 연구실에서 죽어가는 대학원생인 자신을 구출하기 위해 해커톤 참여를 결정했다. 평소에 하는 일은 플래시메모리 데이터베이스 시스템 최적화로 트렌디한 개발과는 거리가 있다. 평소엔 개발 언어도 C C++ 사용한다.

공지를 보고 해커톤에 신청한 안미진 씨는 아싸들과 달리 그룹에 미리 들어갔다. 다른 나라 엔지니어가 자신의 계획을 소개하는 보고 댓글을 달았고, 이들의 메신저 단체방에 초대받게 됐다. 이후 평소 자신이 쓰지 않는 툴들의 튜토리얼로 준비를 했다. 그런데 메신저를 보니 인원이 해커톤 1 최대 인원(10)보다 많았다. 그는 이것이 최종 팀이 아니라고 생각해 당일에 새로 빌딩을 했다. 팀원 구성이 특이한데, 8명의 국적이 모두 달라 최다국적 팀이 됐다. 팀원 수도 많은 편이었다.

다국적 팀이 만든 결과물은 ‘Code Canary’, 챗봇을 통해 코딩을 배울 있는 툴이다. 툴을 만든 이유는 개도국 학생들 때문이다. 혼자 공부하는 학생은 주로 유튜브나 책에 의지해 코딩을 배우는데, 개도국 학생들은 PC 갖고 있지 않은 경우가 많다. 또한, 개도국에서는 다른 없고 메신저만 사용할 있는 5메가 데이터 등을 저렴하게 판매한다. , 메신저가 매우 중요한 수단이다. 따라서 코드를 메신저에서 대화식으로 배우고 웹사이트 등을 만들었을 결과물도 챗봇 안에서 있는 툴을 만들었다.

Code Canary

챗봇 빌드 자체는 힘들지 않았는데 특이한 점이 있었다. 안미진 씨는 원래 다른 일을 하는 그룹에 있었으나 한국에서 모르면 취직할 수가 없는 어도비 툴들을 다룰 있는 엔지니어가 아무도 없어 프로토타이핑 시각화하는 일도 해야 했다. 이튿날(f8 해커톤은 48시간이다)에는 메신저 API 처리하고 디버깅을 했는데, 로고를 만들 있는 사람이 없어 어도비 툴을 도맡아야 했다고. 결국 코드 커너리 역시 파이널리스트에 올랐다.

그가 느낀 것은 국가와 문화에 따른 참신한 아이디어와, 서로의 워크앤라이프밸런스 존중이다. 자신만 휴식을 취하는 아니라 타인의 밸런스도 신경 쓰므로, 소모적이지 않고 편하게 개발을 있었다고 한다. 또한, 연구자로서 지쳐가는 삶에서, 다양한 나라 사람들과 네트워킹하면서 개발의 원동력을 찾을 있었다고 한다.


f8
함께 덕업일치

신정아 씨(제공=페이스북)

신정아 씨는 네이버 ClovaAI OCR 소속 개발자로, 안드로이드 개발자이면서 동시에 모바일 머신러닝을 취미로 하는 엔지니어다. 업무도 개발이지만 취미도 개발로, 덕업일치하는 것이 꿈이라고 한다. 특히 모바일용 딥러닝은 장애 극복의 중요한 요소인 만큼 꾸준히 개발하려고 한다고. 신정아 씨는 f8 프로젝트도 모바일 머신러닝 앱으로 했다.

f8 지원은 페이스북 개발자 그룹(Devleloper’s Circle, 줄여서 DevC 부른다) 서울 지역 리더의 포스팅을 보고 했다. 다른 참가자들과 다르게 DevC 멤버가 아니지만 합격했다고. 출국 시간을 헛되이 쓰지 않기 위해 컴퓨터 비전, 모바일 적용, 최적화 자신의 기술 스택을 가다듬고, 페이스북이 사용하는 딥러닝 툴들은 파이토치(Pytorch) 카페2(Caffe2) 연습했고 코드셋도 미리 준비했다고 한다. 실제로 사용하진 못했다고.

신정아 역시 현장에서 직접 팀을 구했는데, 아무도 함께하려고 하지 않아나와 함께 하자 문구를 랩톱에 쓰고 머리에 지고 다녔다고 한다. 그런데 팀원은 구해지고 같이 셀피 찍자는 사람만 늘었다고.

결국 구한 팀으로는, 모바일로 사물을 비출 판단해서 읽어주는 앱을 개발했다. 셀룰러 통신이 거의 불가능한 곳을 위해 통신 없이도 문자 인식을 하고 이를 음성화해주는 앱이다. 문맹 문제와 장애인 문제에 대응할 있다. 온디바이스 AI이므로 보안 문제도 없다. 특히 이때 개도국 출신의 팀원들이 있어 많은 도움을 받았다고.

페이스북에서 배운 것은, 평소 자신이 사용하지 않는 툴인 파이토치를 페이스북이나 에어비앤비 등의 기업이 어떻게 적용하고 상용하느냐 하는 것과, 개발자 프로덕트를 개선하기 위한 AI 세션 등이었다고. 신정아 씨의 프로젝트 ‘Education4All’ 아쉽게도 수상작에 들지 못했지만, 영어 회화가 며칠 만에 늘어서 오는 놀라운 경험을 했다고 한다.

 

참가자들과의 Q&A

Q. 한국 개발자와 외국인 개발자의 차이는 무엇인가?

정욱재: 발표 등을 리딩하는 대부분 외국인이다. 그러나 실제 개발 리딩은 한국인인 경우가 많다.

홍승환: 한국인들은 손도 빠르고 책임감도 있다. 그래서 밤에 일하는 사람 찾아보면 한국인이다. 용역같은 느낌이라 페이스북도 한국인 초대를 많이 같다. 그외 댄스타임 신체 긴장을 풀어주고 열량을 소비하는 시간이 있는데 한국인은 아무도 추지 않는다.

안미진: 한국개발자는 어떻게든 해놓고 끝낸다. 끝낼 같아서 물어보면 외국인들은 거기에 긴장감을 느끼지 않는다.

홍승환: 제출 직전에 기능 하나라도 추가하려고 노력하는데, 다른 국가 엔지니어는 해당 기능을 20 안에 해달라고 하면 어떻게든 해보는 아니라 된다고 거절한다. 한국과 문화가 다른 것을 느꼈다. 특히 우리 우간다 팀원은 갑자기 폰을 빌려달라길래 빌려줬더니 마크 저커버그가 잠깐 들렀을 셀피찍고 거였다. 자신의 카메라가 좋지 않아서 빌려달라고 했었던 거다. 바빴는데.

Q. 가장 인상적인 아이디어는 무엇이었나

홍승환: 난민이 입국했을 서류를 어떻게 하는지 모르는데, 챗봇이 이를 알려주는 것이었다. 여권이나 입국 서류 등을 대신 작성해주는 . 프로젝트를 보고 많은 사람들이 감동했다. 프로젝트(human to human) 결국 우승했다.

Q, 직접 만든 아이템들은 계속 유지할 셈인가

정욱재, 홍승환: 코드베이스에 코드 뭉치를 올려서 기여하는 형태로 프로젝트 유지를 하려고 한다

안미진: 코드 커너리 역시 만들고 유지하고 발전시키는 형태로 놔두려고 한다.

Q. 가장 힘든 점은 무엇이었나

신정아: 식사가 멕시칸 푸드밖에 나와서 힘들었다.

박상현 페이스북 매니저(도움말): 실리콘 밸리에서 건강한 음식 바람이 불었는데 그래서 유행하는 음식이 멕시칸 푸드다. 생식도 많이 하는 한국인 입장에서는 정말 어이없는 일이다. 소스 한국인에게는 무거울 있다.

나머지 참가자: 우리는 사실 맞았다.

 

글. 바이라인네트워크
<이종철 기자> jude@byline.network

관련 글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다