-
[회고] 카카오 테크 캠퍼스 1기 수료 및 대상 🏆회고 2023. 11. 19. 18:34728x90
프로젝트 소개
올해 초부터 시작한 카카오 테크 캠퍼스 1기가 끝났습니다. 운이 좋게도, 저희 팀이 대상(라춘상)을 받았습니다.
회고를 시작하기 전에 서비스 축팅에 대해 정리해보려고 합니다.
축팅은 포토부스 사진을 공유하고 만남을 연결하는 서비스입니다. 저희 팀은 백엔드 개발자 4명과 프론트엔드 개발자 3명으로 구성된 총 7명의 팀이며, 저는 팀장이자 백엔드 개발자로 참여했습니다.
축팅은 기존 데이팅 앱의 단점을 포토 부스를 사용해 극복할 수 있다는 생각에서 기획되었습니다.
기존 데이팅 앱의 주요 단점은 두 가지입니다.- 남성 사용자의 비율이 지나치게 높다는 점
- 실제로 만나는 사람이 어떤 사람인지 알기 어렵다는 점
이를 해결하기 위해 축제라는 한정된 공간과 포토부스를 활용한 만남을 기획했습니다.
- 같은 학교 또는 같은 지역의 사람들과 자연스럽게 연결될 수 있도록 했습니다.
- 포토부스를 활용해 사용자들이 부담 없이 자신의 모습을 공개할 수 있도록 했습니다.
- 포토부스는 여성 이용자의 비율이 높아, 기존 데이팅 앱에서 문제가 되었던 성비 불균형을 완화하는 데 기여할 수 있다고 판단했습니다.
이렇게 탄생한 서비스가 축팅입니다.
팀장 회고
소통의 중요성과 팀 내 역할 조정
저는 팀장이자 백엔드 개발자로 팀에 기여했습니다. 팀장으로서 가장 중요하게 생각한 것은 소통이었습니다. 짧은 시간 안에 퀄리티 높은 서비스를 만들기 위해서는 팀원 간의 원활한 소통이 필수적이라고 판단했습니다. 각자의 업무 진행 상황과 문제점을 투명하게 공유하고, 팀 전체가 이를 파악하는 것이 중요하다고 생각했습니다.
이러한 이유로 주간 회의(Weekly Meeting) 외에도 매일 슬랙에 "오늘의 할 일"을 공유하는 방식을 도입했습니다. 초기에는 순조롭게 진행되는 것처럼 보였지만, 프로젝트 후반부에 접어들며 예상치 못한 문제가 드러났습니다.
프론트엔드 작업 속도가 느린 이유
프로젝트 후반부, 저는 프론트엔드 팀원 한 분과 이야기를 나누면서 예상보다 개발 속도가 느린 이유를 구체적으로 파악할 수 있었습니다. 이를 알게 된 계기는 깃허브의 contributor 목록을 확인하면서였습니다.
백엔드의 경우 역할을 기능 단위로 명확히 나누어 각자 맡은 부분을 개발하며 일정 수준의 성취감을 얻을 수 있었습니다. 그러나 프론트엔드는 정반대의 상황이었습니다. 한 명의 팀원이 대부분의 프론트엔드 개발을 담당하고 있었고, 나머지 팀원들은 적극적으로 참여하지 못하고 있었습니다.
프론트엔드 팀원들과 각각 이야기를 나눠본 결과, 서로 다른 입장과 오해가 있었습니다.
- 한 팀원: "다른 팀원들의 실력이 부족하고, 적극적으로 참여하려는 의지가 보이지 않아서 내가 다 했다."
- 다른 팀원: "참여하려 했지만, 이미 기능이 대부분 만들어져 있어서 어디서부터 손을 대야 할지 몰랐다."
이처럼 프론트엔드 팀원 간의 역할 분배가 원활하게 이루어지지 않았고, 이로 인해 개발 속도가 저하된 것이었습니다.
역할 분배 조정과 생산성 향상
저는 프로젝트에서 모든 팀원이 작은 부분이라도 맡아야 한다고 생각했습니다. 프로젝트가 후반부에 접어든 만큼, 팀원 간의 역할을 재조정하는 것이 필요했습니다.
이를 해결하기 위해 프론트엔드 팀원들과 논의하며 기능을 세분화하고, 작은 부분이라도 각자의 역할을 맡을 수 있도록 조정했습니다. 그 결과, 후반부에는 모든 프론트엔드 팀원이 각자 담당 화면에 맞게 기능을 개발하면서 생산성이 조금씩 높아졌습니다.
이러한 조정 덕분에 최종적으로 기한 내에 서비스를 완성할 수 있었습니다.
백엔드 개발자 회고
AWS를 활용하지 못한 아쉬움
당시 저는 AWS를 한 번도 사용해본 적이 없었고, 단순히 개념만 알고 있는 수준이었습니다. 그래서인지 AWS S3 대신 서버 내부에 이미지를 직접 저장하는 방식을 선택했고, 이로 인해 재배포 시 이미지가 사라지는 문제를 경험해야 했습니다.
지금 돌아보면, 조금 무리를 해서라도 AWS S3를 도입했다면 어땠을까 하는 아쉬움이 남습니다. 이를 직접 경험해봤다면, 배포 환경에서도 안정적인 파일 관리를 할 수 있었을 것이고, 나아가 클라우드 스토리지에 대한 이해도도 높아졌을 것이라 생각합니다.
배포에 참여하지 못한 아쉬움
저희 백엔드의 배포는 테크 리더가 맡아서 진행했습니다. 그런데 회고를 하면서, 당시 저는 배포 과정에 깊이 관여하지 않았다는 점이 아쉬움으로 남았습니다.
배포 과정에 더 적극적으로 관심을 가지고, 기여할 수 있는 부분을 찾았더라면 어땠을까 하는 생각이 듭니다. 다른 분이 배포하는 과정을 유심히 지켜보고, 배포 자동화나 서버 설정 같은 부분을 배워두었더라면 더욱 성장할 수 있었을 텐데 하는 아쉬움이 남습니다.
API 문서 관리 & Swagger 도입
초반에는 Notion을 활용해 API 문서를 관리했지만, 프로젝트 후반부에는 Swagger를 도입했습니다. 그러나 Swagger를 처음 사용하다 보니 익숙하지 않았고, 결과적으로 프론트엔드 팀원들에게 충분한 도움을 주지 못했다는 아쉬움이 남습니다.
API 문서가 중요한 정보라는 사실은 알고 있었지만, 직접 프론트엔드 개발자의 입장에서 생각해보니 그 중요성이 훨씬 더 와닿았습니다. 문서를 보고 개발을 진행하는데, 문서 자체가 잘못되었다면?
그 빡침은... 단순한 실수가 아니라, 시간 낭비 + 디버깅 스트레스 + 개발 일정 지연이라는 복합적인 문제로 이어질 수 있습니다.이 경험을 통해, 앞으로의 프로젝트에서는 보다 자세하고 정확한 API 문서를 제공하는 것이 백엔드 개발자로서의 핵심 역할이라는 점을 확실히 깨닫게 되었습니다.
배운 점과 성장의 기회
아쉬운 부분만 있었던 것은 아닙니다.
백엔드 개발을 진행하면서 커밋 컨벤션과 네이밍 컨벤션을 주도적으로 맞추고, 아키텍처 회의를 진행하는 역할을 맡았습니다. 또한, Redis와 스케줄러를 활용하여 '인기 피드' 기능을 구현하며, Redis가 제공하는 다양한 자료구조를 탐색하고 최적의 설계를 고민하는 기회를 가졌습니다.
뿐만 아니라, 테스트 격리, 메서드 추출 등 여러 가지 중요한 개념들을 학습하며 개발 역량을 키울 수 있었습니다.
욕심이 많다 보니 아쉬운 점을 더 많이 떠올리게 되지만, 돌이켜 보면 당시에는 그 순간 최선을 다했기에 가능한 결과물이었을지도 모릅니다.
한 학기를 돌아보며: 경험, 아쉬움, 그리고 다짐올해 한 학기 동안 카카오 테크 캠퍼스, 학교 생활, 그리고 여러 프로젝트를 병행하며 바쁜 시간을 보냈습니다. 이러한 경험은 뿌듯하기도 했지만, 동시에 여러 아쉬움을 남기기도 했습니다.
이번 학기를 통해 가장 크게 깨달은 교훈은 "한 번에 여러 가지 일을 하지 말자"는 것입니다. 여러 일을 동시에 진행하면, 각 작업에 100%의 역량을 집중하기 어려워지고 퀄리티도 자연스럽게 낮아질 수밖에 없습니다.
특히, 동아리 프로젝트 Dotoring과 카카오 테크 캠퍼스에서 진행한 축팅 프로젝트를 동시에 수행하면서 개인 공부를 할 시간이 부족하다는 것을 절실히 느꼈습니다. 결국, 할당된 작업을 마치는 데 급급했고, 깊이 있는 학습을 위한 시간이 충분하지 않았습니다.
하지만 이런 경험을 바탕으로 앞으로의 방향성을 더욱 명확하게 설정할 수 있었습니다. 남은 올해와 내년에는 공부했던 지식을 서로 연결하며, 누군가의 질문에 막힘없이 답할 수 있을 정도로 체화하는 것을 목표로 삼고자 합니다.
바쁜 와중에도 성장할 수 있었던 한 학기였고, 이제는 더 깊이 있는 개발자로 성장할 수 있도록 차분하게 나아가려 합니다. 🔥
https://github.com/Step3-kakao-tech-campus/Team14_BE?tab=readme-ov-file
GitHub - Step3-kakao-tech-campus/Team14_BE: 14조 Spark
14조 Spark. Contribute to Step3-kakao-tech-campus/Team14_BE development by creating an account on GitHub.
github.com
728x90