Home
home
Culture
home
👨🏻‍💻

Hong님

Created
2021/01/04 06:32
Tags
Libplanet
Property
우리 회사는 회사 업무가 곧 오픈소스 활동이기 때문에 그 점이 좋았습니다.
안녕하세요, 플라네타리움에는 누가 일하고 있을까? 라는 주제로 우리 회사 구성원들에 대한 인터뷰를 준비했습니다. 첫 인터뷰는 창업팀으로 합류 후 Libplanet 엔진팀에 계신 Hong님의 진솔한 이야기를 준비했습니다.
Interviewer: 비즈니스 매니저 태학용 Interviewee: 홍민희 이하 '홍님 or 'H'

Q. 첫 인터뷰를 수락해주셔서 감사합니다. 간단한 자기소개 부탁 드려요.

H : 안녕하세요? 플라네타리움 창업 시작부터 합류하여 Libplanet 엔진팀에서 일하고 있는 홍민희입니다. 블록체인 엔진 개발을 하면서, 나인크로니클 백엔드 개발자 역할도 함께 하고 있습니다.
[사진 1] 화상 인터뷰로 진행된 홍님과의 인터뷰

Q. 팀에 합류하게 된 계기는 무엇인가요?

H : 이전 회사에서 같이 일하던 팀원들과 함께 창업 시점에 합류했어요. 당시 창업 멤버들과 다른 회사에서 일을 했는데 서로 마음이 잘 맞았고, 그것 때문인지 성과도 좋았습니다. 그리고 CEO 기준님과는 산업기능요원 시절에 함께 룸메이트로 지냈었고요.
이렇게 좋은 성과를 내면서도 좋은 분위기로 일을 하는 사람들과 함께 일할 수 있다는 점이 장점으로 다가왔고, 마침 제가 관심을 갖고 있던 블록체인과 게임을 함께 만드는 회사를 창립한다는 말을 듣고 합류하게 되었습니다.
회사 입사 전에 블록체인에 대해 한창 관심이 컸고, 블록체인과 게임을 결합하는 회사는 많이 없었기에 재미있으면서 도전적인 분야라 생각했습니다.
[사진 2] 창업팀 사진, 왼쪽에서 3번째가 홍님
그리고 개발자로서 우리 회사 개발정책이 정말 마음에 들었습니다. 저희는 오픈소스로 개발을 하고 있는데요. 사실 개발자가 오픈소스 활동을 하고 싶어도, 풀타임으로 오픈소스 활동을 하기엔 어려움이 많아요. 많은 개발자들이 오픈소스 활동을 하고 싶어도 회사 업무 이후 오롯이 개인 시간을 할애해서 오픈소스 개발을 해야 하는데, 우리 회사는 회사 업무가 곧 오픈소스 활동이기 때문에 그 점이 좋았습니다.

T. 좋은 사람들과 높은 성과를 내면서 하고 싶은 일을 한다, 직장인이라면 누구나 원할 것 같아요. 그렇다면 개발자가 되기로 마음 먹은 계기가 있을까요?

H : 때는 바야흐로 제 초등학생 시절로 돌아가야 겠네요. (웃음) 당시에 개인 홈페이지 만드는 게 유행이었습니다. TV에서 초고속 인터넷이라고 "ADSL" 와 함께 5~30MB 정도의 개인 홈페이지 공간을 무료로 준다는 광고가 시작했을 때 무렵입니다.
당시 모 기업에서 무료로 제공하는 홈페이지 공간에 제가 좋아하는 "포켓몬스터"를 홈페이지로 만들고 싶어하면서 프로그래밍에 흥미가 생겼습니다.
[사진 3] 업무를 보시고 있으신 홍님
하루에 몇 명이 들어오는지 알고 싶은데 어떻게 해야하지? 이미지는 어떻게 올려야 할까? 사람들이 방명록을 남길 수 있게 방명록 게시판을 만들어야겠다! 이렇게 웹 프로그래밍을 시작하면서, 중학생 때까지는 취미로 프로그래밍을 하다 본격적으로 특성화 고등학교로 진학하여, 자연스럽게 프로그래머를 직업으로 선택하게 되었습니다.

Q. 홍님의 직무에 대해 궁금한 분들이 많으실 것 같아요. 어떤 업무를 맡고 있으신가요?

