image.png

프로젝트 설명


UniSchedule은 카카오 테크 캠퍼스 최종 프로젝트로 개발한 대학생 대상 팀 일정 관리 서비스입니다.

이 프로젝트는 대학생들이 팀 일정을 조율할 때 여전히 단체 채팅방에서 “언제 가능해?”와 같은 질문을 반복하며 수작업으로 시간을 맞추고 있다는 문제에서 시작했습니다. 이러한 방식은 불필요한 커뮤니케이션 비용을 발생시키고, 일정 확정을 지연시키며, 팀 협업의 효율을 떨어뜨립니다.

UniSchedule은 개인 일정과 팀 일정을 하나의 서비스에서 관리할 수 있도록 설계했습니다. 주요 목표는 개인 일정과 팀 일정의 통합, 일정 가시성 향상, 가능한 시간대만 공유하는 방식의 개인정보 보호, 그리고 에브리타임과 Google Calendar 등 외부 캘린더 데이터 연동이었습니다.

핵심 기능으로는 개인 캘린더 관리, 팀 생성 및 초대, 팀원 가능 시간 분석, 최적 회의 시간 추천, 실시간 팀 채팅, iCalendar(RFC 5545) 기반 반복 일정 관리가 있습니다. 또한 국내 대학생들이 널리 사용하는 시간표 앱인 에브리타임과 Google Calendar의 일정을 가져오는 기능도 지원했습니다.

저희 팀은 카카오 테크 캠퍼스 최종 프로젝트에서 우수상을 수상했습니다.

image.png

프로젝트 구성 및 역할


UniSchedule은 백엔드 개발자 4명과 프론트엔드 개발자 2명으로 구성된 6인 팀이 개발했습니다.

저는 백엔드 테크 리더로서 백엔드 아키텍처 의사결정, 코드 리뷰, 기술적 조율, 배포 계획 수립, 부하 테스트를 주도했습니다.

프로젝트 범위에는 백엔드 API 개발, 팀 일정 관리, 분산 환경의 실시간 채팅 기능, iCalendar 관련 기능, AWS ECS/Fargate와 ALB를 활용한 클라우드 배포, Terraform 기반 인프라 구성이 포함되었습니다.

저는 특히 백엔드 아키텍처 설계, Redis Pub/Sub을 활용한 분산 채팅 메시지 유실 문제 해결, 백엔드 구현 조율 및 코드 리뷰, JMeter를 활용한 백엔드 성능 검증에 집중했습니다.

주요 기여