티스토리 뷰

 

저는 불과 어제, 빼앗겼습니다.

 

작은 서비스를 운영하고 있습니다. 올클이라는 서비스로 수강 신청을 연습할 수 있는 서비스입니다. 교내 학우들을 대상으로 서비스합니다. 일 최대 6000명의 사용자가 있었고, 가입자 수는 3천 명 정도입니다. 

 

올클의 탄생부터 지금까지

작년, 학교 서버 해킹 사태로 수강 신청 시스템 보완이 강화되었습니다. 강화된 만큼 수강 신청 절차는 복잡해졌고, 이 페인 포인트를 직접 겪은 저는 수강 신청을 연습하고자 서비스를 만들었습니다. 당시 개발 경험이 없었습니다. Spring Boot와 Thymeleaf, 그리고 약간의 자바스크립트를 곁들여 정적인 페이지를 서비스했습니다. 

 

 

 

굉장히 부족한 서비스였죠. 서비스라고 하기에도 부끄러웠습니다. 그래도 개발 처음 시작한 사람이 어떻게든 만들어서 배포해 보니, 성취감 있었습니다. 처음에는 혼자 쓰려 만들었습니다. 나름 잘 작동하더라고요? 실제랑 유사하기도 하고. 혼자하기 아까워서 당시 과CC인 여자친구에게 소개했습니다. 제가 만든 서비스의 첫 사용자였는데, 저보다 더 재밌게 사용해 주었습니다. 

 

두려움이 컸지만, 덕분에 용기가 생겨 실제로 서비스하기로 합니다. 도메인도 사서 달고 눈 꼭 감고 에타에 글 작성 버튼을 눌렀습니다. 반응은 폭발적이었습니다. 많은 댓글과 추천, 스크랩을 받게 됩니다. 개발을 처음 시작하는 사람에게 이만한 사랑을 주시다니, 정말 행운이었습니다. 

 

 

많은 사랑을 받고 나니, 좀 더 좋은 서비스를 제공하고 싶었습니다. 문제는 프론트 개발이었습니다. 디자인과 HTML, CSS를 안 좋아하는 저로서 다른 이의 도움이 필요했습니다. 제가 굉장히 좋아하고 신뢰하는 학교 친구에게 제안했고, 흔쾌히 승낙했습니다. 서비스를 디벨롭함과 동시에 홍보 차원에서 교내 학술제에 출품하기로 했습니다. 

 

저는 기획, 디자인과 서버 개발에 참여했습니다. 프로젝트 경험과 개발 경험이 거의 없었지만, 어떻게든 API 개발을 완료했습니다. Spring Boot와 JPA 위에서 돌아가는 쓰레기를 만들었지만, 버그 없이 잘 작동하는 것에 만족했습니다. 이렇게 올클 v2가 탄생했습니다. 

 

 

학술제에서는 좋은 성과를 얻지 못했지만, 목표는 교내 학우들에게 좋은 경험을 주는 것이었기 때문에 괜찮았습니다. 어찌저찌 서비스 개발이 완료되고 서비스할 준비를 마쳤습니다. 

 

그리고 2024년 2월 수강 신청 기간이 다가옵니다. 이번에도 에타에 글을 올렸고 뜨거운 반응을 얻었습니다. 

 

 

 

당시에 Google Analytics에 기록된 사진이 남아 있어 첨부합니다. 

 

 

 

이렇게 서비스를 성공적으로 런칭합니다. 

 

현재로 돌아와서 

저는 현재 우아한 형제들의 교육 기관인 우아한 테크코스에서 백엔드 교육을 받고 있습니다. 우테코에 완전히 몰입하고 있어서 올클 서비스를 추가로 개발하기 어려운 상황입니다. 우테코의 레벨1, 레벨2를 지나며 많은 것을 배웠습니다. 기술적인 것은 물론이고, 어떻게 소프트웨어 장인이 될 수 있는지, 그에 걸맞는 정신이 무엇인지. 

 

현재 레벨3에서 팀 프로젝트를 진행하고 있습니다. 제대로 된 팀 프로젝트가 처음이고, 이 과정에서도 매일 많은 가치를 배우고 있습니다. 그리고 올클 서비스를 유지보수하기로 했습니다. 우테코에서 배운 가치를 내 자식 같은 서비스에 녹여내어 좀더 안정적이고 사용자를 위한 서비스로 발전하고 싶었습니다. 

 

