[story] M _ Mediumer interview : Rooney

블록체인, 블록 체인, NFT, 미디움, medium

Possibility Comes True! 안녕하세요, 미디움입니다.
오늘은 플랫폼-코어 2팀의 두번째 인터뷰이인 Rooney의 이야기를 들려드릴 시간입니다. Rooney는 백엔드 개발자로 Explorer 프로젝트와 MDL API Server 프로젝트에 참여 중인데요. 두 프로젝트는 Hyperledger Fabric(HLF)을 develop한 미디움의 독자적인 블록체인 기술 MDL(Medium Distributed Ledger)과 이더리움 기반 네트워크를 연결하는 프로젝트입니다. 

특히 Rooney는 두 프로젝트를 진행하면서 Hyperledger Fabric의 가능성을 느꼈다고 하는데요. HLF의 어떤 점이 Rooney를 사로잡았을까요? 바로 확인해보겠습니다.


Q: 간단한 자기소개 부탁드려요 :)

블록체인, 블록 체인, NFT, 미디움, medium

A: 안녕하세요, 미디움 기술본부 플랫폼-코어 2팀의 Rooney(이동민)입니다. 현재 Explorer 및 MDL API Server 개발을 맡고 있는 백엔드 개발자예요.


Q: Explorer 프로젝트를 진행하셨다고 들었어요. 어떤 프로젝트인지 궁금한데요?

블록체인, 블록 체인, NFT, 미디움, medium
[Medium Blockchain Explorer 구동 화면]

Explorer 프로젝트는 런칭 준비 중인 이더리움 기반 메인넷과 함께 구동되는 블록체인 Explorer를 개발하는 프로젝트입니다. 'etherscan'처럼 네트워크 내 트랜잭션 정보, 거래 당사자 정보, 거래 내용 등 해당 블록체인 네트워크에서 발생한 트랜잭션을 전부 확인할 수 있는 서비스죠.


Q: 그렇군요, Explorer 개발 시 어려웠던 점은 없었나요?

블록체인, 블록 체인, NFT, 미디움, medium
[NoSQL vs. SQL, Couchbase]

가장 어려웠던 점은 효율적으로 DB를 관리하는 방법을 구상하는 것이었습니다. MDL의 가장 큰 장점인 속도를 Explorer 상에서도 구현하고 싶었거든요.

여러 방안을 고민했지만 저희의 결정은 새로운 것에 도전해보는 것이었습니다. 그래서 NoSQL* 방식의 MongoDB**를 도입하기로 결정했어요. 기존에 사용하던 PostgreSQL*** 방식과 완전 패러다임이 달라 낯설긴 하지만, 충분히 운용할 수 있는 실력이 있다고 판단했었습니다.

*NoSQL : RDBMS와는 다르게 설계된 비관계형(non-relational) DBMS로, 대규모의 데이터를 유연하게 처리할 수 있는 것이 강점이다.
**MongoDB : 대표적인 NoSQL 데이터베이스 시스템. 데이터 교환 시 BSON 문서 형태로 저장하기 때문에 여러 서버에 분산 저장 및 확장이 용이하며, 방대한 데이터 양도 빠르게 처리하는 장점이 있다.
***PostgreSQL : ORDBM(객체-관계형 DB 관리 시스템)의 한 종류


Q: 여러 선택지 중 MongoDB을 선택한 이유는 무엇이었나요?

블록체인, 블록 체인, NFT, 미디움, medium
[MongoDB의 특장점, DBA Consulting]

MongoDB의 성능 때문이었어요. MongoDB는 다른 방식에 비해 데이터를 읽어오거나 수정하는 속도가 더 빠릅니다. 반면에 데이터를 DB에 집어넣을 때 정해진 규격이 없기 때문에 실수가 곧 에러로 이어질 수 있어요. 그래서 DB에 넣을 규격을 정하고 유지보수에 신경을 쓰기로 했습니다.


Q: 듣고 보면 굉장히 기본적인 솔루션인 것 같은데요. 팀 만의 노하우가 따로 있는 건가요?

블록체인, 블록 체인, NFT, 미디움, medium

노하우보다는 그동안의 축적된 경험을 믿었어요. 어떻게 보면 속도를 위해 risk taking을 한 거죠. 하지만 근거없는 자신감은 아니었습니다. MDL이 Go* 베이스로 개발된 것이 첫번째 이유입니다. Go는 DB에 데이터를 넣을 때, 데이터 검증이 되지 않더라도 언어 차원에서 어떤 구조체로 맵핑할 지 선택할 수 있거든요.

그래서 애플리케이션 단에서 저희가 코드만 잘 짜놓는다면 괜찮을 거라고 생각했습니다. Explorer의 코드 라인이 생각보다 간결해서 팀원들이 충분히 유지보수할 수준이라고 판단했거든요.

*Go(Go programming language) : 구글(Google)에서 개발한 범용 프로그래밍 언어로 멀티코어를 지원한다.


Q: 완성된 미디움의 blockchain explorer의 모습이 기대되네요. MDL API 프로젝트도 어떻게 진행하고 있는지 궁금해지는데요?

블록체인, 블록 체인, NFT, 미디움, medium
[MDL API가 사용될 서비스 플랫폼 MDL_SP]

'MDL API Server'는 이더리움 기반의 메인넷에서 발생시킨 트랜잭션을 Hyperledger Fabric기반의 MDL로 전송하는 API 서버입니다. 저는 테스트넷 개설 시점까지 문제점을 개선해야하는 미션을 맡고 있어요. 전혀 다른 구조의 블록체인을 연결시키다니, 프로젝트가 완성되면 정말 많은 일들이 가능해질 거라고 봅니다.

그리고 아직까진 큰 어려움은 없었어요. 미디움은 이미 MDL과 MDL Manager를 개발하면서 축적된 기술력이 있었거든요. Explorer 프로젝트도 완료했으니 정말 충분한 기술력을 갖췄다고 봐야죠. 다만 존재하는 오류를 계속 찾아내서 수정해야하는 건 쉽지 않습니다. 시도가 많지 않은 영역이어서 레퍼런스가 없거든요. 그래도 이 프로젝트가 성공적으로 완성되면 미디움은 독보적인 기술력을 가지게 될 거예요.


Q: 정말 기대가 돼요. 플랫폼-코어 2팀의 도전을 응원하겠습니다. 그렇다면 Rooney가 미디움에 바라는 점은 어떤게 있을까요? 그리고 10년 후 Rooney의 모습도 궁금합니다 :)

블록체인, 블록 체인, NFT, 미디움, medium

지금처럼 자유로운 개발 문화가 이어졌으면 좋겠어요. 제가 미디움에 입사하게 된 계기이기도 하니까요. 특히 저희 팀은 프로젝트를 시작할 때 현재 포지션 외에도 해보고 싶은 게 있다면 백엔드, 프론트엔드 나누지 않고 업무를 선택할 수 있거든요. 개발자가 발전할 수 있는 최고의 환경이라고 생각합니다.

그리고 10년 후의 제가 바라는 모습은 저희 팀장님 같은 시니어가 되는 거예요, 진담입니다.(웃음) 팀장님은 다양한 분야를 경험해보셔서 전체 flow를 고려한 오더를 주시면서도 팀원 매니징을 정말 잘 해주시거든요. 저도 10년 후에는 누군가의 목표가 될 수 있는 사람이 되고 싶어요.
 
블록체인, 블록 체인, NFT, 미디움, medium

Related Posts