H : 제 업무는 크게 Libplanet 엔진의 문제점을 찾고 해결하는 디버깅(Debugging), 새로운 기능(API)을 추가하는 일로 구분됩니다.
디버깅 (문제 인식부터 해결까지)
1.
문제 인식
엔진에 발생하는 문제를 인식하는 방법은 여러가지가 있습니다. 디스코드 채널 등 게임 유저들의 피드백, Node 상태를 살펴보다가, 외부 보안감사, 우리 엔진을 쓰는 다른 게임 회사에서 알려주는 과정 등 다양한 루트로 문제를 인식하게 됩니다.
2.
이슈 할당
발견된 문제가 엔진팀의 문제가 아니라면 게임팀에 전달하고, 엔진팀의 문제라면 엔진팀 내 이슈를 만듭니다. CTO Swen님께서 전문성, 가용할 수 있는 시간등을 고려하여 담당자를 할당해주십니다.
3.
버그 재현하기
이슈를 면밀히 살펴보고 문제를 재현해 봅니다. 재현을 성공하는 것만으로도 버그 찾기의 50%는 달성한 것이고, 이게 가장 어려운 일이기도 합니다.
4.
버그 수정 및 테스트 수정
그 후 버그를 수정하면서 동시에 버그 테스트 세팅도 수정합니다. 버그 테스트는 엔진을 구현할 때 이상 활동이 발생하면 알려주는 것인데, 테스트도 통과하고 실제 환경에서 발생한 상태이기에 향후 이와 유사한 버그가 발생하더라도 테스트에서 걸러질 수 있도록 합니다.
5.
코드 리뷰
버그와 테스트 세팅이 완료되면 GitHub에 올려서 다른 팀원에게 리뷰를 받습니다. 기능적으로 디버깅이 잘 됐는지, 동작 상의 문제는 없더라도 코드의 효율성, 유지 보수가 쉬운 코드인지 등등에 대해 자유롭게 리뷰를 받습니다. 짧으면 당일에 리뷰가 끝나기도 하지만, 복잡한 내용일 경우 1~2주 정도로 길어지기도 합니다.
6.
문제 해결
최종적으로 실제 게임에 업로드하여 문제가 없는지 확인하고 마칩니다.
[사진 4] 사진 왼쪽부터 홍님, 양님, Swen님, 기준님
새로운 기능(API) 추가
1.
기능 제안 및 토론
엔진 팀 안에서 신규 API를 제안하고 토론하는 것 부터 시작됩니다. 어떤 기능을 추가하는 게 좋은지, 구현할 때 어떻게 하면 좋을지, 개발하면서 고려할 점은 무엇인지 논의합니다.
2.
API 작성 및 리뷰
해당 API를 만들 담당자가 정해지면, 담당자가 주도적으로 API를 만들어봅니다. 어느정도 구현된 API가 만들어지면, 엔진팀 내에서 리뷰를 받습니다.
3.
API 전달 및 사용
리뷰가 완료되면 게임 팀에 API를 전달합니다. 기본적인 문서화와, 가능하면 게임 내에 구현할 수 있는 예제 코드를 함께 작성하여 보내드립니다. 게임 팀에서도 2차적인 리뷰를 하면서 게임 팀에서 해당 API 사용법을 습득할 수 있도록 도와드립니다.

Q. Libplanet을 만들면서 프로그래머로서 흥미로운 점이 있을까요?

H : 흥미로운 점들이 많이 있지만, 간략하게 3가지로 말씀드릴게요.
오픈소스 제품이다.
고객이 일반사용자가 아니라 프로그래머다. 그래서 어플리케이션이 아닌 라이브러리다.
요즘 주류 기술인 탈중앙 기술, 서버가 없다는 것을 가정한 개발이라 흥미롭다.

Q. 쉽지 않은 일을 하고 있으신데, 일하면서 어려운 점은 어떤 것이 있을까요?

H : 엔진은 가장 안쪽 깊은 곳에 있지만, 정작 엔진에 문제가 생겼을 때는 바깥쪽인 게임에서 문제가 발견됩니다. 게임에서 문제점이 발견되면, 그걸 엔진의 어느 부분에 대한 문제인지 조사해야 하는데 인과관계가 멀다보니 문제의 원인이 무엇인지 발견하기가 어렵습니다. 어디를 고쳐야 할 지 감이 안 올 때가 있죠. 하지만 빠른 시간 내에 해결을 해야 할 때, 그 막막함을 무릅쓰고 파고들 때가 업무상 가장 힘듭니다.

