코드리뷰는 "누가 잘못했나"를 찾는 자리가 아니라, 팀의 코드를 함께 좋게 만드는 자리예요.
5~8주차 티켓 작업 내내, 여러분은 서로의 PR을 리뷰합니다. 리뷰를 잘 주는 법과 잘 받는 법을 여기서 익혀요.
5~8주차 · 상시도구: Gitea Pull Request평가 ③ 협업·소통과 연결
Why
왜 신입 때부터 리뷰를 배우나
실무 개발자는 코드를 짜는 시간만큼 남의 코드를 읽습니다. 리뷰는 선택이 아니라 일하는 방식이에요.
1
버그는 혼자 못 잡는다. 내 코드의 빈틈은 내 눈에 잘 안 보여요. 다른 눈 하나가 사고를 막습니다 — 우리 감사에서 나온 버그들도 대부분 "한 번 더 읽었으면" 잡혔을 것들이에요.
2
남의 코드를 읽으며 는다. 동료가 문제를 어떻게 풀었는지 보는 게 가장 빠른 학습이에요. 리뷰는 공짜 과외입니다.
3
코드에 대한 대화가 팀을 만든다. "왜 이렇게 했어?"를 감정 없이 주고받는 연습 — 이게 되는 사람이 함께 일하기 좋은 사람이에요.
4
기록이 남는다. PR의 리뷰 코멘트는 여러분이 어떻게 성장했는지 보여주는 증거예요. 평가 ③ 협업·소통의 핵심 근거가 됩니다.
Flow
우리 팀 리뷰 흐름
티켓 하나를 끝낼 때마다 이 순서를 돕니다. 4명이라 서로를 다 볼 수 있어요.
브랜치에서 작업하고 PR을 연다
티켓별 브랜치(예: feat/empty-state)에서 작업 → Gitea에서 Pull Request 생성. 제목·설명에 "무엇을 왜 했는지" + 스크린샷(화면 변경 시)을 적어요.
리뷰어를 지정한다 — 동료 1명 + 멘토
동료 수습생 한 명과 멘토를 리뷰어로. 동료끼리 먼저 보는 게 핵심이에요 — 같은 눈높이의 질문이 가장 배움이 큽니다.
리뷰어는 24시간 안에 코멘트를 남긴다
아래 체크리스트로 읽고, 줄 단위로 코멘트. 좋은 점도 꼭 하나 남겨요("여기 이렇게 나눈 거 좋네요").
작성자는 코멘트에 답하고 반영한다
고치면 "반영했어요", 다르게 생각하면 "이래서 이렇게 했는데 어때요?"로 답. 침묵하고 그냥 merge하지 않기.
승인(Approve) 후 merge
리뷰어가 Approve하면 작성자가 merge. 배포는 멘토와 함께(운영은 학생 사용 시간을 피해서).
Reviewer
리뷰할 때 — 무엇을 볼까 (체크리스트)
위에서 아래로. 위쪽이 더 중요해요. 스타일 지적보다 "돌아가는가·안전한가"가 먼저입니다.
정말 동작하나 — 직접 받아서 실행해 봤나? 엣지 케이스(0건, 빈 값, 아주 긴 입력)는?
안전한가 — 사용자 입력을 그대로 믿지 않나? 남의 데이터에 접근되지 않나? (우리가 배운 것들)
읽히나 — 3개월 뒤의 내가, 처음 보는 동료가 이 코드를 이해할까? 이름이 하는 일을 말해주나?
테스트가 있나 — 규칙이 있는 로직이면 테스트로 못 박았나?
범위가 맞나 — 티켓과 상관없는 "김에 수정"이 섞여 있지 않나? PR은 작아야 리뷰가 됩니다.
우리 패턴을 따르나 — 옆 코드와 같은 방식인가? (프론트 Field 부품, 백엔드 서비스 계층 등)
리뷰의 황금률: 사람이 아니라 코드를 짚는다. "너 왜 이렇게 했어?"(X) → "이 부분은 이러이러해서 이렇게 하면 어떨까요?"(O). 질문형으로, 근거와 함께.
Examples
같은 지적, 다르게 쓰기
내용이 맞아도 말투가 팀을 만들거나 무너뜨려요. 왼쪽처럼 말고 오른쪽처럼.
🚫 이렇게 말고
"이거 버그임""왜 여기서 컴포넌트를 또 만들었어요?""그냥 다 지우고 다시 하세요"(코멘트 없이 Approve만 누름)
✅ 이렇게
"0건일 때 .map()이 빈 배열이라 화면이 비어요. 빈 상태 안내를 넣으면 어떨까요?""컴포넌트를 함수 안에 정의하면 렌더마다 새로 만들어져 포커스가 풀려요(가입 폼에서 났던 그 버그!). 밖으로 빼면 어떨까요?""방향은 좋아요! 이 함수만 두 가지 일을 해서, 조회와 저장을 나누면 더 읽기 쉬울 것 같아요.""여기 이름 나눈 거 깔끔하네요 👍 한 가지만: …"
Author
리뷰받을 때 — 잘 받는 것도 실력
리뷰는 내 코드에 대한 것이지 나에 대한 게 아니에요. 방어하지 말고 배우면 됩니다.
고맙다고 시작한다. 리뷰어는 내 시간을 아껴 준 거예요.
이해가 안 되면 되묻는다. "이 부분 왜 그런지 조금만 더 알려줄 수 있어요?" — 몰라서 묻는 건 부끄러운 게 아니에요.
동의하지 않으면 근거로 답한다. 감정이 아니라 "이래서 이렇게 했는데, 어떻게 생각해요?"로.
고쳤으면 알린다. 코멘트마다 "반영했어요" / "이건 이래서 그대로 뒀어요"로 마무리.
하지 말 것: 리뷰를 무시하고 조용히 merge / "그냥 되게만 하면 되잖아요" / 지적을 인신공격으로 받기. 리뷰를 잘 받는 사람이 가장 빨리 큽니다.