본문 바로가기

Home > 열린마당 > 공개SW 소식

공개SW 소식

[인물] 내일의 빛을 만들고 싶은 오픈소스 개발자

OSS 게시글 작성 시각 2013-04-05 18:03:09 게시글 조회수 4776

2013년 03월 21일 (목)


ⓒ 마이크로소프트웨어



우리가 지금까지 읽어 왔던 인터뷰 기사의 주인공은 상당수가 성공한 경영인이었다. 그런데 개발자인 우리들은 사무실 안에서 묵묵히 일하고 있을 뿐이다. 필자는 우리 스스로가 ‘스타 개발자’가 돼야 한다고 생각한다. 연예인처럼 화려한 스포트라이트를 받고자 하는 건 아니다. 사람들에게 개발자로서의 ‘나’를 알리자는 것이고, 그로 인해 ‘나’라는 존재에 가치가 부여된다고 믿는다. 예를 들어 회사의 제품 개발 프로젝트에서 중요한 역할을 수행해도 그 제품을 누가 만들었는지 모른다. ‘내’가 만든 제품이 시장에서 높은 가치를 갖고 있음에도 불구하고 정작 만든 ‘나의 가치’는 인정받지 못하고 있다.‘개발자가 만난 사람’의 주인공은 바로 ‘우리’다. 누구나 주인공이 될 수 있다. 여러분의 이야기이고 여러분 동료의 이야기다. 그리고 우리 곁에서 말없이 IT 산업을 이끌고 있는 ‘숨은 고수’의 이야기다.

조현종 개발자


[프로필]
조현종 | 서버 사이드 애플리케이션을 주로 개발해 왔으며 현재는 2012년 ‘공개소프트웨어개발자대회’에서 대상을 수상한 Tadpole for DB Tools 개발에 전념하고 있다.