Q. 반면, 일하면서 보람을 느낄 때는 언제인가요?

H : 역시 업무를 하면서 보람을 느낄 때는 역시 엔진 팀에서 만든 기능(API)를 활용해서 우리회사 게임팀이나 외부 게임회사의 게임에서 실제 의미(게임이라면 역시 재미) 있는 기능으로 활용될 때가 좋아요. 가장 밑단에서 개발하여, 가장 바깥쪽인 엔드 유저들이 게임 상에서 느끼는 기능으로 구현될 때 큰 보람을 느낍니다. 그래서 항상 새로운 기능을 생각할 때, 최종적으로 유저에게 어떻게 적용되면 좋을지도 생각하고 있습니다.
[사진 5] 2019 논스에서 열린 코드먹는하마 행사에서 우측 상단 붉은 티셔츠 홍님
"의외로 블록체인 기술 자체에 대한 지식은 크게 중요하지 않아요"

Q. 앞으로 어떤 동료와 함께 일하고 싶으신가요?

H : 엔진팀 구인을 하면서 느끼는 게, 우리 회사 오는데 망설이시는 많은 분들이 "블록체인을 잘모른다" 또는 "저는 닷넷 잘 모르는데..." 라고 말씀하시는 걸 많이 들었어요. 그런데 새로 팀에 합류하신 분들을 보면, 위의 두 가지가 크게 걸림돌이 되지는 않았어요.
저희는 업무시간 중 블록체인을 공부하는 시간을 마련하고 있기에 이 시간을 함께하는 것만으로도 충분히 업무를 하실 수 있습니다. 그래서 블록체인이나 닷넷에 대한 지식보다는, 기본적인 코딩과 디버깅 능력이 가장 중요한 것 같습니다. 그래서 결국은 코딩하는 것을 좋아한다는 것이 가장 좋은 자질이라 생각하고요.
요약하자면,
디버깅 경험이 많으면 좋겠습니다. 어떤 프로그램을 만들어보고 덧붙여서 1~2년이라도 유지보수, 개선한 경험이 더 좋습니다. 신입이나 적은 경력자 분들이라 회사 업무적으로 경력이 부족할 수 있겠지만, 취미 수준이라도 준비했다면 좋은 점수를 드리고 있습니다.
오픈소스 프로젝트에 참여하는 것도 경험을 쌓는 좋은 방법입니다. 우리회사 서비스가 오픈소스이기에 업무 적응하는데 도움이 되고 실제 업무도 이와 비슷하기 때문입니다.
저는 전문적인 엄청난 지식이 업무 역량을 크게 좌우하지는 않는다고 생각해요. 이력서와 과제테스트를 보면서 느끼는 것은, 아무리 블록체인을 잘 알아도 코딩을 모르면 영입할 수 없었습니다. 반대로 코딩을 잘 하시는 분이라면, 블록체인에 익숙하지 않아도 좋은 점수를 드렸어요.
저는 코딩 실력은 기초 체력이라고 생각해요. 코딩은 직접 많은 시간과 노력을 통해 자신의 것으로 만드는 시간이 필요한 반면, 블록체인과 같은 지식은 어떤 종목의 룰(Rule)과 같다고 생각해요. 이런 부분은 책을 보면서 배우거나, 함께 공부하거나, 다른 사람이 금방 알려줄 수 도 있기 때문에 결국은 코딩 실력이 가장 중요한 것 같습니다.

Q. 그 외 동료가 가졌으면 하는 소양이 있나요?

