
서버 언어 전환 이야기
두줄요약
Python 서버를 Kotlin·Spring Boot로 전환한 배경과 일괄 마이그레이션 방식을 소개했습니다. API·DB를 유지하고 테스트와 회고로 전환 리스크를 관리했습니다.
문제 상황
- Python 및 경량 프레임워크 경험·전문 인력 부족에 따른 장기 생산성 우려
- 동적 타입과 덕 타이핑 환경에서 기능 확장·수정 시 타입 안정성 및 코드 추적 부담
- GraphQL 단일 경로와 기존 운영 경험상 점진적 전환이 어려운 조건
해결 방법
- Python 서버를 Kotlin·Spring Boot 기반 서버로 일괄 전환
- API Schema와 Database 구조를 원칙적으로 유지해 비즈니스 코드 이전에 집중
- 도메인 레이어 유닛 테스트와 애플리케이션 레이어 통합 테스트 병행
선택 이유
- Kotlin의 정적 타입 보장과 타입 추론 기반 가독성·유지보수성 기대
- Spring 생태계와 보편적 설정을 활용한 비즈니스 코드 집중 및 신규 인력 적응 단축
- Java·Spring 및 Kotlin·Spring 중심의 국내 백엔드 인력풀 고려
성능/운영 포인트
- 도메인별 기능 목록, 패키지 정리, 리팩터링 결과를 기반으로 전환 로드맵과 JIRA 작업 구성
- QA에서 JPA 실행 환경 차이와 JWT 인증·인가 이슈 확인
- JIRA Control Chart 기반 생산성 변화와 이슈 영향 분석, 단계별 회고 및 Action Item 관리




