박근핵닷컴 로빈의 이야기

그리고 개발 프론트편

ParkGeunHack
6 min readJan 8, 2017

나는 초고속 인터넷이 보급되기 전인 1996년부터 인터넷을 이용해왔다. 인터넷의 보급과 산업의 발전을 몸소 체험하며 자라왔기에 인터넷과 IT라는 새로운 기술로 인해 우리가 나은 세상에서 살 수 있을 것이란 막연한 기대를 가지고 있었다. 정치에 큰 관심이 없었지만 IT 선진화에 힘쓴 故노무현 전 대통령을 보며 IT와 융합된 이상적인 민주주의를 꿈꾸기도 했었다. 하지만 그분의 서거 이후 큰 충격을 받고 정치 뿐만 아니라 대한민국의 미래에 대해서도 비관하며 더 이상 사회에 대해 관심을 두지 않은 채 살아왔다.

싱가포르에서 동료들과 스타트업을 시작하여 그곳에서 살던 어느 날 세월호 사고를 접했다. 갈때까지 간 대한민국에 그런 일이 일어난다는 것이 놀랍지는 않았지만, 시시각각 전해지는 보도를 보며 아이들의 죽음에 대한 슬픔과 그것을 방조한 이들에 대한 분노가 치밀었다. 그러나 이내 대한민국을 삼킨 짐작할 수 없을 정도로 거대한 암덩어리에 대한 존재를 느끼고 무력감에 빠졌다. 그리고 나는 다시 관심을 거두었다.

다시 한국으로 돌아와 개발자라는 본업에 충실하며 살던 중 피스컬노트와 와글이라는 회사를 차례로 알게 되었다. 정치를 주제로 IT서비스를 한다는 것이 무척이나 신선했다. 그 사이 분명 존재했겠지만 인터넷을 사용한지 20년 만에 처음으로 관심을 가지게 된 정치 스타트업이었다. 윤모님(피스컬노트 한국지사장)을 통해 알게된 피스컬노트는 정치인들의 행적 및 성향에 대한 빅데이터를 분석해 의안의 통과여부를 예측하여 기업이나 비영기단체에게 유료로 제공하는 서비스인데, 미국에서 실제로 서비스되고 있는 데모를 보고 적잖이 충격을 받았다. 어릴적 그렸던 IT와 정치가 융합된 미래를 보고 있는 듯 했기 때문이다. 스타트업 코워킹스페이스 카우앤독에서 알게 된 와글은 대한민국에서 손꼽히는 정치 스타트업이다. 시민들이 국회 입법과정에 일부 참여할 수 있는 서비스인 국회톡톡을 만들었는데 이 또한 전에 없던 참신한 서비스라고 생각한다. 이 두 회사 덕분에 내가 가진 기술을 더 의미있는데 쓸 수 있겠다는 작은 희망의 씨앗을 갖게 되었다.

그러던 어느 날 윤모님으로부터 국회의원들에게 계속 연락해서 탄핵소추를 할 수 있게 하는 서비스를 만들어보자는 제안을 받았다. 나는 흔쾌히 승낙했다. 당시엔 국회의 분위기나 국민여론이 탄핵과는 거리가 멀었지만, 반드시 탄핵이 되어야 한다고 생각했고 작게나마 내가 도움이 될 수 있겠다 싶었기 때문이다. 정말 많은 사람들이 정의를 위해 거리로 나와 평화적으로 시위를 하는 것을 보며 높아진 시민의식과 정의를 향한 국민적인 열망에 감동하였다. 사실 그것이 나를 움직였고 박근핵닷컴을 만들게 한 가장 큰 이유라 생각한다.

박근핵닷컴 그리고 현 시국을 겪으며 많은 것을 배웠다. 더 나은 세상을 위해 내가 할 수 있는 것이 있다는 희망과 자신감을 갖게 되었고, 한국 사회 및 정치에 무관심하게 살아온 내가 점점 정덕(정치 덕후)으로 바뀌 듯 무관심하던 혹은 무지했던 많은 사람들이 각성하고 있음을 봄으로써 이 나라의 미래에 대해서도 희망을 가지게 되었다. 앞으로 제2, 제3의 박근핵닷컴이 생겨나길 희망한다. 나 또한 대한민국 민주주의의 발전을 위해, 더 살기 좋은 나라를 위해 계속해서 노력할 것이다.

