이번에는 어떤 개발자를 섭외하지 고민하던 저에게 누군가 ‘재승 형이 천재이긴 한데…. ‘라고 하셨습니다. ‘어떤 천잰데요?’라고 물으니 옆에서 ‘남들이 한 달 할 일을 하루 만에 하는?’이라든가 ‘그냥 존나 천재지.’라는 말이 나오더군요. 그래서 저는 어떻게든 하재승님을 꼬드겨서 인터뷰를 진행해야겠다고 마음먹고 주변의 인맥을 통해 연락을 시도했습니다.
근데 천재라고 해서 긴장한 거 치곤 ‘저 같은 사람에게 들을 이야기가 뭐 있을까요?’라며 아주 겸손한 자세로 인터뷰에 응하시더라고요. 인터뷰하며 자꾸 저보고 미녀라고 하셔서 다른 때보다 특별히 신경 써서 인터뷰 원고 썼음을 고백합니다.
와일드한 인상과는 달리 매우 소녀 같은 성격의 소유자이시더군요. 하지만 제가 ‘그렇게 천재시라면서요?’라고 묻자 수줍게 ‘네…. ‘라고 대답하시기도…. 그럼 네오플 개발자 하재승님을 만나보겠습니다.
이름 혹은 닉네임: 하재승, ipknHama 입큰 또는 하마
위치: 낙성대동과 역삼동
소속: 현재 NEOPLE 던파 프로젝트에서 기존 코드 뒤엎기를 담당하고 있다.
내 기기: iPhone 5 / 하스스톤 머신이 되버린 iPad Air / MacBook Air 2011년형
신림동 캐리: 안녕하세요.
하재승: 안녕하세요.
신림동 캐리: 초면에 이런 말을 하기 좀 그렇지만….
하재승: 네?
신림동 캐리: 주변으로부터 ‘존나 천재’라고 소개받았다. 아무튼 간단한 자기 소개 부탁한다.
하재승: 응? 존나 천재라고 하기엔 솔직히 나보다 잘난 사람이 너무 많지만… 나를 간단히 소개하자면 트위터에 쓴 ‘native C++ speaker live in Python land’로 설명이 될 듯하다. 진성 C++ 덕후이고 간단한 코딩은 주로 Python으로 해결한다. 여기서 native란 건 한국어보다 C++이 쉽다는 뜻이다.
신림동 캐리: 존나 천재네….
하재승: 아무튼 이미르, 넥슨, NC를 거쳐 지금은 네오플에서 던파의 묵은 코드와 싸우고 있다. 네오플에 들어오기 전에는 잠깐 이두희님과 함께 ‘멋쟁이 사자처럼’에서 게임 쪽 교육도 진행했었다. 세계 대학생 프로그래밍 대회 결승에 2004년, 2009년에 나갔었다.
신림동 캐리: 2000년대 이후 서울대 컴공과에서 최고 천재라는 말을 들었다.
하재승: 대체 어디서?
신림동 캐리: 낙성대 술집 사운드마인드에서 술 마시다가 옆 테이블과 합류했는데 그런 말을 들었다.
제가 왜 술집에서 옆 테이블과 합류해 개발 이야기나 하고 있었는지 저도 잘 모르겠습니다.
신림동 캐리: 아무튼 개발자 사이에서 존나 천재로 불린다는 사실을 본인은 아시는지?
하재승: 물론 제가 머리도 좋고 학점도 좋고 코딩도 잘하지만 그런 말은 처음 듣는다. 대학 입학하고 몇 년간은 성적이 잘 나와도 내가 개발을 일찍 시작한 편이라 현재로서는 남보다 코딩을 조금 할 줄 알 뿐이라고 여겼고 대회에서 상을 받아도 그저 운이라 생각했었다.
신림동 캐리: 천재인데 겸손하기까지….
하재승: 어떻게 보면 겸손함이라고도 여길 수 있겠지만 나 스스로는 자신감도 없고 마음 한편이 늘 주눅 든 상태였던 것 같다. 그러다 어느 날 내가 존경하던 친구로부터 ‘일정 수준 이상 잘하게 되면 그 다음은 결국 어느 방향으로 더 노력했느냐가 차이가 날 뿐 모두 잘하는 사람인 것’이라는 요지의 이야기를 들었는데, 그게 나에게는 엄청난 깨달음을 줬다. 그런 점에서 누가 나를 천재라고 불러준다면 물론 그 말씀은 굉장히 감사하지만 결국 무의미한 인정이라고 본다. 공부도 하면 할수록 더 할 게 많은 것처럼 개발도 자신의 수준이 올라갈수록 나보다 더 잘하고 뛰어난 사람이 계속 보인다.
신림동 캐리: 왠지 인터뷰 초반부터 숙연해진다.
하재승: 아, 그렇다고 내가 천재가 아니란 건 아니다.
신림동 캐리: 어릴 때 어떤 계기로 프로그래밍에 관심을 갖게 되었는지?
하재승: Westwood에서 만든 ‘Dune 2’라는 게임이 있다. 1992년에 나온 게임인데 커맨드&컨커, 워크래프트, 스타크래프트 등에까지 영향을 준 명작이다. 어릴 때 누군가 이 게임을 알려줘서 플레이해봤는데 실시간으로 여러 유닛이 움직이며 서로 영향을 주고 받는다는 것에 정말로 큰 문화 충격을 받았다. 나중에 알았지만 RTS류 게임의 시초에 가까운 거더라. 아무튼 그런 식으로 내가 만든 룰에 따라 움직이는 새로운 세계를 창조하고, 그 안에서 각각의 개체가 살아 숨 쉬게 할 수 있다는 점에 매력을 느껴서 프로그래밍에 빠져들었다.
신림동 캐리: 얼마 전에 송창규님과 하재승님이 소속되신 개발 모임에 초대받아 갔었지.
하재승: 우리는 ‘하비코딩’이라고 부른다.
신림동 캐리: 하비…라면 보통 여초카페에서는 ‘하체 비만’의 줄임말인데….
하재승: 하비…는 취미의 ‘Hobby’고… 하비코딩 모임 자체는 송창규님이 모은 것이다. 송창규님의 하비코딩 설립 목적을 간단하게 말하자면 ‘사람들끼리 모여서 재미있는 주제로 가볍게 프로그램을 만들어보자. 같이 있으면 서로 동기 부여가 되니 딴짓을 덜 하고 실제 완성까지 이루어지지 않겠냐!’인데 실제로 그렇게 돌아가고 있다.
신림동 캐리: 취미로 개발이라면 솔플이 더 편하지 않나?
하재승: 물론 개발 자체는 각자가 자기 만들고 싶은 걸 만들지만, 생각보다 모여서 같이 코딩한다는 게 도움되는 점이 많다. 이런 거 만들면 재밌겠다 싶어서 뭔가를 시작해도 생각보다 시간이 오래 걸리고 80% 정도 만들면 왠지 의욕이 떨어져 완성을 눈앞에 두고 그만두는 일이 종종 있다. 그래서 이렇게 여럿이 모이면 자극도 되고 좋다.
신림동 캐리: 하비코딩의 고정 멤버, 가끔 오는 멤버 소개 좀 간단히 부탁한다.
하재승: 멤버는 10명 정도지만 평소 5명 내외로 모이게 되는데 여기 로켓펀치 블로그에서 소개된 분이라면 송창규, 최치선, 구종만이 있다. 나머지는 허락받지 않았으니 일단 비밀로♡
개발자의 프라이버시를 지켜주는 로켓펀치 블로그입니다.
그나저나 이게 하재승님과 최치선님의 고등학교 시절 사진이라는데 하재승님께 무슨 힘든 일이 있으셨던 거죠?
신림동 캐리: 하비코딩에서 제가 ‘뭐 만들고 계세요?’하고 물었더니 ‘아무도 쓰지 않을 쓰레기를 만들고 있습니다.’라고 겸손하게 말씀하셨는데… 뭘 만들고 계셨던 건지?
하재승: 실제로 아무도 쓰지 않을 것 같은 쓰레기를 열심히 짜고 있었다.
하재승님이 만들어놨지만 아무도 쓰지 않는 것
1. http://sloud.herokuapp.com/edit – 웹에서 실시간으로 작성되는 프리젠테이션 편집기 (수식지원, 마크다운)
2. 페블 시계용 지하철 도착 표시기 – 미완성
3. http://github.com/ipkn/dumpable – C++용 시리얼라이즈 코드 없이 시리얼라이즈 하는 라이브러리
하재승님이 지금 만드는 중이지만 앞으로 아무도 쓰지 않을 것
Crow – C++ microframework for web(https://github.com/ipkn/crow)
Python Flask는 간단한 웹서버를 적은 코드로 만들수 있게 해주는 툴인데 그와 유사한 코드로 C++에서 서버를 작성할 수 있는 라이브러리다. Python Flask와 C++을 아는 사람이면 다음 코드를 보면 무슨 말인지 이해할 수 있을 것이다. https://github.com/ipkn/crow/blob/master/example.cpp
당연히 C++이니까 성능이 매우 빠르다. C++에는 쓸만한 json 라이브러리나 ORM 도 없어서 직접 구현하는 중이다.
신림동 캐리: 겸손하게 쓰레기를 만드는 중이라 말씀하시지만, 업무 시간 외에도 커리어 스텟을 열심히 찍으시는 모습이 참으로 아름답다. 그럼 일하지 않을 때는 뭐하면서 시간을 보내나?
하재승: 게임 방송을 보거나 개인 프로그래밍을 한다. 요새 게임 방송으로 버리는 시간이 너무 큰 거 같아 줄이는 중이다.
신림동 캐리: 게임 방송이라면 아프리카인가? 막 별풍선 같은 걸 끼얹나?
하재승: 아니 그런 거 아니고 ‘twitch.tv’라고 미국 방송이다. LoL 중계를 볼랬는데 맥북에서 한국 방송을 보려니 다 ActiveX를 깔라는 거다. 그래서 그냥 미국 방송 본다. 왠지 게임 방송을 보면서 영어 공부가 될 거 같다는 기대가 있다.
신림동 캐리: 거짓말하지 마라. 내가 미드를 얼마나 보는데 내 영어 실력은….
하재승: 아무튼 뭔가 꽂힌 프로젝트가 있는 상태에서는(지금은 Crow) 거기에 정신이 팔려서 안 먹고 안 자고 할 때가 많다. 요즘은 업무 시간 외에 사람들과 같이 머신러닝 스터디에 참가하고 있고, 위의 하비코딩에도 주기적으로 나간다.
신림동 캐리: 눈 뜨나 눈 감으나 개발 생각뿐이군.
하재승: 개발에 대해 가르치거나 알려주는 것에 관심이 있어서 예전에는 ‘멋쟁이 사자처럼’ 활동도 하고 페이스북에 강좌용 그룹을 개설한 적도 있었지만, 이 부분에 대해서는 아직 자랑할 만큼 쌓은 게 없으니 패스한다. 아, 그리고 곧 NDC(Nexon Developers Conference) 발표가 있어서 요즘은 주로 거기에 주말을 할애한다.
신림동 캐리: 회사에서 일을 주는 속도보다 하재승님이 일을 해치우는 속도가 빨라서 상사가 좋아하면서도 싫어한다는 전설적인 이야기를 들었는데… 대체 비결이 뭔가?
하재승: 사실 프로라면 일은 스스로 찾아서 하는 게 맞다고 생각한다. 네오플에 갓 입사했을 때 회사에서 정해준 업무량을 받아 프로젝트에 적응하는 기간을 가졌는데, 그때 팀장님이 한 달 예상한 걸 일주일 만에 해내는 일이 간혹 있었다.
신림동 캐리: 존나 천재네….
하재승: 내가 생각하는 내 장점은 단기 기억력이 좋은 편이고, 다양한 프로젝트를 통한 경험치가 쌓여있다는 것이다. 그래서 많은 양의 코드를 볼 때도 남이 짜둔 프로그램의 흐름이나 의도 등을 비교적 빠르게 따라갈 수 있어서 기존의 작업물을 직감적으로 파악하고 ‘이전 동작에 영향을 주지 않으면서 새로 작성하거나 다른 기능을 추가하기’를 좀 더 쉽게 하는 것 같다. 예전에 남의 코드를 디버깅하는데 같이 코드 보면서 코드 추적하고 있으니 상대방이 자기가 짠 코드도 아닌데 어떻게 그걸 다 기억하고 있냐고 신기해한 적이 있다.
신림동 캐리: 존나 천재네….
신림동 캐리: 뜬금 없지만, 손이 빠르면… 스타크래프트도 잘하나?
하재승: 손이 빠른 편은 아니다.
신림동 캐리: 그냥 머리가 빠르단 소린가?
하재승: 글쎄, 머리가 빠른…가? 잔머리는 잘 굴리는 것 같다. 뭔가 막혔을 때 해결책을 빨리 찾아내는 편이지. 근데 아무튼 스타는 택도 없다. 컴퓨터한테도 발린다. LoL도 생각만큼 손이 안 움직여서 관전만 하고 있다.
이 사진으로만 보면 손이 빠른 것 같은 하재승님이신데요.
페블 펌웨어 한글화 등 더 많은 천재 에피소드는 ‘던파를 세 배 빠르게 만든 남자, 하재승 1’로 이어집니다.
잘보았습니다