1️⃣ UMC에 지원한 동기가 무엇인가요? (500자 내외)

저는 단순한 이론 학습을 넘어서, 실제로 동작하는 서비스를 개발하고 운영하는 경험을 쌓고 싶어 UMC에 지원하게 되었습니다. 지금까지 Spring Boot를 기반으로 한 프로젝트에서 REST API 설계, JPA/Hibernate를 이용한 데이터 관리, 그리고 Redis를 활용한 캐싱 및 세션 관리 등을 경험하며 백엔드의 핵심 역할을 배워왔습니다. 또한 WebSocket을 이용한 실시간 토론방 기능을 구현하면서 서버와 다수의 클라이언트 간 안정적인 연결 관리의 중요성을 깨달았고, Docker Compose 환경에서 여러 모듈을 컨테이너로 띄워보며 서비스 운영의 기초도 익혔습니다. 하지만 이러한 경험들은 대부분 개인 학습이나 소규모 팀에 한정되어 있었습니다. 전국 규모의 연합 동아리인 UMC에서는 다양한 학교의 학생들과 협업하며 더 넓은 시각으로 문제를 바라보고 싶습니다. 저는 백엔드 파트에서 얻은 경험을 공유하면서도, 동시에 다른 팀원들의 아이디어와 개발 방식을 배우며 한 단계 더 성장하기 위해 지원했습니다.


2️⃣ 위의 파트를 선택한 이유는 무엇인가요? (500자 내외)

제가 백엔드 파트를 선택한 이유는 서비스의 안정성과 확장성을 책임지는 영역에 큰 흥미와 보람을 느끼기 때문입니다. 저는 Spring Boot와 MySQL을 활용하여 기본적인 CRUD 서비스부터 시작해, Redis 기반의 Pub/Sub 구조로 실시간 채팅 기능을 구현해본 경험이 있습니다. 또한 WebSocket을 통해 실시간 참여자 수를 관리하고, Docker 환경에서 여러 서비스들을 동시에 띄워보며 배포 환경에 대한 이해도 쌓았습니다. 이런 과정에서 단순한 기능 구현보다도 “많은 사용자가 동시에 접속해도 안정적으로 동작하는 시스템”을 설계하는 것이 백엔드 개발의 본질임을 깨달았습니다. UMC 백엔드 파트에서는 스터디와 프로젝트를 통해 이러한 경험을 더욱 체계적으로 확장할 수 있다고 생각합니다. 특히 프론트엔드·디자인 파트와의 협업을 통해 실제 사용자 경험까지 고려하는 백엔드 개발자로 성장하고 싶어 이 파트를 선택했습니다.


3️⃣ 어려움을 겪고 극복해낸 과정을 사례와 함께 서술해주세요. (700자 내외)

이번 여름방학에 참여한 멋쟁이사자처럼 부트캠프 프로젝트에서 실시간 토론방 서비스를 구현할 때 큰 어려움을 겪은 경험이 있습니다. 저희 팀은 WebSocket을 이용해 사용자의 입장과 퇴장 이벤트를 처리하며 실시간 참여자 수를 보여주는 기능을 만들었는데, 예상치 못한 문제가 발생했습니다. 서버가 재시작되거나 클라이언트가 비정상적으로 종료될 경우, 참여자 정보가 정상적으로 정리되지 않아 실제와 다른 인원이 표시되는 오류가 반복되었습니다.

처음에는 세션 정보를 단순히 서버 메모리에 저장했지만, 이 방식은 서버가 내려가면 데이터가 모두 사라지고 여러 인스턴스 환경에서 일관성이 보장되지 않는 한계가 있었습니다. 이를 해결하기 위해 Redis를 도입하여 참여자 상태를 중앙에서 관리하도록 구조를 바꾸었습니다. 또, UNLINK 명령과 Pub/Sub 기능을 활용해 세션 해제 이벤트를 실시간으로 반영하고, 여러 서버 간에도 동일한 참여자 상태를 공유할 수 있도록 개선했습니다. 이 과정에서 Redis 키 스캔과 세션 동기화 로직을 처음 접해 시행착오가 많았지만, 공식 문서를 참고하고 팀원들과 함께 문제를 분석하며 점차 안정적인 구조를 만들어갈 수 있었습니다.

마지막에는 Docker Compose를 활용해 백엔드, 프론트엔드, 데이터베이스, Redis를 하나의 환경에서 통합적으로 띄워 실제 서비스와 유사한 환경에서 테스트까지 마무리할 수 있었습니다. 이 경험을 통해 단순히 코드 작성에 그치지 않고, 시스템 전반의 안정성과 확장성을 고려해야 한다는 것을 배웠습니다. 동시에 어려움에 직면했을 때 포기하지 않고 문제를 분해하고 해결책을 찾아가는 과정에서 큰 성취감을 느낄 수 있었습니다. 앞으로도 UMC 활동에서 이러한 경험을 살려 팀원들과 함께 문제를 적극적으로 해결하며 성장해 나가고 싶습니다.


🔹 UMC 9기를 통해 얻어가고 싶은 것과 기대하는 바 (500자 내외)

UMC 9기를 통해 제가 가장 기대하는 것은 실제로 동작하는 서비스를 팀과 함께 완성해보는 경험입니다. 개인적으로는 Spring Boot를 활용해 Redis 기반 캐싱, WebSocket 실시간 통신, Docker를 통한 배포 환경 구축 등을 경험했지만, 이는 대부분 소규모 팀이나 개인 프로젝트에 국한되었습니다. UMC에서는 다양한 학교의 학생들과 협업하며 기획자·디자이너·프론트엔드와 함께 전 과정을 경험할 수 있다는 점이 가장 큰 매력이라고 생각합니다. 또한 파트별 스터디와 코드 리뷰를 통해 지금까지 놓쳤던 백엔드 개발의 기초를 더 탄탄히 다지고, 동시에 다른 개발자들의 접근 방식을 배우며 새로운 시각을 얻고 싶습니다. 단순히 기능 구현에 그치지 않고, 많은 사용자가 동시에 이용해도 안정적으로 운영되는 시스템을 설계하는 능력을 키우는 것이 목표입니다. UMC의 6개월 과정을 성실히 참여하여 실무와 가장 가까운 협업 경험을 쌓고, 장기적으로는 팀워크와 기술 역량을 고루 갖춘 개발자로 성장하고 싶습니다.