함께 일하고 성장할 때 기쁨을 느끼는 블록체인 개발자, 김재석

LINE에는 재미있는 이야기를 가진 개발자들이 많이 있는데요. Engineering 블로그에서 그런 멋진 개발자들을 한 분, 한 분 직접 찾아뵙고 인터뷰하여 여러분께 소개 드리려고 합니다.

그 첫 인터뷰를 LINE 블록체인 메인넷 개발자 김재석 님과 함께 했습니다.

 

함께 일하고 함께 성장할 때 기쁨을 느끼는 개발자, 김재석

Q. 반갑습니다. 재석 님. 간단한 자기 소개 부탁드립니다.

A. 안녕하세요. 김재석입니다. LINE에서 블록체인 개발자로 일하고 있고요. 가장 좋아하는 일은 사람들한테 도움이 되거나 사람들이 재미있어할 만한 제품을 만드는 거에요. 그래서 틈틈이 사이드 프로젝트를 하거나 오픈 소스 프로젝트에도 많이 참여하고 있어요. 제가 만들거나 기여한 제품을 많은 분들이 사용하시는 것을 볼 때 정말 기분이 좋습니다.

Q. 개발자라면 가장 기본적으로 받을 만한 질문부터 드릴게요. 재석 님은 어떻게 개발을 시작하게 되었나요?

A. 중학교 때 처음 홈페이지를 만들어 봤어요. 거의 20년 가까이 되었네요. 홈페이지를 만들어서 퍼블리싱하니까 사람들이 막 들어오더라고요. 특별한 기능이 있는 것도 아니었는데 하루에 100~200명이 들어오는 게 당시 중학생이었던 저한테는 정말 신기한 경험이었어요. 이후 홈페이지에 새로운 기능을 붙이고 싶어서 JavaScript를 공부했고요. 제로보드도 사용했었는데요. 계속 쓰다 보니 직접 고쳐 써보고 싶은 욕심이 생겨서 그때부터 PHP를 조금씩 써봤습니다. 그런데 이렇게 고쳐쓸 거면 차라리 전부 직접 만들어보는 게 낫겠다는 생각이 들어서 본격적으로 PHP를 사용하게 되었어요. 그래서 제 마음속의 공식적인 첫 서버 사이드 언어는 PHP입니다. 🙂  2007년 정도까지 PHP를 사용했고요. 2008년부터는 Python을 주력 언어로 사용하고 있습니다.

Q. 2008년부터 Python을 썼다면 국내에서도 꽤 오래 사용한 편인 것 같아요. 어떤 이유로 Python을 시작하게 되었나요?

A. 그때가 PHP 5로 넘어가는 시기였는데요. 언어 차원에서 이해하기 어려운 동작들이 있어서 고생을 많이 했어요. 그래서 그때 여러 언어를 다루어 보고 싶다는 생각을 하게 되었던 것 같아요. 제가 느꼈던 Python의 매력은 라이브러리가 풍부해서 범용적으로 사용할 수 있다는 점이었어요. 또한 Dropbox에서 Python을 본격적으로 사용하고 있다는 소식도 고민 중이었던 저에게 큰 용기를 주었습니다. ‘그렇게 큰 기업이 사용할 정도라면 Python 꽤 괜찮은 거 아닌가?’라는 생각이 들었거든요. 지금도 저는 무언가를 만들때 Python으로 하는 게 제일 편해요.

Q. 틈틈이 사이드 프로젝트도 진행했었다고 말씀해 주셨는데요. LINE에 들어오기 전까지 어떤 프로젝트를 했었나요? 기억에 남는 프로젝트들을 소개해 주시면 좋을 것 같아요.