팀 프로젝트와 다른 프로젝트를 동시에 하는 것은 꽤 어려웠습니다. 오후 6시에 팀 활동이 종료되면 올클 프로젝트를 시작했습니다. 기존에는 테스트 코드가 한 줄도 없었습니다. 테스트 코드로 보호받지 않는 프로덕션 코드를 건드는 것이 너무 두려워, 테스트 코드부터 작성했습니다. 그리고 사용자 설문을 통해 얻은 몇 가지 피드백을 반영하여 기능을 구현했습니다. 리팩터링도 틈틈이 진행했습니다. 

 

불과 이틀 전까지 우테코와 서비스 유지보수까지 치열하게 살았습니다. 

 

어제 빼앗겼습니다

어제 에타에 하나의 글이 올라왔습니다. 저와 함께 올클 서비스를 만든 친구가 보내주었죠. 

 

 

본문과 제목에서 빼앗겼다고 표현했지만, 위 사이트에 접속해 보니 참 잘 만들었더군요. 올클 서비스가 갖고 있던 문제를 모두 해결한 듯 보였습니다. 

 

발견한 문제

위 서비스가 사용자의 선택을 받은 이유는 2가지입니다. 

 

실제 수강신청 사이트의 UI를 동일하게 디자인했습니다. 덕분에 사용자는 실제와 더 유사한 연습을 할 수 있습니다. 사실 이것은 엄연한 저작권 위반 행위입니다. 올클 팀은 이를 인지하여 디자인은 다르지만 버튼 위치 등 수강 신청에 영향을 미치는 주요 UI 컴포넌트는 유사하게 제작했습니다. 저작권 위반과 무관하게 사용자는 더 나은 서비스를 선택한다는 것을 깨달았습니다. 사용자는 생각보다 차갑다는 것을 알았습니다. 

 

로그인 기능을 제거했습니다. 덕분에 사용자는 불필요한 로그인을 하지 않아도 됩니다. 이것은 올클 서비스가 이전에 문제가 되었던 부분이기도 합니다. 올클을 기획할 당시에 사용자에게 더 좋은 서비스를 제공할 목적으로 데이터 수집이 필요했습니다. 사용자 트래킹을 위하여 학교 계정으로 로그인하는 기능을 넣었습니다. 사용자들은 이를 개의치 않고 사용했지만, 특정 사용자가 이 문제를 꼬집었고 큰 이슈가 되었습니다.

 

물론, 더 좋은 서비스를 제공하면 어떻게 되었을지 모르지만 유일한 서버 개발자인 제가 다른 일로 바빠 기능 개발을 하지 못했기 때문에 더욱 문제가 되었습니다. 이 때문에 사용자는 자연스래 다른 서비스로 넘어갔습니다. 

 

앞으로 어떻게 할 것인지

어제 함께하는 친구와 긴 시간 회의했습니다. 원래 다음 주 서비스 재 런칭을 계획하고 바쁘게 코드를 수정하고 있었습니다. 저는 인프라도 새로 구축하고, 테스트 코드 추가와 에러 핸들링에 힘쓰며 안정성을 더하고 있었습니다. 

 

일단은 계획대로 유지보수를 진행하고, 상황봐서 서비스하기로 했습니다. 현재는 새로운 기능을 개발하기 어려운 상황이기에 결정한 사항입니다. 우테코가 끝나고 다음 학기에는 사용자를 위한 기능을 구현하고 서비스하기로 기약했습니다. 

 

현재의 심정

1년 넘게 개발하고 유지보수한 자식 같은 서비스였는데 이렇게 되도록 납둔 것이 정말 미안합니다. 사용자를 돌보지 않으면 한 순간에 외면받을 수 있다는 것을 배웠습니다. 

 

이번 학기 사용자는 많이 빼앗겼지만, 아직 서비스는 건재합니다. 

 

그래도 오늘 추가 기능 개발을 완료하고 배포해보니, 오랜만에 잘 동작하는 서비스를 보아서 기뻤습니다. 참 잘 만들었더군요. 

 

 

링크
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday