한재중 : 20220118 OKKY 1월 세미나 - 한번 듣고 평생 써먹는 코드 리뷰 노하우

항목내용비고
등록비
  • 1만원

일시/위치​
  • 2022-01-18 (화) 오후 8시~10시
  • Zoom​
강연자
  • 백명석
    • 전 11번가 Portal 개발그룹장

eBrain
  • 헤드헌팅 전문 기업
  • 연락해서 헤드헌팅 가능한 지 확인 필요함

개발자의 수
  • 현재 우리나라에는 17만명정도라고 함 
  • 현재 미국 대비 3배 정도 부족함
  • 미국은 지금보다 4개 개발자 수가 더 많아야 한다고 함
  • 그래서 우리나라는 그를 따른다면 현재보다 12배 정도 많아야 함 

SW 공학에서 설계와 빌드 신 개념
  • 완전한 소스코드가 설계
    • 설계물을 기반으로 빌드하면 똑같은 결과가 나와야 함
    • 그렇기 때문에 설계 문서는 설계라고 볼 수 없음
  • 컴파일한 결과가 빌드

기술부채
  • 빨리 개발하려고 함에 따라 질이 좋은 않은 코드를 작성하는 것
  • 기술부채로 인해 특정 시점부터는 유지보수 비용이 막중해짐
    • 수정에 있어서 기존 코드를 이해하고 문제 없는 수정인지 확인하는데 시간이 많이 소요됨

인상에 남는 단어/문장
  • Code SNS 댓글 놀이 → 쉽게 서로가 서로에게 코드에 대해 말할 수 있어야 함
  • 11번가에서는 다른 팀의 코드를 쉽게 볼 수 있음 (우리의 경우라면 서로 다른 프로젝트)
  • 저자가 고생해서 리뷰어들의 시간을 아껴줘야 함
    • 여러가지 방법으로 리뷰어에게 설명을 해 줘야 함
  • 코드에 대한 비판을 자신에 대한 비판으로 이해 → 코드에 대해서만 서로 열린 마음을 가져야 함
  • 리뷰 요청자가 PR 을 남긴 다음에 PR 에 본인이 먼저 댓글을 다는 것도 의사소통에서 효율적임

PR 정보에 담기면 좋은 것
  • How to Test → 리뷰어 입장에서 어떻게 테스트를 할 수 있을지 그 방법을 기술 (캡쳐 그림 참고)

발표자의 경험 상, 코드리뷰에 얼마나 시간을 들여야 코드리뷰를 통해 버그/장애를 걸러낼 수 있나?
  • 아무리 잘해도 버그/장애는 일어날 수 밖에 없음
  • 아...질문의 포인트가 이게 아니었는데...ㅡ.,ㅡ...
  • 다시 질문했음
  • 회사에서 주로 발생하는 버그/장애가 쌓이게 될 것임 (thread unsafe 같은 것...) 그것을 기반으로 코드리뷰를 통해 버그/장애를 탐지할 수 있을 것임. 회사의 버그/장애 패턴을 쌓아가게 될 것임

주니어가 시니어에게 어떤 코멘트를 전달할 수 있나? 어떤 코멘트가 서로에게 좋은 영향을 끼칠까?
  • 노하우는 상황에 따라 다를 수 있음
  • 주니어가 시니어에게 코멘트를 전달하는 것 자체가 안타까운 상황임

적절한 1회 코드리뷰의 코드 양은?
  • 200 line 정도

리뷰어 선정은? 과제 리더는 필수일 것 같음. merge 를 위해서. 그 외에는 어떤 기준으로 선택? 한 사람에게 몰리게 되면?
  • 안 몰리게 해야 함. ㅡ.,ㅡ;;

동일한 feature 에서 여러번 PR 해도 되나요?
  • 여러번 하는 것을 추천합니다.

PR 이 너무 클 경우, 어떻게 하나요?
  • commit 을 작은 단위로 만들어서 commit 을 중심으로 확인할 수 있도록 하면 좋습니다.