A. 첫 번째는 2009년에 만든 한트윗이라는 서비스예요. 당시 미국에서는 스마트폰과 트위터 서비스가 함께 나오면서 엄청난 붐을 일으켰었는데요. 그때만해도 우리나라에서는 스마트폰을 거의 사용하지 않고 있던터라 대부분 컴퓨터로 트위터를 이용하고 있었어요. 그래서 트위터를 모바일에서도 쓸 수 있게 만들고 싶었어요. 한트윗은 문자 메시지를 이용해 트위터에 글을 올리고, 답글까지 문자 메시지로 받아 볼 수 있게 만든 서비스였습니다. 글을 올리는 건 무료였지만 답글을 받는 건 유료였는데요. 기업에서 니즈수요가 좀 있었던 건지 학식(학교식당 밥) 먹을 만큼은 돈을 벌었던 기억이 나네요. 두 번째는 스포카(spoqa)에서 만들었던 도도 포인트입니다. 이 서비스는 현재도 1,000만명 이상의 유저가 사용하며 잘 서비스되고 있어요. 사용자가 굉장히 많았고, 일본에서도 사용하고 있다고해서 뿌듯한 기억으로 남아있습니다. 한트윗과 도도 포인트 덕분에 제가 꽤 알려졌던 것 같아요.

재석 님이 2009년에 만든 한트윗 서비스

Q. 사람들에게 도움이 되는 제품 만드는 걸 좋아하신다더니 정말 그런 프로젝트들을 많이 하셨군요. 그런데 그렇게 프로젝트를 진행할 때 혼자 하는 걸 선호하세요? 아니면 팀으로 하는 걸 선호하세요?

A. 혼자 개발하면 내 취향대로 모든 것을 결정할 수 있어서 편하기는 하죠. 하지만 저는 여럿이 팀으로 개발하는 걸 좋아하고 즐기는 편이에요. 여럿이 개발하면 혼자서는 만들 수 없는 뛰어난 제품을 만들 수 있다고 생각하거든요. 다같이 고민하고 토론하고 협업하면서 함께 성장하는 느낌을 받을 때 정말 행복해요.

Q. 협업하는 것이 힘들지는 않았나요? 협업을 잘하기 위해 노력했던 재석 님의 경험담이 궁금합니다.

A. 저는 효율적인 협업을 위해 고민을 많이 하는 편인데요. 우선 서로를 부르는 호칭을 바꿔 보았습니다. 요즘이야 대부분의 IT 회사에서 닉네임을 쓰거나 ‘ㅇㅇ님’이라는 호칭을 사용하는데요. 스포카에서 이런 호칭을 사용하기 시작했을 때가 2010년 정도였거든요. 꽤나 빨리 도입했던 편이죠. 그리고 개발 방법론 중 하나인 애자일 방법론의 페어 프로그래밍을 적용해 보기도 했었어요. 개발에서 겪게 되는 상당수의 병목현상은 사실 중간에 모르는 게 발생해서 멈춰있을 때 발생해요. 게다가 본업도 아닌 사이드 프로젝트라면 더욱 시간이 오래 걸리게 되고요. 제 경험상 이런 걸림돌이 많이 나타나는 환경에서는 페어 프로그래밍이 효과적이었습니다.

Q. 페어 프로그래밍 이야기가 나와서 말인데요. 혹시 페어 프로그래밍하다가 둘 다 해결 방법을 모르는 문제에 부딪히면 어떻게 하시나요? 

A. 그런 경우가 가끔 있죠. 그럴 때 페어 프로그래밍의 장점은 ‘이렇게 찾아보자, 이렇게 검색해 보자’라는 고민을 함께 해볼 수 있다는 점이에요. 페어 프로그래밍을 해보면 두 사람의 백그라운드가 서로 다른 경우가 많이 있는데요. 모르는 게 나와서 함께 고민하다 보면 각자 가진 백그라운드에 따라 문제를 해결하는 방법이 조금씩 다르다는 걸 알 수 있어요. 문제를 풀어나가는 또 다른 방법을 서로 배울 수 있는 거죠. 또, 보통 어떤 이슈를 해결한 방법을 외부에 글이나 발표로 공유할 땐 주로 멋진 것만 보여주려고 하기 마련인데요. 둘이 딱 붙어 앉아있으면 발표 자리 같은 데선 볼 수 없었던 자신만의 꼼수(!)를 쓰는 것도 볼 수 있어요. 이런 페어프로그래밍의 장점을 활용해 문제를 해결해 보려고 노력합니다. 물론 그러다가 문제에 대한 해결 방법이 정 일치하지 않으면 잠깐 헤어졌다가 다시 만나기도 하고요.

