성능개선팀빌딩
PR 혹은 MR을 통한 코드 리뷰 도입기
2025년 7월 21일
1. 입사 초기 상황 및 문제 인식
(1) 조직의 특성
- 신규 설립된 조직(신규 서비스 개발팀)으로 개발 프로세스 및 문화가 정착되어 있지 않았습니다.
- 선임 개발자나 멘토 부재, 대부분이 신입 또는 경력 초기 개발자로 구성되어 있었습니다.
- 빠른 기능 출시 및 요구사항 대응에만 집중되어 체계적인 협업이나 코드 공유 경험 부족하였습니다.
(2) 기존 코드 관리 방식
- 직접적인 커밋/푸시 방식이 일반적, 코드 리뷰 및 피드백 과정이 생략되어 소스 품질 관리가 되지 않습니다.
- 기능별로 각자 개발만 하다 보니 코드 스타일, 아키텍처, 네이밍 등 일관성 결여로 인한 컨벤션이 필요하였습니다.
- 장애 발생 시 원인 파악 및 수정 과정이 비효율적(히스토리 추적 어려움)으로 관리 되었습니다.
(3) 문화 부재의 원인
- “빠른 결과” 중심의 개발 환경: 코드 품질보다는 기존 SI 개발 조직이 서비스 개발 조직으로 개편되면서 기존 SI 개발 방식의 속도가 우선 시 되었습니다.
- 리뷰 문화는 존재 하였으나 PR을 통한 리뷰는 존재하지 않았으며 필요성 및 방법론을 따로 적용하지 않은 듯 하였습니다.
- 신규 생성 조직: 기본적인 개발 문화/규칙이 아직 만들어지지 않았습니다.
2. 도입 배경 및 목적
(1) 배경 및 목적
- 팀원 간 코드 공유와 협업 경험 부족, 코드베이스 일관성 저하로 인한 신규 합류자(나)를 포함한 모두가 ‘같이 성장’할 수 있는 구조 필요성 인식이 필요했습니다. 그렇다면 무엇을 목적으로 해야 할까요?
- 코드 리뷰를 통한 기술적 방향성 공유 및 아키텍처 일관성 유지
- 리뷰와 피드백을 통한 개발 역량 및 코드 품질 향상
- 협업 과정의 기록 자동화 및 장애/이슈 추적 편의성 개선
- 커뮤니케이션 비용 절감 및 효율적 피드백 환경 구축
- 조직이 일하는 방식과 개발 문화를 변화를 시도해 보았습니다.
(2) 규칙 및 방법
[{지라번호}]지라 타이틀로 PR OR MR 생성merge_request.md을 체크 하여 리스트 항목에 대하여 작성한다.메타모스트혹은Slack에 PR OR MR 링크를 올려 리뷰를 받는다.메신저 봇 채널을 통하여 코드 리뷰에 대한 내용을 확인 한다.
3. 연동 가이드 및 템플릿을 통한 이슈 등록 부터 알람까지의 과정
(1) PR을 등록 전 JIRA와 Gitlab 혹은 Github와 연동
-
Gitlab관리자 계정 >JIRA애플리케이션 연동
(2) 메타모스트로 및 Slack과 메신저 Incoming Webhook 연동

(3) Merge Request 템플릿 작성 요령
## 제목에 jira issue를 `[#jira번호] 기능 추가` 로 남겨주세요.
## MR하기 전에 확인해주세요
- [] **husky lint 검사를 진행하셨나요?**
- [] **불필요한 import를 전부 삭제 하셨나요?**
## 어떤 이유로 MR를 하셨나요?
- [] **feature 병합**
- [] **버그 수정**
- [] **코드 개선**
- [] **기타(아래에 자세한 내용 기입해주세요)**
## 해당 이슈에 대한 설명을 아래 간단한 써주세요.
- blah blah
## 연관된 MR이 있다면 이슈 번호로 남겨주세요. [#issue]
- issue: ...(4) 템플릿을 선택 후 PR(MR)상세 내용 작성


(3) PR(MR) 진행 과정 및 연동 내용 확인
- 리뷰어들은 해당 리뷰에 대한 적절한 조언 및 컨벤션에 맞는 질문과 답변을 전달 합니다.

- JIRA에서는 해당 관리자 및 QA 혹은 기획자 등 다양한 이해 관계자들 및 상급자들이 해당 이슈 진척 사항 및 과정을 트레킹 할 수 있습니다.

- 알람 봇을 통해 현재 PR(MR)에 대한 상황을 실시간으로 전달 받을 수 있습니다.

5. 마무리
처음에는 신규 조직이고 선임 개발자도 없는 상황이라 코드 리뷰 같은 문화를 도입하기가 쉽지 않을 것 같았지만, 실제로는 얼마든지 시도할 수 있다는 것을 경험을 통해 알게 되었습니다.
특히 MR(PR) 리뷰 프로세스와 템플릿, Mattermost 등 협업 도구들을 적극적으로 연계해서 효율을 높였던 점이 중요한 성공 요인이었습니다.
이 과정을 통해, 누군가가 먼저 변화의 주체가 되어 팀 문화를 만들어가는 경험 자체가 개인적으로도 매우 소중한 성장의 포인트가 되었다고 생각합니다.