
팀 레거시 개선 (3) 쏘카존 관리 시스템 - 6년간 진행된 팀 레거시 코드 및 문서 개선기
두줄요약
6년간 테이블·코드 구조를 점진적으로 개선해 테스트 가능한 레거시 기반을 만들었습니다. 코드 우선 스키마 변경과 문서화로 안전한 운영 및 장애 대응 분산을 이뤘습니다.
문제 상황
- 테이블당 70~100개 컬럼과 type 기반 다중 의미 관계로 업무 흐름을 읽기 어려운 ERD
- 테스트 커버리지 0%, 대형 entity 세팅 부담, 시스템 지식의 담당자 의존
- 10개 시스템의 ERD·장애 대응 절차 부재에 따른 판단 병목
해결 방법
- 역할별 테이블 분리와 코드·ERD 동시 개선으로 평균 컬럼 수 20~30개 수준 전환
- 기존·신규 구조 이원화 시 현재 상태, 목표 상태, 롤백 방법 문서화
- Postman 워크스페이스 대응 시나리오와 Confluence 기반 시스템 ERD 구축
성능/운영 포인트
- 컬럼 삭제 전 코드 참조 제거·배포·안전 확인 후 스키마 변경하는 코드 우선 원칙
- JPA·Exposed의 SELECT * 발생 여부, 이원화 데이터 정합성, 코드 참조 전수 확인
- MySQL 8.0 Online DDL과 짧은 MDL 구간, 작은 데이터 규모를 고려한 변경
적용해볼 점
- 테스트 확대 이전에 테스트 가능한 데이터 구조와 책임 분리 우선
- 장애 대응 지식을 담당자가 아닌 실행 가능한 문서와 API 컬렉션으로 이전
- 비즈니스 변경 시 점진적 구조 개선을 함께 누적하는 방식