페어 프로그래밍할 때 한 가지 팁을 드리자면 두 사람의 역할을 나누는 게 좋아요. 한 사람은 코드 작성에 집중하고, 다른 사람은 개발 방향에 집중하는 거죠. 키보드를 잡고 있는 사람이 생각을 직접 코드로 옮기면 소통이 어려워지는 경우가 종종 있었거든요. 저는 이렇게 역할을 나누어 진행했던 덕분에 페어 프로그래밍하는 사람과 대화를 원활하게 이어나갈 수 있었던 것 같아요.

Q. LINE에서도 팀원들과 페어 프로그래밍 하고 계시나요?

A. 네. 하고 있습니다. 덧붙여서 저는 협업할 때 서로 대화를 많이 나누는 게 좋다고 생각하는 편인데요. 보통 페어 프로그래밍을 하면 이야기를 많이 하게 되니까 다른 분들께 방해가 될까봐 회의실에서 페어 프로그래밍을 진행하기도 합니다.

 

서비스 만들던 개발자, 블록체인 개발자가 되다

Q. 이렇게 얘기를 듣다보니 정말 다양한 분야에 관심을 가지고 계셨네요. 그렇게 다양한 분야를 경험하다가 블록체인에 특별히 더 관심을 가지게 된 특별한 계기가 있나요?

A. 막상 블록체인이 기술적으로 한창 핫할 때에는 관심 없었는데요. 매매를 하다 보니 관심을 가지게 되었습니다. 어찌하다 2017년 4~5월쯤에 코인을 사게 되었는데, 자꾸 오르기 시작하니까 관심이 가더라고요. 그리고 왜 비트코인을 신뢰할 수 있는 자산이라고 말하는지, 도대체 블록체인의 어떤 구조가 신뢰를 주게 되었는지 궁금했습니다. 그리고 디지털 세계에서 복제가 아닌 소유의 이동이라는 개념을 기술적으로 만들어냈다는 것도 매력적으로 다가왔습니다. 앞으로 더욱 많은 데이터들이 블록체인으로 유입된다면, 한층 더 매력적으로 발전하게 될 것이라고 생각합니다.

Q. 입사 전부터 개인적으로 블록체인 프로젝트를 하셨다고 들었어요. 어떤 것이었나요?

A. 블록체인 기반의 ‘네코유메’라는 게임을 만든 적이 있습니다. 사람들과 커뮤니티를 만들어 게임하면서, ‘게임을 중앙 서버 없이 진행할 수 있을까’라는 궁금증이 있었는데요. 이전에는 여느 게임처럼 서버 애플리케이션을 배포했습니다. 서버를 담당하는 운영자도 있어서 운영자가 관리를 하는 방식이었는데요. 아이템 배포 등을 중앙 서버나 관리자 없이 진행할 수 있는 방법에 대한 고민을 먼저 하게 되었습니다. 그러다 게임의 모든 동작을 블록체인 안에 올린다면 가능하겠다고 판단해 혼자 게임을 만들었고요. 실 구동이 되기까지 한 달 반 정도 걸렸습니다.

Blockchain for Adventure
네코유메 홈페이지에서 발췌한 그림입니다. 직접 그리셨다고 하네요!
네코유메 동작 영상입니다. 흥미진진?!

Q. 생각보다 훨씬 짧은 기간 안에 만드셨군요. 네코유메는 어떤 기술 스택을 활용하셨나요?

