본문 바로가기

PROJECT

BBTI - 토끼 성향 테스트

 

1. 개요

 

  회사에서 개발자라는 직무에서 근무하면서 다양한 서비스들을 만들고 있지만, 나만의 서비스를 만들고 싶은 마음은 항상 가지고 있었다. 그래서 지속적으로 회사 밖에서 모임을 만들어서 토이프로젝트를 진행했었다. 하지만 결과적으로 완성하여 대중에 오픈된 서비스를 완성한 적은 없었다. 팀원들이 각자 직업이 있고, 서비스 주제에 대한 생각도 다르다 보니 의욕적으로 시작했다가 흐지부지되는 경우가 많았다. 

 

  그래서 새로운 토이 프로젝트를 시작하면서, 무조건 완성할 주제로 시작해야겠다고 생각했다. 그런 의미에서 BBTI는 최고의 주제였다. 요즘 유행하는 BBTI 패러디 서비스로서 어느정도의 대중의 관심을 받기에도 충분하고. 무엇보다 개발사이즈도 작아서 의욕이 떨어지기 전에 완성하기에도 좋았다. 그리고 결론적으로 서비스를 오픈하는데 성공했고, 기대 이상의 관심도 받았다. 

 


2. 개발

 

  팀원중 서버개발 경험이 가장 많았기 때문에, 서버 환경 세팅부터 프론트&서버 개발에까지 참여하였다.

 

서비스 구조

  프론트는 VueJS를 사용하여 개발을 하였고, 전체적으로 필요한 컴포넌트가 적어서 어려운 점은 없었다. 그리고 MBTI 패러디 서비스 특성상, 모바일 기기 전용으로만 UI를 디자인하였다. 토끼 이미지를 저장해 두었다가, 나중에 질문에 대한 응답과 함께 저장해둔 이미지를 보내는 부분에서 팀원이 어려움을 겪었었다. 

 

  서버는 AWS EC2에서 Ubuntu Server 18.04로 인스턴스를 생성하여 사용하였다. Nginx로 요청을 받아서 프론트 파일을 반환해주거나, 스프링 부트로 보내서 응답을 전해주었다. 또 내부적으로 토끼 이미지를 분석하는 Flask기반 서비스도 있었는데 데이터 문제로 보류되어서 아쉬웠다. 그래도 응답과 함께 들어온 이미지를 S3로 보내 저장하여 훗날을 도모하였다.

 

  추가적으로 따로 github 소스부터 개발/운영 브런치 구분없이 개발했다. 그리고 소스 반영 및 배포도 putty로 서버에 직접 접속하고 명령어를 실행하는 방식으로 이루어졌다. 소규모의 서비스라 환경구축에 신경쓰지 않았던 건데, 처음부터 개발/운영을 구분하고 배포 방식을 제대로 구축하고 갔더라면 훨씬 편한 개발 및 운영이 가능했을 것이라는 아쉬움이 든다.

 


3. 오픈

 

  모든 개발을 끝내고 테스트를 한 후, 대망의 서비스 오픈을 하였다. 토끼 인스타 계정을 운영하는 팀원이 있었기 때문에, 이를 중심으로 서비스 홍보가 이루어졌다. 홍보 이미지를 간단하게 제작하여 올리고, 인스타에 BBTI 결과를 태그해서 올리면 추첨하여 상품을 주는 이벤트도 기획했다. 그리고 기대이상의 사람들이 서비스를 이요했다.

 

  그런데 역시 오픈이후 문제가 발생했다. 토끼 이미지를 업로드하는 부분에서 아이폰의 경우 진행이 안되는 이슈가 발생했다. 테스트할때 모두 갤럭시 사용자였던게 문제였다... 그래서 급하게 개발용 도메인과 브런치를 생성하여 문제를 해결할 방법을 찾아보았다. 아이폰일 경우 해당 페이지를 스킵하는 방향으로 급하게 수정을 하였고, 더이상 해당 이슈는 발생하지 않았지만, 이미지를 업로드 받지 못한 부분은 아쉬웠다.

 


4. 후기

 

  결론적으로 목표했던 서비스 오픈에 성공했고, 1000명이 넘는 사용자들이 서비스를 이용했다. 처음으로 서비스 오픈까지 성공한 토이프로젝트라서 상당히 뜻깊었고, 개발과정의 번거로움과 오픈 이후의 이슈로 인해 많을 것을 깨달았다. 다음 토이프로젝트 부터는 처음부터 개발/운영 서버 구성을 제대로 하고 시작할 생각이다. 그리고 더욱 다양한 환경에서 오픈전 테스트를 진행할 것이다.

728x90