본문 바로가기
Project/프로젝트 회고

🌱새싹톤 <모두의 지하철> 회고

by 이의찬 2023. 8. 28.

5월 중순부터 6월 중순까지 서울의 문제점을 해결하기 위해 서울시와 구름이 주최한 새싹톤에 FE개발자로 참여하였다. SSAFY 1학기는 개발 학습과 간단한 토이 프로젝트 정도만 진행하기에 프로젝트에 목마른 사람들이 많았고, 나를 포함한 SSAFY 동기들 3명이서 팀을 이뤘다. 5명을 채워서 진행하는 해커톤이였기에 외부에서 섭외한 기획자/디자이너 각 1분씩을 섭외해 참여했고, 적극적으로 함께 기획한 결과 1, 2차 예선을 무사히 통과해 본격적으로 개발에 들어가는 본선까지 참여할 수 있게 되었다.

우리의 "이번역은대상대상역입니다" 팀

 

🚇프로젝트 GitHub 

 

GitHub - Legitgoons/Everyones-Subway

Contribute to Legitgoons/Everyones-Subway development by creating an account on GitHub.

github.com

 

핵심기능의 화면

 

문제인식과 해결

우리 팀은 주어진 주제 중 스마트 도시 구축 위한 AI 교통 안전 및 사회적 약자를 위한 교통 안전 시스템을 주제로 선택했다. 그 중에서도 휠체어 이용자에 대해서 주목했는데, 이들이 겪는 문제점은 이미 요청시 역무원이 휠체어 이용자를 돕는데도 여전히 휠체어 이용자들이 사고를 비롯한 불편함을 겪는 것, 그리고 일반인에 비해 더 많은 정보가 필요한 이들에게 역설적으로 더 적은 정보가 제공되고 있다는 점이였다.

 

이에 사용자가 역무원에게 도움을 요청하는 것이 번거롭기에 이런 문제점이 일어난다는 것을 파악하고 출발/도착역을 선택하고 요청 버튼을 누르면 출발/환승/도착역에 자동적으로 시간에 맞춰 알림이 가는 기능과 휠체어를 이용할때 역 별로 걸리는 환승시간 Data를 수집하여 휠체어 이용자에 알맞은 예상 시간을 제공할 수 있도록 하고자 했다.

 

상황에 맞는 기술 사용

이 중 가장 인상 깊었던 경험은 PWA(Progressive Web App)을 통해 역무원에게 알림을 띄워주는 것이였다. 우리 팀이 모두 공유하는 FE 프레임워크 스택은 React와 Vue 두 가지뿐이었는데, 역무원의 휴대전화로 Push 알림을 보내주기 위해서는 RN/플러터 등을 이용한 모바일 App이 필수적이였다. 단기간에 이뤄지는 해커톤 특성상 추가적으로 기술을 익히는 것은 힘들었고, 학습만 하다가 해커톤 개발기간이 끝나버릴 수도 있었다.

 

이러한 상황에서 PWA를 이용하면 React로 만든 Web-app으로도 Web Push 알림이 가능하다는 것을 알게 되었고, 이를 적용하여 의도한 대로 역무원에게 Push알림을 보내고자 했다. 하지만 기획과정에서 계속 수정이 일어나면서 구현이 뒤로 밀렸고, 뒤늦게 오프라인 행사 전날 새벽에 구현을 하고자 했지만 실패했다. 비록 해결하지는 못했지만 미리 기획을 완료하고 이에 알맞은 기술 스택을 정하고 학습하는 것이 얼마나 중요한지 아는 계기가 되었다.

 

Problem Solver

또 새싹톤을 거치며 단순히 코딩만 짜는 사람이 아닌 아닌 한명의 problem solver로서 인식을 전환할 수 있는 계기가 되었다. 그냥 컴퓨터 앞에 앉아서 대충 ‘이런 문제가 있겠지?’라며 머리속으로 생각하는 것이 아니라 실제 타겟으로 하는 대상과 인터뷰를 진행했고, 이들에게 휠체어를 탑승하면 어떤 문제가 있는지에 대해서 들으며 유저에 공감하는 것이 문제 인식에 반드시 필요하다는 점.

