서비스가 오래 살아남으려면? 유지보수 친화적 코드로 해결한 S&S Cruiser 프로젝트
2025. 9. 10.
안녕하세요! 컨시언스 파트너스의 풀스택 엔지니어 Tom입니다.😁
저는 최근 S&S Cruiser 프로젝트에 참여해서, 기존 코드와 외부 프로젝트를 현재 체계에 맞게 정리하고 최적화하는 작업을 맡았어요.
S&S Cruiser는 기업 IT 인프라(스토리지, 서버, 네트워크 스위치 등)를 한 곳에서 통합 관리할 수 있는 솔루션이에요. 다양한 모듈과 기능이 필요하다 보니, 모든 걸 처음부터 만들기보다는 외부에서 이미 만들어진 프로젝트들을 가져와 붙이는 방식으로 진행했어요. 마치 MSA(Microservices Architecture)처럼 하나의 솔루션 안에 여러 프로젝트를 병합하는 방식이었죠.
빠른 일정 속에서 여러 기능이 급하게 연결되다 보니 코드가 복잡해졌고, 처음에는 단순히 돌아가게 만드는 것이 우선이었어요. 하지만 제가 맡은 역할은 여기서 한발 더 나아가, 이런 코드들을 체계에 맞게 정리하고 앞으로도 안정적으로 유지·확장할 수 있는 구조로 최적화하는 것이었어요.
좋은 최적화란 무엇일까?
많은 분들이 “최적화”라고 하면 성능 향상만 떠올리지만, 실제 프로젝트에서 경험한 최적화는 조금 달랐어요.
제가 생각하는 좋은 최적화는,
코드를 읽는 사람이 쉽게 이해할 수 있도록 단순화하는 것
중복을 줄이고 재사용성을 높여 수정 포인트를 최소화하는 것
팀 내에서 일관된 규칙으로 작성해 누구나 이어서 개발할 수 있게 하는 것
즉, 최적화는 단순히 기계만을 위한 게 아니라, 사람을 위한 작업이기도 해요.
해커톤식 코딩의 한계
빠듯한 일정 때문에 프로젝트 초반에는 흔히 해커톤식 코딩을 하게 돼요.
속도를 위해 중복된 코드 작성
긴급 기능 추가 시 임시 로직 삽입
문서화 부족
이런 방식은 단기적으로는 결과물을 빨리 내지만, 시간이 지날수록 유지보수가 어려워지고 리스크가 커져요. 제가 맡은 역할은 바로 이런 해커톤식 코드들을 현재 체계에 맞게 정리하는 것이었어요.
리팩토링과 코드 가이드
1) 코드 리팩토링
API 호출 방식을 일관되게 정리했어요
불필요한 의존성을 제거했어요
UI/UX 구현 규칙을 통일했어요
덕분에 기능이 추가되더라도 시스템 전체의 일관성을 유지할 수 있었어요.
2) 코드 스타일 가이드 정립
제가 참여한 기간 동안 프로젝트 전반의 코드 스타일 가이드를 세우고 적용했어요.
네이밍 규칙, 파일 구조, 주석 방식 통일
공통 모듈 분리 → 유지보수 범위를 최소화
디자인 토큰화로 스타일 관리 일원화
그 결과, 제가 프로젝트를 떠난 후에도 새로운 개발자가 쉽게 적응하고 유지보수에 참여할 수 있는 기반을 마련할 수 있었어요.
유지보수를 고려한 코드의 가치
S&S Cruiser 같은 솔루션은 유지보수와 확장성이 생명이에요. 제가 정리한 코드는 단기적인 성능 향상보다도, 앞으로 프로젝트가 안정적으로 발전할 수 있는 기반을 만드는 데 목적이 있었어요.
기능 추가 시 다른 영역에 영향을 최소화할 수 있어요
새로운 인력이 합류해도 빠르게 적응할 수 있어요
장애 발생 시 원인을 빨리 파악할 수 있어 대응 속도가 빨라져요
결국 좋은 코드는 내가 떠난 후에도 살아남는 코드라는 사실을 다시금 느낄 수 있었어요.
마무리
S&S Cruiser 프로젝트는 저에게 최적화와 리팩토링의 진짜 의미를 다시 생각하게 해줬어요. 빠른 개발이 필요한 순간도 있지만, 결국 긴 시간을 들여 정리하고 유지보수 가능한 코드로 만드는 과정이 없으면 프로젝트는 오래가기 어렵다는 걸 실감했어요.
제가 맡은 작업은 겉으로 보기에는 단순한 정리와 가이드라인 제정이었을지 모르지만, 이는 프로젝트가 앞으로 안정적으로 운영되고 새로운 기능을 수용할 수 있는 토대가 되었다고 생각해요.
특히 솔루션 비즈니스에서 가장 중요한 건 지속적인 확장성과 유지보수성이에요. 이 기반이 없으면 단기 성과는 낼 수 있어도 장기적으로 고객에게 신뢰를 줄 수 없다고 생각해요.
앞으로도 저는 단순히 잘 돌아가는 코드를 넘어서, 비즈니스가 지속 가능하도록 만드는 코드 설계를 최우선 가치로 삼아 개발에 임하겠습니다.🙂