박근핵닷컴 개발 프론트편

박근핵닷컴을 위해 모인 우리는 처음 만난 사이로 서로 다른 기술스택을 가지고 있었습니다. 둘 다 풀스택 개발을 하지만 REST API를 맡은 알렉스는 파이썬과 구글 클라우드 플랫폼을, 프론트 웹앱을 맡은 로빈은 node.js 와 AWS를 기반으로 하는 개발자 입니다. 서로 다른 기술스택을 기지고 있기 때문에 신속하고 효율적인 개발을 위해 두 클라우드서비스 모두 이용함으로써 작업영역을 완전히 분리하였습니다.

- 프론트앱 -

프론트 웹앱은 로컬개발환경을 node.js + ExpressJS + ReactJS + webpack 로 구성하였고 개발 배포 및 운영 배포를 위해 AWS의 S3 + CloudFront + Route 53 + Certificate Manager 를 이용하였습니다. EC2를 사용하지 않은 이유는 단일 페이지 웹어플리케이션으로써 운영환경에서 서버에 의한 어떠한 연산작업도 이루어 지지 않고 정적인 리소스 만을 제공하기 때문에 클라우드 컴퓨팅 환경이 필요치 않은 것과 S3 및 CloudFront가 저렴한 비용으로 높은 확장성과 가용성을 보장함으로써 대량의 트래픽에 대한 확장을 별도로 고려하지 않아도 되기 때문입니다. 그리고 Route53을 씀으로써 S3 와 CloudFront간의 연동을 시키고 Certificate Manager를 이용해 간편히 보안이 강화된 HTTPS 환경을 구축하였습니다.

빠른 개발을 위해 처음부터 알려진 디자인 프레임웍을 사용하는 것을 고려했었습니다. ReactJS를 이용할 예정이었기에 이를 이용할 수 있는 프레임웍을 우선적으로 검토하였습니다. 가장 많이 쓰이는 Bootstrap 이나 Semantic UI 그리고 HP에서 만든 Grommet 등이 후보로 검토되었습니다. Grommet은 매우 잘 만들어진 프레임웍이지만 관리자도구를 위해 만들어진 탓에 그리고 원하는 디자인 컨셉을 표현하는데 있어서 제한적이라 제외되었습니다. 결과적으로는 인터넷에 돌고있는 무료 Bootstrap Theme을 ReactJS로 포팅하여 틀을 잡고, Semantic-UI-React 를 이용해 내부 컴포넌트들을 구성하였습니다.

이러한 기술적인 요구사항들을 기초로 디자이너가 시안을 제작하고 개발을 진행하는 것이 작업 순서 였지만, 처음부터 디자이너가 팀에 존재하지 않았기 때문에 디자인과 관련된 작업들은 생각한 것과 다르게 진행되었습니다. 디자인 작업이 처음부터 이루어지지 않고 개발 진행중에 이루어 지게 되면 인계 과정에서 시간적인 비용(의사소통 + 커스터마이징 + 최종 보정 등)이 많이 들 것으로 예상했었습니다. 그런데 마침 섭외 했던 디자이너가 시간이 맞지 않아 하차하게 되었습니다. 이 후 다른 디자이너를 구했지만, 그땐 이미 첫번째 디자이너를 섭회했던 로빈이 그에 대한 책임으로 본인이 직접 디자인을 시작한 뒤였습니다. 신속한 작업 진행을 위해 직접 디자인까지 맡아 한다고 나서서 어느 정도 틀을 이미 잡아둔 상태라 결국 개발을 하는 로빈이 디자인까지 하게 되었습니다. (참고로 로빈은 개발자가 되기 전 수년 간 웹디자이너로서 일을 했었습니다) 하지만 개발과 디자인을 병행함으로써 작업이 더욱 더디게 진행되었습니다.

완결된 기획안이 없었기 때문에 약 3주간 틈틈이 작업을 진행하였습니다. 그 사이 여론 및 국회에서 탄핵이 화두가 되기 시작하였고, 그에 맞추어 재빨리 사이트 작업을 마무리하여 시기 적절하게 출시 할 수 있었습니다.

박근핵닷컴 비하인드 스토리 더보기:

--

--