본문 바로가기

실전 원칙

여러 시스템을 다듬다 공통 매니저를 만든 이유

문제 제기: 하나가 잘 돌면 나머지도 잘 돌 줄 알았다

시스템을 하나 잘 만들어 놓으면, 비슷한 대상에 그대로 붙이면 될 것 같습니다. 실제 개발 기록에서도 한국 주식으로 만든 기본 시스템에 코인과 미국 주식을 이어 붙이는 방식으로 확장했습니다.
하지만 다듬는 과정에서 문제가 반복됐습니다. 한국 주식은 멀쩡한데 미국 주식에서만 문제가 생기는 일이 계속 나온 것입니다. 원인은 단순했습니다. 세 대상이 서로 다른 환경인데, 처음부터 끝까지 한국 주식 기준으로만 생각했기 때문입니다.


왜 위험한가: 같은 수정이 환경마다 다르게 작동한다

이 개발 기록에서 문제가 됐던 지점은, 한 곳(한국 주식)의 기준으로 검증한 사고방식을 나머지 환경에도 그대로 적용한 것이었습니다.

  • 거래 시간, 통화 단위, 데이터 형식, 규칙이 환경마다 다르면 같은 수정이 한쪽에선 맞고 한쪽에선 틀립니다.
  • 기준이 되는 환경(위 사례에선 한국 주식)에 무의식적으로 최적화되면, 나머지 환경의 특성을 놓치기 쉽습니다.
  • 한 시스템에서 발견한 문제가 다른 시스템에도 잠재해 있는데, 그쪽에선 아직 드러나지 않았을 뿐인 경우도 있습니다.

이 상태를 방치하면 수정할 때마다 다른 곳이 깨지는 악순환에 빠질 수 있습니다.


해결: 시스템을 관리하는 공통 매니저를 둔다

실제 개발에서는 이 문제를 풀기 위해 매니저 역할을 하나 만들었습니다. 한국 주식, 미국 주식, 코인을 함께 관리하는 층입니다. 매니저가 맡는 일은 세 가지입니다.

  • 각 시스템에서 생긴 문제를 한곳에 모아서 분석한다.
  • 그 시스템에 맞는 개선만 골라서 적용한다(다른 환경에 무조건 복사하지 않는다).
  • 같은 문제가 다른 시스템에도 있는지 별도로 검토한다.

핵심은 '개별 적용'과 '공통 검토'를 분리한 점입니다. 수정은 각 환경에 맞게, 점검은 전체를 대상으로 하는 구조입니다. 서로 다른 환경을 여러 개 다뤄야 하는 상황이라면 이런 매니저 층이 유용할 수 있습니다.


도입 절차: 공통 매니저를 어떻게 만들 것인가

1. 환경별 차이를 먼저 목록으로 만든다

시스템마다 다른 항목(운영 시간, 단위, 규칙, 데이터 형식)을 문서로 정리합니다. 이 목록이 없으면 매니저도 기준 환경에 편향됩니다.

2. 문제를 한곳에 모으는 창구를 만든다

각 시스템에서 나온 문제를 개별로 처리하지 말고 매니저로 모읍니다. 반복 패턴이 여기서 드러납니다.

3. 수정은 개별, 검토는 전체로 분리한다

어떤 수정을 A에만 적용할지, 전체에 적용할지 매니저 단계에서 판단합니다.

4. 같은 문제의 잠복 여부를 교차 점검한다

한 시스템에서 발견한 문제를 나머지에서도 재현해 봅니다.


적용 체크리스트

  • 각 시스템의 환경 차이를 문서로 정리했는가?
  • 한 시스템에 적용한 수정이 다른 시스템에도 맞는지 별도로 확인했는가?
  • 기준 환경에만 맞춰 생각하고 있지 않은지 점검했는가?
  • 한 곳에서 나온 문제를 나머지에서 재현해 봤는가?
  • 문제가 생겼을 때 되돌릴 방법과 승인 단계가 있는가?

한계와 주의사항

공통 매니저는 운영을 정리해 주는 구조적 방법일 뿐, 시스템의 성과나 수익을 보장하지 않습니다. 실제 기록에서도 잠깐 수익이 난 상황과 하락장에서 빠르게 팔아 큰 손실을 피한 경우가 있었지만, 당시 시장 환경이 좋았던 영향이 컸다는 점을 함께 적어 두었습니다.
다만 이 기록만으로는 매니저 구조와 그런 결과 사이의 인과관계를 판단할 수 없습니다. 매니저 구조는 여러 환경을 덜 헷갈리게 관리하도록 도와준 것에 가깝습니다. 결과는 시장 상황에 크게 좌우되며, 이 글의 방법이 수익을 담보하지 않습니다. 참고로 아래 안전 권고는 이 글의 개발 기록에서 검증된 절차가 아니라, 실제 자금이 걸린 시스템을 운영할 때 일반적으로 권장되는 사항입니다. 소액 테스트와 되돌림 절차를 먼저 마련하는 것을 권합니다.
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.

반응형