[총선 프로젝트] 총선 프로젝트에 대한 소회

총선 프로젝트

1. 프로젝트를 시작한 계기

프로젝트를 시작한 2월달 당시 나는 기상청 프로젝트를 마친 상태였다. 또한, 2월달부터 코로나가 유행하게 되면서 많은 개발자들이 코로나 관련 서비스들을 자발적으로 개발, 배포하고 있는 상황이었다. 특히 지도 기반으로 정보를 제공하는 <코로나맵> 서비스가 선풍적인 관심을 받고 있었다.

기상청 프로젝트에 참여하면서 나는 leaflet.js 라이브러리를 이용한 지도 서비스 개발을 경험할 수 있었다. 습득한 기술을 활용할 방안을 고민하던 중에 <코로나맵>과 같은 서비스는 나에게 많은 영감과 자극이 되었다.

사회적으로 파급력이 있고 관심을 끌만한 이슈를 고민하다 4월에 있을 국회의원 총 선거에 생각이 이르게 되고 바로 기획과 동시에 개발을 시작했다.

2. 진행하면서

2-1. 개발의 기본은 소통

진행하면서 가장 힘들고 어렵다고 느꼈던 점은 개발자간의 소통 이었다. 당시 개발에 참여했던 사람은 나를 포함한 세 명 모두 흩어져 있어 모일 수가 없는 상황이었다. 이에 우리들은 카톡과 같은 메신저로 소통을 하고 있었다. 메신저를 통한 소통은 실시간으로 가능하지 못한 경우가 많았으나 크게 불편하진 않았다.

문제는 서로의 의견이 다를 때 발생했다. 각자가 그리고 있는 서비스의 모습이 다를 때 이를 적절히 중재하기 위한 과정들이 수행되어야 했음에도 때때로 우리들은 선조치 후보고를 하는 경우가 종종 발생했다.

의사소통 결정을 위해 Github 제공하는 이슈, Project Board를 활용하는 방안을 채택했다. 이를 통해 기능 및 비기능과 관련된 이슈와 추가적인 사항들을 관리할 수 있었다. 물론 이것 역시 세 명 모두 귀찮았기 때문에 초기에만 활용하고 나중에는 각자가 개발하고 보고하는 방식으로 진행되었지만…

2-2. 개발의 기본 중의 기본은 개발 능력

초보 개발자인 나로서는 이런 플젝을 진행하는게 처음에는 흥미롭고 흥분되는 일이었다. 하지만 결국 문제가 되는 것은 나의 개발 능력이었다.

개발 환경 구성을 위해 AWS EC2, Nginx, Node.js, Javascript, Mongo DB, Webpack 등이 활용되었다. 여기서 내가 경험해본 것은 javascript의 기본적인 것들이 다였다. 개발의 많은 부분들을 구글링, 함께 개발하는 사람에게 질문하는 방식으로 의지를 하고 있었다.

특히, 프론트의 경우 웹브라우저, 접속기기의 특성 등 고려할 것이 많았기 때문에 수많은 버그들을 해결하는 것이 쉽지 않았다. 다행히도 함께 개발하는 사람 중에 고수가 한 명 있었기에 망정이지 혼자서 플젝을 진행했다면 중도포기를 하게 되었을 것이다. 그 분에게 많은 의지를 하다 보니 나 자신의 부족한 개발능력이 한없이 초라해 보였고, 무기력해보이기까지 했다.

이번 플젝을 통해 개발자로서 내가 부족한 부분을 알 수 있었고 앞으로 더 열심히 해야겠다는 깨달음을 얻을 수 있었다.

3. 마치면서

개발기간은 2월 초~ 4월 16일 약 두 달이었다. 두 달동안 퇴근 후 남는 시간과 주말을 할애하면서 괴로우면서도 즐겁게 개발 할 수 있었다. 회사의 일만으로는 충족되지 않던 개발에 대한 열망의 많은 부분 해소될 수 있는 재밌는 프로젝트였다.

특히, 내게 있어선 첫 사이드 프로젝트이기 때문에 그 무엇보다 소중한 추억이 될 것이다. 함께 개발 했던 사람들, 주변 사람들에게 홍보를 해주던 지인들을 통해 주변 사람들에 대한 감사함도 느낄 수 있는 프로젝트였다.