A. 개인적으로 새로운 시도를 할 때, 이미 알고 있는 개발 언어로 새로운 것을 만들거나, 새로운 언어로 아는 것을 만들거나. 둘 중 하나에서만 새로운 시도를 하는 편입니다. 블록체인이 저에게는 새로운 것이었기 때문에 언어는 기존에 익숙한 Python을 사용했습니다. 덕분에 전통적인 블록체인 엔진이 채택하는 스택과 다른 방식으로 진행하게 되었는데요. 네코유메는 Python, Flask, Celery, SQLite 등 익숙한 스택을 활용했습니다. 

Q. 네코유메 게임의 유저는 어느 정도였나요? 최근 네코유메 프로젝트의 진행 상황도 궁금합니다. 

A. 유료 홍보 없이 오가닉(organic)한 방식으로 홍보했는데도 많을 때는 하루에 천 명 정도 게임 유저가 들어왔습니다. 게임 안에서 채굴 방식으로 코인을 획득할 수 있고, 게임을 통해서 아이템을 획득할 수도 있었습니다. 또한 코인을 통해서 아이템도 합성할 수도 있도록 모델을 짰습니다. 게임은 정식으로 출시해 오래 할 수 있는 것은 아니었고, 시험 버전으로 한 두 시간 체험이 가능하도록 만든 것이었는데요. 외국에서도 게임을 하러 접속하는 사람들이 있어서 신기했습니다. 특히 관리자가 사라져도 이론 상으론 게임이 유지될 수 있다는 점이 매력적이었습니다. 다만 언어 자체의 업데이트 등과 같은 예외적인 경우엔 관리가 필요했습니다. 개발 제안을 받고 여러 의견을 들으며 게임을 발전시키는 것이 오픈 소스 커뮤니티의 성향과 비슷하다고 생각했습니다. 현재 개발자분들이 참여하고는 있지만, 게임 자체가 활성화되어 있진 않습니다.

PyCon Korea 2018에서 열정적으로 네코유메에 대해 발표 중인 재석님

Q. LINE으로 이직을 결정하고 나서, LINE에서도 특히 블록체인 관련 프로젝트에 매력을 느낀 이유가 있을까요?

A. 저는 처음에는 기술 위주로 살펴보다가 미래에 가능성이 있고 개인적으로 역량을 발휘할 수 있는 부분이 있다고 판단하면 해당 분야에 일정 시간 이상을 투자하는 편입니다. 현재는 AI를 비롯하여 떠오르는 어젠다가 많이 있는데요. 개인적으로는 블록체인에 매력을 느꼈습니다. 개발 커뮤니티에 참여해보니, 즐거움은 물론 성취감까지 느낄 수 있는 흥미로운 분야라는 생각이 들었습니다. 또한 앞으로 디지털 자산의 소유와 거래를 증명하는 기술로 블록체인 기술이 보편적으로 쓰일 것이라는 확신이 있었기 때문에, 블록체인과 관련된 기회를 살펴 보다가 LINK 체인 개발을 선택하게 되었습니다. 그리고 평소 서비스와 사용 경험을 중요하게 생각했었는데요. LINE의 좋은 서비스들을 블록체인 안에서 활용할 수 있는 좋은 기회라고 생각했습니다.

 

LINK 로고입니다.

Q. LINK를 만들고 있는 개발자로서 LINK에 대해 직접 소개해 주시겠어요?

A. 제가 만들고 있는 만큼 멋지게 설명해야겠죠? LINK는 사용자 기여에 보상을 하는 서비스 생태계를 만들기 위한 보상 단위라고 볼 수 있습니다. 쉽게 말하면 사용자는 LINK를 제공하는 서비스에서 활동하고 기여하며 보상으로 LINK를 받는 거죠. 개발자 역시 ‘합리적인 보상을 통해 더욱 많은 사용자가 참여’하는 서비스를 개발함으로써 만족감을 얻을 수 있을 것이라고 생각해요. 게다가 LINK는 LINE의 강력한 서포트를 받고 있으니 더욱 좋을 거라고 생각합니다.  LINE이 블록체인 노드부터 개발 생태계, 서비스 인프라까지 다양한 면에서 물심양면 지원하고 있거든요. 그렇기 때문에 초기 참여가 다소 부족할 수 있는 생태계의 한계를 충분히 극복할 수 있을 거라고 기대하고 있습니다. 

