[Mobile] Smart Eleven 모바일 어플리케이션
축구 동호인을 위한 스마트 일레븐 앱 개발 참여 경험과 주요 이슈 해결 과정을 소개합니다.

https://www.smarteleven.net
스마트 일레븐은 축구를 취미로 가진 유저들을 타겟으로 한 앱 서비스입니다. 앱을 통해 경기 일정을 관리할 수 있고, GPS 장비를 통해 개인의 축구 스탯을 앱을 통해 분석해 볼 수 있습니다.
Framework7 이라는 프론트앤드 프레임워크와 Ruby on Rails 를 이용하여, 웹앱 형태를 지닌 Android / iOS 앱을 개발하였습니다.
GPS 하드웨어로부터 전송되는 위치 데이터를 바탕으로, 유저의 축구 경기 데이터를 분석하는 "경기 분석" 기능의 백엔드 / 프론트앤드 개발자로 참여하였습니다. 또한 고객사의 추가 요청으로, GPS 하드웨어의 사전예약 페이지를 개발하였습니다.
웹의 형태로 기능 / UI 구현을 한 뒤, 모바일 앱 형태로 패키징하여 마켓, 앱스토어에 출시한 어플입니다.
* 이슈가 되었던 사항들
- 스마트 일레븐의 개발 과정에서 생겼던 주요 이슈는 다음과 같습니다. 0.2초당 유저의 GPS 데이터가 기록되기 때문에, 레일즈 서버에서 모든 분석 로직을 돌리는 데 서버 부하가 생길 수 있었습니다. 따라서, 로직의 일부를 프론트앤드에서 Javascript로 처리한 후, 연산 결과를 서버로 넘겨주는 방식으로 앱의 기능을 변경하였습니다.
- 유저의 대기시간을 줄이기 위해 위치 데이터 연산 로직의 일부를 비동기 처리하여 속도를 향상시켰습니다.
- 웹 앱의 특성상, 기종에 따라 사용하는 브라우저가 다른데(아이폰 : 사파리, 안드로이드 : 크롬), 이에 따라 JS 적용 결과가 달라지거나 성능 차이가 발생하였음
- 실제 GPS 데이터를 통해 수집된 위치와, 앱 내에서 기록된 플레이어 칩들의 위치 간 차이점이 있었음
- Google Map API 의 Response 형태가 바뀌어서, 서버에서 잠시 오류가 발생하였음
* Stacks
- Back : Ruby on Rails
- Front : Framework7, jQuery






이것도 읽어보세요