개발팀과 운영/기획팀과의 협업은 레드마인을 중심으로 시작합니다. 형상관리는 Subversion 을 사용했는데 소스뿐 아니라 문서도 Subversion으로 형상관리를 하는 경우도 있습니다. 배포는 Jenkins를 사용해서 배포하는데 스테이징 서버와 프로덕션 서버로 배포 시에는 이전 버전은 별도로 태그 해 두었습니다. 사이트 서버는 기본적으로 3종류로 구성했습니다.
개발서버 : 개발자들이 사용하는 서버입니다. 테스트를 하기 전 각 개발자들의 소스를 병합 배포 후 확인하는 용도입니다.
스테이징 서버 : 개발자들의 단위 테스트가 끝난 후 운영/기획자 또는 테스터가 종합 테스트를 하는 용도로 사용합니다.
프로덕션 서버 : 실제 운영되는 서버입니다. 스테이징 서버에서의 테스트가 끝난 소스만 배포가 진행됩니다.
위와 같은 구성으로 실제 운영을 했었는데 퇴사 전에는 저 구성에서 레드마인과 슬랙을 연동해서 사용하는 프로세스까지 구성을 했었네요. 인터넷을 통한 자료나 커뮤니티를 보면 Jenkins도 많이 사용하고 다른 프로젝트 관리 툴, 이슈 관리 툴들도 사용하는 것 같은데 실제로 만나서 얘기해보면 개발서버만 Jenkins가 적용돼 있다던가 일부 파트에서만 사용한다던가 하는 것 같은데 실제로 다른 곳에서는 지속적 통합이나 타부서(또는 팀)와의 협업을 위한 방법이나 인프라 또는 개발 프로세스 환경은 어떻게 하는지 궁금하긴 합니다.