Q. LINE이 왜 기존 서비스를 활용하지 않고 새로운 서비스를 통해서 블록체인에 접근한다고 생각하시나요?

A. 개인적으로 LINE은 굉장히 열정적인 회사라고 생각합니다. 이미 많은 성장을 이뤄냈지만, 또 다른 목표를 세워서 완전히 새로운 시장에서 완전히 새로운 고객을 향해 다시 도전하고 있습니다. 이러한 맥락에서 새로운 서비스를 활용하고 있다고 생각합니다. 또한 현재 실리콘 밸리의 거대한 경쟁사들이 블록체인에선 살짝 뒤처져 있는데요. 이런 부분에서 생각해보면 LINE에겐 좋은 기회가 왔다고 생각합니다. 지금 LINE은 빠르고 새로운 서비스를 통해서 성장하기 위한 기회를 확보해 나가려고 하는 것 같습니다.

Q. 사실 블록체인 업계에는 이미 수많은 블록체인들이 나와있는데요. 이들과 비교했을 때 LINK만의 장점은 무엇일까요?

A. LINK가 지향하는 점이 다른 블록체인들과 다른 점은 크게 두 가지가 있는데요. 먼저, 우리는 정보가 서비스에 원활히 기록되고 쓰일 수 있는 서비스 오리엔티드 블록체인(Service Oriented Blockchain)을 지향합니다. 따라서, 서비스가 원활하게 구동될 수 있도록 높은 TPS를 제공하는 것과, 각 앱별로 독립된 네트워크에서 dApp을 만들 수 있도록 지원해주는 것에 집중하고 있습니다. 또한, 각 서비스들이 LINK와 연계되어 LINK의 성장이 LINK 체인 내의 서비스들에게도 영향을 미칠 수 있도록 적절한 방향을 제시하려 합니다.

Q. 블록체인을 개인 프로젝트로도, LINK로도 개발해보셨는데요. 그런 관점에서 LINK의 어떤 점이 특별할까요?

A. 대중적인 신뢰를 얻는다면 자산으로 취급될 수 있는 화폐를 누구나 만들 수 있다는 점이 블록체인이 가지고 있는 특별한 점이라고 생각합니다. 따라서 어디에, 어떻게 화폐를 쓸 수 있는지 잘 제시해 주는 것이 화폐의 가치를 높이는 데 중요한 역할을 한다고 생각하는데요. 이런 관점에서 LINE의 가장 큰 핵심 역량은 글로벌 서비스인 것 같습니다. 이미 제공되고 있는 서비스는 물론 앞으로 새로 제공될 서비스에서도 LINK라는 화폐를 이용할 수 있고, 가치를 만들어낸 사용자들에게는 보상이 주어지고, 그 보상이 인센티브가 되어서 더욱 활발한 참여를 유도하는 환경을 갖추고 있다는 점이 LINK가 가지고 있는 특별한 점이 아닐까 생각합니다. 제 생각엔 결국 서비스가 좋은 곳이 좋은 화폐를 만드는 곳이 될 것이라고 생각하는데요. 바로 이러한 점에서 LINK의 전망을 긍정적으로 생각하고 있습니다.

 

LINK 체인 기술과 dApp 생태계 

Q. 그러면 본격적으로 LINK 체인 기술과 생태계에 대한 이야기를 나누어 볼게요. 현재 LINK 상에서 운영되고 있는 서비스가 있나요?