Tadpole for DB Tools란
Tadpole for DB Tools(https://sites.google.com/site/ tadpolefordb/)는 웹 기반 DBMS 관리 솔루션이다. SQL 쿼리를 실행할 수 있고, 데이터베이스 시스템을 관리하고 모니터링할 수 있다. 또한 ERD도 자동으로 그려준다. 현재는 큐브리드, MySQL, 오라클, Postgresql, MongoDB 등을 지원하고 있으며 특징은 이클립스 프레임워크를 사용해서 구현했다는 점이다. 이 솔루션은 지식경제부 주최의 ‘공개소프트웨어개발자대회’에서 대상(지식경제부 장관상)을 차지했다.


Tadpole for DB Tools를 만들게 된 계기
2011년 JCO 컨퍼런스에서 이클립스 RAP에 대해 발표하게 됐다. 시연을 해야 하는데 그 당시 외국에서 만든 것들뿐이었다. 그래서 시연용으로 만든 게 바로 Tadpole for DB Tools이다. 2012년 5월 퇴사를 한 후에 Tadpole for DB Tools 개발에 전념하고 있다. 앞으로 클라우드 같은 온라인 환경이 커져갈 것이고, 더 얇고 가벼운 단말기가 보편화되면 웹 애플리케이션이 차지하는 비중이 더욱 커질 것 같다. 그러한 변화 속에서 Tadpole for DB Tools가 DBMS 관리 솔루션으로서 중추적인 역할을 할 수 있도록 만들고 싶다.


이클립스 프레임워크의 장점은
이클립스는 우리가 오랫동안 사용하고 발전시켜온 프레임워크이다. 그러한 사용성을 애플리케이션 개발에 그대로 적용할 수 있고 관련 자료도 많다. 또한 이클립스 RAP를 사용하면 이클립스 UI를 웹 기반으로 자동으로 변환해 준다. 예를 들어 모바일용 프레임워크를 사용하면 하나의 프로그램을 iOS와 안드로이드 환경 모두에서 구동되도록 지원한다. 마찬가지로 이클립스 프레임워크를 통해 프로그램을 작성하면 데스크톱 애플리케이션과 웹 애플리케이션으로 만들 수 있다. 특히 BIRT(레포팅 도구), GEF(그래픽 도구) 등을 그대로 쓸 수 있기 때문에 비즈니스용 소프트웨어를 만들 때 이점이 있다.


오픈소스 개발을 하면서 힘든 점
홀로 개발 작업을 하는 까닭에 무척 외롭다는 점이 힘든 부분이다. 가끔은 회사에 다닐 때의 동료들이 그립기도 하다. 4명의 커미터(Committer)가 있긴 한데, 나를 제외한 다른 분들은 직장에 다니다 보니 아무래도 나 혼자 해야 할 일이 많다. 나는 오픈소스라고 해서 아무런 이유 없이 기여해야 한다고 생각하지 않는다. 당연히 오픈소스 개발도 비전이 있어야 한다. 그런 면에서 Tadpole for DB Tools가 앞으로 좋은 성과를 낸다면 참여자도 늘어날 것으로 믿는다.


회사를 그만두면서까지 오픈소스를 선택한 이유
내가 좋아하는 것을 만들기 위해 퇴사를 했다. 그 동안 내가 돈을 벌며 잘 살수 있게 해준 것이 바로 이클립스라는 오픈소스 소프트웨어이다. 우리는 수년간 무료로 사용하고 있음에도 불구하고 돈을 지불하지 않는다. 물론 이클립스 재단에 적은 금액이라도 기부하는 이들도 있겠지만 우리가 받은 것에 비하면 매우 작게 느껴졌다. 그래서 국내에서 오픈소스와 커뮤니티 활동을 하면서 내 나름대로 갚고 있는 것이다.


국내 오픈소스 발전에 대해서
후원금이라는 돈이 중요할 수도 있지만 기업 안에서 개발자들이 많은 것에 도전할 수 있는 문화와 여유를 제공해주면 좋겠다. 나는 오픈소스라는 자체가 중요하다고 생각하진 않는다. 다시 말해서 오픈소스는 결과물의 형태인 것이다. 기업은 개발자들이 무엇이든 도전하고 만들 수 있는 환경을 제공하고, 결과물이 나왔을 때 그것을 상용으로 팔 것인지 또는 무료로 공개할 것인지를 나중에 결정해도 좋을 것 같다. 그리고 국내 오픈소스 커뮤니티에 소소하게라도 후원이 이뤄진다면 더 좋겠다.


HA(고가용성) 시스템을 만들었다는데
멘텍이라는 회사에 다닐 때 HA 시스템을 만들었다. 시스템 이중화라면 서비스 중인 서버와 대기 중인 서버로 구분할 수 있다. 만약 서비스 중인 서버에 문제가 생기면 대기 중인 서버가 동작을 한다. 그 당시에 HA 시스템 관련 자료가 부족하다 보니 외국 솔루션을 따라하는 것부터 시작했다. 결국 GS 인증도 받고 ‘대한민국소프트웨어대상’에서 입상도 했다.


HA 시스템의 특징은
서비스 중인 서버(라이브 서버)와 대기 중인 서버(스탠바이 서버) 간에 지속적으로 상태를 확인한다. 만약 서버 간에 응답이 없으면 라우터의 상태를 다시 확인한다. 그럼에도 불구하고 응답이 없으면 네트워크가 끊어진 것으로 판단하고 시스템을 재시작하거나 스탠바이 서버가 라이브 서버를 대신해 서비스에 투입된다.


개발철학
나는 나 자신을 ‘코더(Coder)’라고 소개한다. 사람들과 이야기를 나누다 보면 아키텍트(Architect)는 매우 ‘높은 사람’이고 코더는 ‘낮은 사람’이라고 생각하는 경향이 있었다. 그런데 그게 무슨 소용일까. 각자 자신의 역할을 잘 하는 사람이라면 뛰어난 사람이고 충분히 인정 받아야 한다. 또한 어느 누군가는 코드를 작성해야 한다. 개발자들은 관리자들이 엔지니어를 낮게 본다며 불만을 갖지만 정작 엔지니어들도 ‘나는 아키텍트니까 너보다 위야’라고 생각하고 있다는 점이 아이러니하다. 각 역할별로 의미가 있고, 그러므로 서로 존중해야 한다.


좋은 코드란
좋은 코드란 사람이 보기 쉬운 코드라고 생각한다. 훌륭한 디자인 패턴을 적용했더라도 그 코드를 봐야 하는 사람이 이해하기가 어렵다면 좋은 코드라고 보기 어렵다. 물론 예외도 있다. 예를 들어 매우 빠른 속도가 요구되는 목적성을 지닌 프로그램이라면 보기 좋은 것보다 성능을 높이는 코드가 더 좋은 코드일 것이다. 하지만 그러한 목적성 프로그램은 전체의 일부분일 것이고, 그것을 둘러싼 일반적인 코드까지도 어렵게 작성할 필요는 없을 것 같다.


오픈소스를 하고 싶어하는 이들에게
‘일단 시작하라’라는 말로 조언하고 싶다. 본인의 실력이 어떠한지는 전혀 중요하지 않다. 일단 만들어서 내놓는 게 중요하다. 아무리 작은 모임에서라도 실력으로 사람을 나열하면 최고와 최저는 어디든 존재하게 마련이다. 그러므로 본인 실력이 최저라는 생각이 들더라도 그것에 연연할 필요는 없다. 스스로 발전하려는 의지가 있다면 그것만으로 충분하다.


용영환 xenonix@gmail.com|넥스트브레인(www.nextbrain.com)을 이끌고 있고, 행복한 삶을 꿈 꾸며 글 쓰기를 좋아하는 개발자다. 다르다는 것이 틀린 것은 아니기에 다양한 사람들 속에서 많은 것을 보고 듣고 경험하려고 노력한다.




※ 본 내용은 (주)마소인터렉티브(http://www.imaso.co.kr/)의 저작권 동의에 의해 공유되고 있습니다.
    Copyright ⓒ Maso Interactive Corp. 무단전재 및 재배포 금지


[원문출처 : http://www.imaso.co.kr/?doc=bbs/gnuboard.php&bo_table=article&wr_id=42487]

맨 위로
맨 위로