개인적으로는 회사(직무) 외에도 자기 열정을 가지고 있는 분들이 좋아요. 저와 다른 관심사를 가진 분들의 관심사를 듣는 것도 좋고, 저도 거기서 배울게 많아요. 그리고 자기 관심사에 열정을 쏟을 수 있는 분이라면, 회사 일에도 적극적일 것 같은 기대가 있어요.
또 한 가지 바라는게 있다면 우리 회사에 아직 여성 프로그래머가 안 계셔서 여성 프로그래머도 오시면 좋을 것 같아요. 지금까지 한 성비로만 구성된 엔진팀의 개발 프로세스, 개발 문화 등 다양한 부분에서 저희의 부족한 점을 채워줄 수 있을 것 같습니다.
끝으로, 리모트 업무에 익숙하신 분이면 좋겠습니다. 당연히 회사에 나와서 일하면 좋지만, 시대가 시대이기에 불가피하게 필요한 능력인 것 같습니다. 또 리모트 업무에 적합한 능력은 그만큼 이야기한 것을 회의록으로 잘 정리 한다거나, 자기 관리가 잘되는 분들이라 생각해요.
"개인의 책임을 묻기 보다는, 문제 해결을 위해 함께 고민하고 실행합니다."

Q. 자랑하고 싶은 우리 회사와 엔진팀의 조직 문화가 있을까요?

H : 저희는 문제가 일어 났을 때 누군가(사람)를 탓하지 않아요. 문제가 발생하면 시스템의 문제점이 무엇인지, 작업하는 방법에 문제가 있었는지 확인하여 같은 실수를 다시 하지 않도록 합니다. 문제에 대한 걱정 때문에 의견을 말하는데 주저하거나, 시도를 하지 못하는 점이 없다는 것이 가장 자랑하고 싶은 문화 입니다.
또, 문제 해결 방법도 자랑하고 싶습니다. 보통 문제가 발생했을 때 이상적인 방법과, 당장을 수습하는 근시안적인 방법이 있는데요. 우리는 문제가 발생했을때 근시안적 방법을 먼저 실행하여 문제해결 시간을 확보하고, 이후 이상적인 해결책을 차후 실행합니다. 물론 '같은 일을 2번 하는 것 아닌가' 라고 생각될 수도 있습니다. 하지만 근시안적인 해결책으로만 덮어둔 문제는 결국 더 중요한 순간에 되돌아 올 때가 많고, 완벽한 해결책은 제때 응대를 못 하게 되는 문제가 있지요. 그러나 두 가지를 순차적으로 실행하면 당장은 힘들어도, 예상할 수 있는 범위 내에서 리스크를 관리할 수 있는 큰 장점이 있습니다.
물론, 저와 같은 생각을 가지고 업무를 하는 팀원들이 있다는 것이 가장 자랑하고 싶은 점입니다.

Q. 홍님에 대해 많은 것을 알게 되었습니다. 끝으로 홍님의 꿈은 무엇인가요?

H. 개인적인 부분과 업무적인 부분 두가지로 답변 드릴게요.
개인적으로는 요즘에는 여러가지 언어를 느껴보고 싶어서 언어를 공부하는 중 입니다. 보통 언어공부를 하는 이유는 유창하게 그 언어를 구사하기 위한 것인데, 저는 특이하게 어학을 배우는 과정 자체에 매력을 느껴요. 언어가 구성되는 체계를 생각하면서 다른 나라 말을 배우는 것만으로도 좋더라고요. 그래도 최종적으로는 한국어를 제외하고 1~2개 언어는 자유롭게 구사하고 싶긴 합니다.
[사진 6] 바쁜 일정 속에서도 인터뷰에 응해주신 홍님 감사합니다.
직무적으로는 Libplanet이 좀 더 여러 팀이 쓰는 제품이 되도록 만들고 싶어요. 지금은 Libplanet 사용자가 거의 우리 회사 게임팀인데, 다른 회사 게임팀이 쓰고 싶어할 정도로 다듬고 싶어요. 누군가에게 쓰인다면 제가 그만큼 쓸만한 엔진을 만들었다고 할 수 있잖아요. 개발자라면 누구나 있을 욕심인 만큼, 저도 우리가 만든 Libplanet 엔진이 더 많은 분들에게 쓰일 수 있도록 노력하고 싶습니다.
바쁜 일정 속에서도 인터뷰에 응해주신 엔진팀 홍님께 감사드리며, 다음 사내인터뷰도 기대해주세요
인재 영입중! 게이밍 역사에 족적을 남길 위대한 도전에 참여하세요 보러 가기

플라네타리움에 대해 더 자세히 알아보기

플라네타리움 미디움
플라네타리움 홈페이지
나인 크로니클 홈페이지