A. 네. 현재 일본에서 포캐스트(4CAST)(일본어)와 위즈볼(Wizball)(일본어), 두 가지 서비스가 잘 운영되고 있습니다. 포캐스트는 사용자의 예측을 통해서 미래를 예측하고 예측 성공에 대한 사용자 보상을 LINK 포인트를 줌으로써 참여를 유도하는 서비스이고요. 위즈볼은 LINK로 보상하는 지식iN 같은 서비스입니다. 이런 서비스들을 통해 LINK가 분배되고 있는데요. 여기에 3개 이상의 서비스를 추가로 준비하고 있습니다. 물론 서드파티들이 LINK에서 dApp을 만들 수 있는 환경도 준비 중입니다.

Q. 그러면 포캐스트라는 서비스는 모든 트랜잭션이 블록체인에 기록되고 있어요?

A. 현재 포캐스트의 모든 액티비티를 블록체인에 기록하고 있지는 않습니다. 대부분은 오프체인으로 저장하고, 이에 대한 보상이 이루어질 때만 LINK 체인에 기록하는 방식이죠. 예측을 맞춘 사람들에겐 포캐스트 포인트를 지급하고, 포캐스트 상위 랭크에 있는 사람들에게만 LINK로 포인트 보상을 주는 방식이에요. 아직은 서비스를 시작한 지 얼마 되지 않았기 때문에 핵심 내용만 블록체인에 기록하고 있으며 서비스가 성장함에 따라서 더 많은 내용이 블록체인에 기록될 수 있도록 할 예정입니다. 현재 LINK Scan 사이트에서 LINK에서 발생하는 트랜잭션을 볼 수 있습니다.

아직 LINK가 ‘서비스 오리엔티드 블록체인(Service Oriented Blockchain)’이라는 목표에 기술적으로 다다르지 않았기 때문에, 처음부터 완전히 탈 중앙화된 서비스를 만들기보다는 단계적으로 나누어 진행하는 방향을 선택했습니다. 처음에는 최소한의 트랜잭션만 블록체인에 기록하고, 단계적으로 인터체인과 컨센서스 알고리즘을 개선하면서 모든 dApp 서비스의 트랜잭션이 LINK 체인에 올라갈 수 있도록 지원할 예정입니다.

Q. 서비스를 가지고 있는 개발자가 LINK 체인에 들어오면 뭐가 달라지나요?

A. 먼저, 개발 키트를 이용해서 누구나 쉽게 블록체인 기반의 서비스를 개발할 수 있습니다. LINE은 이미 다양한 개발자 생태계를 운영해 본 경험이 있기 때문에, 서드파티 지원도 잘 해 줄 것이라고 생각합니다.

또한, 토큰 이코노미에 LINK를 포함시킬 수 있어서 서비스 사용자들에게 LINK로 보상을 하는 게 가능합니다. 현재는 LINE이 직접 만든 서비스에서만 LINK로 보상이 가능하지만, 추후 dApp 속 서비스에서도 LINK로 보상할 수 있도록 만들 예정입니다.

마지막으로 LINE에서 LINK를 보상으로 제공하기 때문에, 많은 LINK 홀더들이 생길 겁니다. 이렇게 다른 코인 대비 넓은 홀더 풀은 충분한 매력으로 다가갈 것이라고 생각합니다.

개별 서비스들이 각자 암호 화폐를 발행하여 자체 블록체인을 구축하는 것보단, 하나의 큰 단일 코인으로 통합하여 규모의 경제를 만들어내는 게 유리할 거라고 생각합니다. 유럽의 각 국가들은 유로라는 단일 화폐로 화폐 체계를 통합하면서 다양한 경제적 부가가치와 규모의 경제를 이뤄냈습니다. 이와 같이 서비스 하나로 약 100~500억 원 정도 규모의 한정된 사용처와 기능을 지닌 화폐를 만들어 내는 것보단, LINK 네트워크에 참여하여 다양한 사용처를 가진 몇 조원 규모의 화폐로 함께 시장을 활성화시킨다면 혼자 하는 것보다 더 큰 부가가치를 만들어 낼 수 있을 것입니다. 물론 그런 단계까지 가기 위해선 많은 노력이 필요하겠지만, LINE의 역량이라면 충분히 만들 수 있는 그림이라고 생각합니다.