그리고 무조건 트렌드에 부합하는 기술만 좇는 게 아니라 어째서 그 기술을 사용해야 하는지, 과연 문제를 해결할 수 있는 최적의 기술인지 고민하고 사용해야 하는 점.

또한 앞으로 남은 지하철의 역 수를 이미지로 보여줘야하는 부분이 있었는데, 개발 공수는 많이 들고 번거로운것에 비해 배울것이 없다고 생각해 디자이너님에게 수정을 요구했다. 하지만 디자이너님이 '이 부분이 개발에서는 번거로울지 몰라도 UX측면에서 매우 중요한 부분'이라고 하며 다시 생각해보는게 어떻겠냐고 말씀하는 것을 듣고 내가 개발적으로 보여줄 것은 적고 쓸데없이 번거롭기만 하다고 생각한 기능이 사실 유저의 측면에서는 매우 중요하다는 것을 간과했다는 것을 알게 되었다. 이를 계기로 개발을 할때 UX를 최우선으로 하는 클라이언트 개발에 대해서도 생각해보게 되었다.

 

좋았던 점과 아쉬운 점

결론적으로 좋았던 점과 아쉬웠던 점을 정리하자면 다음과 같다.

좋았던 점

  • 기획
    • 내가 생각했던 문제가 진짜 문제가 맞나? 실제 휠체어 사용자분들과 인터뷰를 한 점
    • 디테일을 일일이 확인(역에서 사회복무요원으로 일하신 분도 인터뷰 함)하고 진행한 점
    • 이런 과정에서 실제 서비스를 고려할 때 생각보다 신경써야 할 부분이 많다는 점을 알게된 점
  • 개발
    • 혼자 개발하면 개발하기 귀찮은 부분은 디자인에서 빼는 등 UI/UX부분에서 타협을 하게 되는데 디자이너님과 협업하다보니 모든 것을 만들게 되면서 UX 부분에서 좀 더 생각을 많이 해보게 된 점
    • 나보다 잘하는 친구와 함께 하면서 코드 리뷰 등 피드백을 받을 수 있었던 점
    • 현업 기획자, 디자이너님과 협업하며 실제에 가까운 개발을 체험한 점(기획자님의 화면 기획서와 디자이너님의 figma 덕분에 개발하는 동안 구성을 신경쓰지 않고 구현에만 집중할 수 있었다.)
    • Tailwind CSS를 학습하고 사용해서 팀원들이 일관성 있는 UI를 구현할 수 있도록 도움을 준 점
    • Vercel을 통해 직접 배포를 해본점

디자이너님의 피 땀 눈물,,, 덕분에 너무 편하게 개발할 수 있었다.

아쉬웠던 점

  • 기획
    • 해커톤 특성 상 문제 해결이 중심이 되었어야 했는데 개발 욕심으로 인해 기획의 볼륨이 너무 커진 점
    • 지나치게 디테일을 신경 쓴 나머지(역무원들이 어떻게 일한다던가,,) 기획완성이 너무 늦어진 점
    • 이 과정에서 UI가 뒤늦게 변경면서 기획자님, 디자이너님과 개발팀이 모두 고생하게 된 점
    • SSAFY 최종 관통 프로젝트와 겹쳐 시간이 많이 부족했는데, 그럼에도 불구하고 소통에서의 망설임 때문에 시간을 낭비한 점
    • 쌓이는 데이터를 활용하는 것에 대한 고민이 모자라 BM을 해결하지 못한 점
  • 개발
    • 기획이 변경되며 개발이 늦춰졌고, 결국 BE개발이 이뤄지지 못하고 Mock data만 넣어둔 점
    • PWA까지는 성공했지만, FCM을 이용한 Web Push Message를 구현하지 못한 점
    • 코드 작성에서 깊은 고민 없이 급하게 작성하게 된 점

마무리

결론적으로 아쉬웠던 점도 많았지만, 오랜만에 프로젝트를 하면서 기획과 UX에 대해 깊이 고민할 기회가 되었고, 더불어서 현직 기획자, 디자이너님과 함께 개발하며 현업에 가까운 개발을 체험해본것은 큰 수확으로 남았다.