Q. 개발자는 LINK 생태계에 어떤 식으로 참여할 수 있나요?

A. 빠른 시일 내에 누구나 LINE의 블록체인 엔진을 이용해 실제 자기의 컴퓨터에서 LINK 블록체인을 구동해보고, 원하는 데이터를 넣고 코드를 실행해볼 수 있도록 지원할 예정입니다. 또한 개발 지원 뿐 아니라 다양하게 개발된 서비스들을 어떤 방법으로 LINK와 연동시켜 줄지에 대해서도 고민하고 있습니다. 각자 자신의 LINK 블록체인을 구동해 서비스를 만들어 제공하면, 사용자가 LINK로 보상받을 수 있는 방법을 생각 중입니다.

 

LINK 개발 과정 이야기

Q. LINK 체인을 개발하는 과정에서 특히 재미있었거나 힘들었던 에피소드가 있었나요?

A. LINK는 아무것도 없는 상태에서 처음부터 개발한 것이 아니라 ICON과 루프체인(loopchain)을 조인트 벤처로 만들면서 내부화하는 과정을 거쳤습니다. 서로 다른 회사와 협업하면서 플랫폼을 만들어 가는 과정이었는데요. 다른 회사의 역사가 녹아 있는 코드를 이해하는 과정이 필요했습니다. 서로를 이해하고 서로에게 익숙해지면서 기술을 내재화하는 경험을 했는데요. 난이도는 높았지만 협업을 하니 처음부터 만드는 것보다 빠르게 론칭할 수 있었습니다. 이렇게 빠르게 협업하고 결정 내리는 과정을 압축해서 경험할 수 있었는데요. 작은 회사에서는 할 수 없는 경험이었다고 생각합니다. 이와 유사한 경험들이 LINE 안에서는 많은 것으로 알고 있습니다. 코드만 봤을 때는 오랜 기간 동안 개발된 이더리움 기반으로 개발하는 것도 하나의 선택지가 될 수 있었습니다. 하지만 LINK는 이더리움 기반 대신 아이콘 루프 팀의 노하우를 적극 흡수할 수 있는 선택을 했고 결과적으로 서비스를 더욱 빨리 론칭할 수 있는 환경이 만들어졌다고 생각합니다.

Q. LINE에서 블록체인 개발을 하면서 가장 중요하게 생각했던 점이 있나요?

A. LINE은 특히 사용자 경험을 중요하게 생각하는 회사입니다. 블록체인 업계는 유독 인프라 측면이 강조되는 업계인데요. 그래서인지 사용할 수 있는 게 없어도 일단 테스트넷, 메인넷을 론칭하고, 그 후에 사용할 수 있는 dApp을 찾는 식으로 진행되는 경우가 많았습니다. 그런데 그렇게 진행되면 결국 대부분 dApp의 실 수요와 맞지 않게 되어버립니다. 결과적으로 수많은 블록체인 인프라들이 론칭되었지만, 정작 쓸만한 건 별로 없었는데요. LINE은 ‘유저가 실질적으로 유용하게 사용할 수 있는 dApp을 만드는 것을 목표로 정하고 그걸 제대로 내놓는다’라는 분명한 목표를 정하고 그에 집중하여 개발을 진행했습니다. 그렇기 때문에 서비스가 론칭되었을 때 성취가 분명하게 나타나는 편이어서 굉장히 좋았습니다. 예를 들어, ‘업데이트된 버전을 적용했을 때 버그가 있다, 혹은 성능에 이슈가 있다’라는 것의 판단 근거가 ‘트랜잭션을 받는 과정에 성능 이슈가 있어서 서비스 사용에 문제가 있다’라는 것이 되는 식입니다. LINE에선 사용자 경험을 판단의 중심에 놓고 개발하였습니다. 서비스 오리엔티드 블록체인을 지향하는 경우가 다른 대형 경쟁사에선 거의 없었는데요. 대부분 플랫폼 구축을 우선하고, dApp은 나중에 개발한다는 입장이었습니다.

Q. LINK는 Python으로 구현되었다고 들었어요. Python으로 구현된 메인넷이 ICON이나 LINK 외에도 또 있나요? 그리고 Python으로 블록체인을 개발하면 어떤 장점이 있을지 궁금하네요.

제가 알기론 특별히 있는 것 같지 않습니다. 메인넷 구현에는 Go와 C++이 주로 쓰입니다(둘 중에선 Go가 조금 더 앞서가고 있는 것 같습니다). 메이저 블록체인 중에서 Python 구현체는 ICON뿐으로 압니다. Python은 여러 분야에서 널리 쓰일 수 있는 강력한 라이브러리 생태계를 가졌으면서도 쉬운 프로그래밍 언어입니다. 누구나 무엇이든 빠르게 만들 수 있습니다. 따라서, 블록체인 커뮤니티에서도 빠르게 첫 구현체를 개발할 때, 새로운 컨센서스를 실험할 때 등과 같은 경우에 채택되고 있습니다.

 

블록체인 개발자되기, 어렵지 않아요

Q. 지금까지 LINK 체인 기술과 개발 과정에 대한 이야기를 나누어 보았는데요. 혹시 블록체인 엔진 개발자로서 느낀 아쉬운 점이 있나요?

A. 먼저, 블록체인 코어 엔진 쪽엔 거짓 정보가 너무 많아서 그 속에서 진짜 정보를 가려내는 것이 매우 어렵습니다. 정보를 찾을 때 노이즈도 매우 많기 때문에, 진짜로 체크해야 하는 알고리즘을 찾는 것이 힘듭니다. 따라서 리서치에 시간이 많이 드는 편입니다.
둘째로 동료가 많이 없습니다. 용어나 콘셉트가 일반적이지 않고, 블록체인 업계에서 이미 쌓아놓은 것들로 인해 진입장벽이 있는 것처럼 느끼시는 것 같습니다. 그래서 많은 사람들이 쉽게 접근할 수 있는 분야가 아니라고 생각하시는 것 같은데요. 막상 진입하고 나면 개발 자체는 어렵지 않은 것 같습니다. 특히 개인적인 생각으로는 LINE에 이미 블록체인과 관련된 다양한 경험을 보유한 좋은 개발자분들이 많이 계셨기 때문에 dApp과 블록체인 개발이 한층 수월하지 않았나 싶습니다.

Q. 블록체인 개발자를 지망하는 사람들에게 해주고 싶은 말이 있나요? LINE 블록체인 개발팀에선 어떤 사람과 함께 일하고 싶은가요?

A. 프로덕트를 만들면서 인프라에만 집중하는 사람보다는 ‘결국 어떻게 엔드유저(end user)와 블록체인을 연결할 수 있을까’,  ‘실생활에서 블록체인이 어떻게 이용될 수 있을까’를 고민하는 사람이면 좋겠습니다. 
특히 오픈소스 커뮤니티에 참여한 경험이 많은 사람이면 좋겠는데요. 블록체인 서비스가 오픈소스와 비슷한 맥락으로 진행되었기 때문에 이런 대화와 논의의 역사와 맥락을 잘 이해하고 있는 사람이라면 좋을 것 같습니다.

Q. LINE에서 이루고 싶은 목표가 있나요?

A. LINE에서 글로벌하게 성공한 서비스를 꼭 만들어보고 싶습니다. 그래서 글로벌 사용자가 늘어나면, LINK 사용자도 자연스럽게 늘어나겠죠?

Q. 마지막으로 홍보 말씀하신다면?

A. LINE에서 함께 일할 블록체인 개발자를 모시고 있습니다. 아래 링크 확인해주세요!

Related Post